Hi all, Recently, I've had to restart Zope a few times from the command line. Suddenly I noticed this:
/usr/local/www/Zope/zope01/bin/zopectl stop . . . . . . daemon process stopped /usr/local/www/Zope/zope01/bin/zopectl start . daemon process started, pid=55616 /usr/local/www/Zope/zope01/bin/zopectl stop /usr/local/lib/python2.4/whrandom.py:38: DeprecationWarning: the whrandom module is deprecated; please use the random module DeprecationWarning) . . . . . . daemon process stopped /usr/local/www/Zope/zope01/bin/zopectl start /usr/local/lib/python2.4/whrandom.py:38: DeprecationWarning: the whrandom module is deprecated; please use the random module DeprecationWarning) . daemon process started, pid=9498
Checking my Control Panel, I see this: Python Version 2.4 (#2, Dec 4 2004, 12:47:50) [GCC 2.95.4 20020320 [FreeBSD]] where previously there hed been Python Version 2.3.4 (#2, Sep 6 2004, 12:15:06) [GCC 2.95.4 20020320 [FreeBSD]] Some has been in there messing with my install! (I know exacly where I was on Dec 4 2004, at 12:47:50, it must have been my ISP friend..) Now, Zope won't pack, I've got a couple of corrupted objects and I've developed a case of the hangs... Fortunately, I have a viable Data.fs.old. Help Mr Wizard! How do I get back my old Python? Thanks! Ken __________________________________ Do you Yahoo!? Yahoo! Mail - now with 250MB free storage. Learn more. http://info.mail.yahoo.com/mail_250
Help Mr Wizard! How do I get back my old Python?
Compile one for yourself, and edit Zope's start scripts (e.g. ./bin/zopectl etc) to point at it. See: http://www.upfrontsystems.co.za/courses/zope/ch01.html http://www.upfrontsystems.co.za/Members/jean/zope-notes/compile-zope -- Jean Jordaan
This should get Jean Jordan out of the woods for the moment, but it raises the question of Zope2.7.X and Python 2.4 compatibility. IMHO it would be very bad form to have Zope 2.7.X not work Python 2.4, On Sun, 5 Dec 2004, Jean Jordaan wrote:
Help Mr Wizard! How do I get back my old Python?
Compile one for yourself, and edit Zope's start scripts (e.g. ./bin/zopectl etc) to point at it.
See: http://www.upfrontsystems.co.za/courses/zope/ch01.html http://www.upfrontsystems.co.za/Members/jean/zope-notes/compile-zope
-- Jean Jordaan _______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
This is meanwhile an FAQ: Python 2.4 seems to work nicely with Zope 2.7 *but* this version isn't officially supported (yet). -aj --On Sonntag, 5. Dezember 2004 10:26 Uhr -0800 Dennis Allison <allison@sumeru.stanford.EDU> wrote:
This should get Jean Jordan out of the woods for the moment, but it raises the question of Zope2.7.X and Python 2.4 compatibility. IMHO it would be very bad form to have Zope 2.7.X not work Python 2.4,
On Sun, 5 Dec 2004, Jean Jordaan wrote:
Help Mr Wizard! How do I get back my old Python?
Compile one for yourself, and edit Zope's start scripts (e.g. ./bin/zopectl etc) to point at it.
See: http://www.upfrontsystems.co.za/courses/zope/ch01.html http://www.upfrontsystems.co.za/Members/jean/zope-notes/compile-zope
-- Jean Jordaan _______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
_______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
From http://www.zope.org/Products/Zope/2.7.3/CHANGES.txt Zope 2.7.3 final Bugs fixed * Fix to make Zope 2.7.3 working with Python 2.4b1 (which is currently not a supported platform). j
Dennis Allison wrote:
This should get Jean Jordan out of the woods for the moment, but it raises the question of Zope2.7.X and Python 2.4 compatibility. IMHO it would be very bad form to have Zope 2.7.X not work Python 2.4,
The "bad form" would arguably be a fault of Python, rather than Zope, unless Zope had been ignoring a previous deprecation warning (new deprecation warnings are to be expected, with Zope applying fixes to them at leisure). We won't call 2.4 "supported" until somebody does an audit of the security implications of using Python 2.4 with Zope. For instance, the "what's new" page mentions that 'eval' is now willing to use any mapping-conformant object for its 'locals', where it used to allow only a "real" dictioary. I don't know if that affects Zope's restricted execution model, nor do I have time to think about it. Note that the effort involved to fix Zope for Python 2.3 started more than a year ago, didn't land until last January, and involved significant effort (and billable client hours) from six ZC employees. I don't think 2.4 will be as big an undertaking (Python 2.2, which was never "supported", introduced a lot of complexity to the object model). Nevertheless, it isn't trivial. Note that I am likely to be running Zope 2.8 with Python 2.4 very soon, *in development.* I won't be worried about TTW code for that project, which removes most of the security worries. Tres. -- =============================================================== Tres Seaver tseaver@zope.com Zope Corporation "Zope Dealers" http://www.zope.com
Ken Ara wrote:
Hi all,
Recently, I've had to restart Zope a few times from the command line. Suddenly I noticed this:
/usr/local/www/Zope/zope01/bin/zopectl stop
. . . . . . daemon process stopped
/usr/local/www/Zope/zope01/bin/zopectl start
. daemon process started, pid=55616
/usr/local/www/Zope/zope01/bin/zopectl stop
/usr/local/lib/python2.4/whrandom.py:38: DeprecationWarning: the whrandom module is deprecated; please use the random module DeprecationWarning) . . . . . . daemon process stopped
/usr/local/www/Zope/zope01/bin/zopectl start
/usr/local/lib/python2.4/whrandom.py:38: DeprecationWarning: the whrandom module is deprecated; please use the random module DeprecationWarning) . daemon process started, pid=9498
Checking my Control Panel, I see this:
Python Version 2.4 (#2, Dec 4 2004, 12:47:50) [GCC 2.95.4 20020320 [FreeBSD]]
where previously there hed been
Python Version 2.3.4 (#2, Sep 6 2004, 12:15:06) [GCC 2.95.4 20020320 [FreeBSD]]
Some has been in there messing with my install! (I know exacly where I was on Dec 4 2004, at 12:47:50, it must have been my ISP friend..)
Now, Zope won't pack, I've got a couple of corrupted objects and I've developed a case of the hangs... Fortunately, I have a viable Data.fs.old.
Help Mr Wizard! How do I get back my old Python?
You are probably hosed because you have been using the distribution-provided version of Python. "Don't do that." $ cd /tmp $ wget http://www.python.org/ftp/python/2.3.4/Python-2.3.4.tgz $ tar xzf Python-2.3.4.tgz $ cd Python-2.3.4 $ configure --prefix="/opt/zope" && make $ sudo make install Then edit your 'runzope' and 'zopectl' scripts (and the ZEO equivalents, if you are using ZEO) to use '/opt/zope/bin/python' (or whatever prefix you chose). Tres. -- =============================================================== Tres Seaver tseaver@zope.com Zope Corporation "Zope Dealers" http://www.zope.com
Thanks Tres and others who have commented. I discovered that my ISP-friend installed a program which replaced my Python 2.3.4 with Python 2.4. I installed a new copy of Python 2.3.4, as below. Now when I run zopectl, I get:
/usr/local/www/Zope/zope01/bin/zopectl start Error: The object named by "DBTab.ClassFactories.autoClassFactory" could not be imported (line 854 in file:///usr/local/www/Zope/zope01/etc/zope.conf) For help, use /usr/local/www/Zope/lib/python/Zope/Startup/zopectl.py -h
/usr/local/www/Zope/lib/python/Zope/Startup/zopectl.py -h /usr/local/www/Zope/lib/python/Zope/Startup/zopectl.py: permission denied Line 854 in zope.conf relates to 'mount point'.. Now what? Thanks in advance for your assistance! Ken --- Tres Seaver <tseaver@zope.com> wrote:
Ken Ara wrote:
Hi all,
Recently, I've had to restart Zope a few times from the command line. Suddenly I noticed this:
/usr/local/www/Zope/zope01/bin/zopectl stop
. . . . . . daemon process stopped
/usr/local/www/Zope/zope01/bin/zopectl start
. daemon process started, pid=55616
/usr/local/www/Zope/zope01/bin/zopectl stop
/usr/local/lib/python2.4/whrandom.py:38: DeprecationWarning: the whrandom module is deprecated; please use the random module DeprecationWarning) . . . . . . daemon process stopped
/usr/local/www/Zope/zope01/bin/zopectl start
/usr/local/lib/python2.4/whrandom.py:38: DeprecationWarning: the whrandom module is deprecated; please use the random module DeprecationWarning) . daemon process started, pid=9498
Checking my Control Panel, I see this:
Python Version 2.4 (#2, Dec 4 2004, 12:47:50) [GCC 2.95.4 20020320 [FreeBSD]]
where previously there hed been
Python Version 2.3.4 (#2, Sep 6 2004, 12:15:06) [GCC 2.95.4 20020320 [FreeBSD]]
Some has been in there messing with my install! (I know exacly where I was on Dec 4 2004, at 12:47:50, it must have been my ISP friend..)
Now, Zope won't pack, I've got a couple of corrupted objects and I've developed a case of the hangs... Fortunately, I have a viable Data.fs.old.
Help Mr Wizard! How do I get back my old Python?
You are probably hosed because you have been using the distribution-provided version of Python. "Don't do that."
$ cd /tmp $ wget
http://www.python.org/ftp/python/2.3.4/Python-2.3.4.tgz
$ tar xzf Python-2.3.4.tgz $ cd Python-2.3.4 $ configure --prefix="/opt/zope" && make $ sudo make install
Then edit your 'runzope' and 'zopectl' scripts (and the ZEO equivalents, if you are using ZEO) to use '/opt/zope/bin/python' (or whatever prefix you chose).
Tres. --
===============================================================
Tres Seaver tseaver@zope.com Zope Corporation "Zope Dealers" http://www.zope.com
__________________________________ Do you Yahoo!? Yahoo! Mail - Helps protect you from nasty viruses. http://promotions.yahoo.com/new_mail
you have to reinstall Zope after you have changed your Python, since the correct libraries and their location must be known at compile time. Go to your Zope source directory execute the following commands: - make clean - make - make install Be careful to store away your Data.fs before doing this. Nothing should happen to it but "Vorsicht ist die Mutter der Porzelankiste" we say in German. Robert
In the end, I reinstalled Zope, thanks Robert. But I still have one small problem. While running Python 2.4, a single corrupted object was created. It is an instance of Folder, and appears out of alphabetical order in a Btree folder. I can't edit or delete it, and Zope won't pack. In the past, I've tried fsrecover.py without results, and have had to truncate my ZODB as described in http://www.zope.org/Members/itamar/CorruptedZODB. This time I will be aiming to remove one object buried under tens of thousands of transactions, so the procedure in the howto does not really apply. I will just have to guess how much to cut off. Is there not a better way? Thanks! Ken --- Robert Rottermann <robert@redcor.ch> wrote:
you have to reinstall Zope after you have changed your Python, since the correct libraries and their location must be known at compile time.
Go to your Zope source directory execute the following commands: - make clean - make - make install
Be careful to store away your Data.fs before doing this. Nothing should happen to it but "Vorsicht ist die Mutter der Porzelankiste" we say in German.
Robert
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Ken Ara wrote:
In the end, I reinstalled Zope, thanks Robert.
But I still have one small problem. While running Python 2.4, a single corrupted object was created. It is an instance of Folder, and appears out of alphabetical order in a Btree folder. I can't edit or delete it, and Zope won't pack.
In the past, I've tried fsrecover.py without results, and have had to truncate my ZODB as described in http://www.zope.org/Members/itamar/CorruptedZODB. This time I will be aiming to remove one object buried under tens of thousands of transactions, so the procedure in the howto does not really apply. I will just have to guess how much to cut off.
Is there not a better way?
I have never tried anything like this, so I can be of no help what so ever. Robert
BTrees have ways to diagnostic (and maybe repair) themselves, you should ask about this on the zodb-dev@zope.org mailing-list. Florent In article <20041206204921.7857.qmail@web53303.mail.yahoo.com> you write:
In the end, I reinstalled Zope, thanks Robert.
But I still have one small problem. While running Python 2.4, a single corrupted object was created. It is an instance of Folder, and appears out of alphabetical order in a Btree folder. I can't edit or delete it, and Zope won't pack.
In the past, I've tried fsrecover.py without results, and have had to truncate my ZODB as described in http://www.zope.org/Members/itamar/CorruptedZODB. This time I will be aiming to remove one object buried under tens of thousands of transactions, so the procedure in the howto does not really apply. I will just have to guess how much to cut off.
Is there not a better way?
Thanks!
Ken
--- Robert Rottermann <robert@redcor.ch> wrote:
you have to reinstall Zope after you have changed your Python, since the correct libraries and their location must be known at compile time.
Go to your Zope source directory execute the following commands: - make clean - make - make install
Be careful to store away your Data.fs before doing this. Nothing should happen to it but "Vorsicht ist die Mutter der Porzelankiste" we say in German.
Robert
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com _______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
-- Florent Guillaume, Nuxeo (Paris, France) CTO, Director of R&D +33 1 40 33 71 59 http://nuxeo.com fg@nuxeo.com
Ken Ara wrote at 2004-12-6 12:49 -0800:
In the end, I reinstalled Zope, thanks Robert.
But I still have one small problem. While running Python 2.4, a single corrupted object was created. It is an instance of Folder, and appears out of alphabetical order in a Btree folder. I can't edit or delete it, and Zope won't pack.
You get what exceptions/tracebacks? You know, we *ALWAYS* need this information! An out of order item in a BTree indicates that its keys are not persistently ordered. This corrupts the tree and part of its content can no longer be accessed via subscription. You can fix this with the following steps ("tree" is assumed to be the "BTree" instance): * items = list(tree.items()) * # remove the faulty item[s] from "items" * tree.clear() # clear the tree * tree.update(items) # recreate * get_transaction().commit() # commit the transaction
In the past, I've tried fsrecover.py without results,
Sure, it fixes physical damage to the storage file and not BTrees inconsistencies. -- Dieter
participants (8)
-
Andreas Jung -
Dennis Allison -
Dieter Maurer -
Florent Guillaume -
Jean Jordaan -
Ken Ara -
Robert Rottermann -
Tres Seaver