Upgrade Difficulties from 1.9 to 1.10.
I am trying to migrate my Data.bbb file from my 1.9 installation to a new 1.10 installation. I get a "Sorry, a SERIOUS APPLICATION ERROR occurred." message. In the source of the page, it has the following: ========================================================= <html> <head> <title>exceptions.ImportError</title> </head> <body> Sorry, a SERIOUS APPLICATION ERROR occurred.<p> <!-- Traceback (innermost last): File /usr/local/zope/Zope-1.10.2-src/lib/python/ZPublisher/Publish.py, line 877, in publish_module File /usr/local/zope/Zope-1.10.2-src/lib/python/ZPublisher/Publish.py, line 325, in publish File /usr/local/zope/Zope-1.10.2-src/lib/python/ZPublisher/Publish.py, line 616, in get_module_info File /usr/local/zope/Zope-1.10.2-src/lib/python/Main.py, line 103, in ? File /usr/local/zope/Zope-1.10.2-src/lib/python/OFS/Application.py, line 326, in open_bobobase (Info: ['/usr/local/zope/Zope-1.10.2-src/lib/python', '/usr/local/zope/Zope-1.10.2-src/pcgi', '/usr/local/zope/Zope-1.10.2-src/pcgi', '/usr/local/lib/python1.5/', '/usr/local/lib/python1.5/test', '/usr/local/lib/python1.5/plat-sunos5', '/usr/local/lib/python1.5/lib-tk', '/usr/local/lib/python1.5/lib-dynload']) File /usr/local/zope/Zope-1.10.2-src/lib/python/BoboPOS/PickleDictionary.py, line 178, in __getitem__ File /usr/local/zope/Zope-1.10.2-src/lib/python/BoboPOS/PickleDictionary.py, line 208, in __getitem__ File /usr/local/zope/Zope-1.10.2-src/lib/python/BoboPOS/PickleJar.py, line 271, in setstate ImportError: ('cPickle.UnpicklingError', "invalid load key, 'G'.") --> </body> </html> ========================================================= Before this, I shutdown the Zope process on the 1.10 server and copied the Data.bbb.old file from a Pack operation on the 1.9 server. I renamed it to Data.bbb. Should this work? Does anyone know how to solve this one? Thanks, John Solberg
solberg@platinum.com wrote:
I am trying to migrate my Data.bbb file from my 1.9 installation to a new 1.10 installation. I get a "Sorry, a SERIOUS APPLICATION ERROR occurred." message. In the source of the page, it has the following:
(snip)
ImportError: ('cPickle.UnpicklingError', "invalid load key, 'G'.")
(snip)
Before this, I shutdown the Zope process on the 1.10 server and copied the Data.bbb.old file from a Pack operation on the 1.9 server. I renamed it to Data.bbb.
Should this work?
Yes.
Does anyone know how to solve this one?
Yup. The pickle code 'G' is for the binary float format. The binary float format has been an optional feature of cPickle for some time. It was not turned on by default until Python 1.5.2(xx). Your Zope 1.9 installation used a version of cPickle with binary floats enabled and your Zope 1.10 installation is using a version of cPickle with binary floats disabled. This is most likely because the 1.10 installation is using a Python interpreter with an older version of cPickle. You need to make sure that you are using a version of cPickle with binary floats enabled. If cPickle is statically linked, you need to change it to be dynamically kinked or provide the option -DFORMAT_1_3. Jim
I could be wrong, but I think you might also get this if you are pulling a different cPickle becuase you use sys.path.append('pathToYourZopeDir') rather than sys.path = ['pathToYourZopeDir'] + sys.path -steve
"solberg" == solberg <solberg@platinum.com> writes:
solberg> I am trying to migrate my Data.bbb file from my 1.9 solberg> installation to a new 1.10 installation. I get a "Sorry, solberg> a SERIOUS APPLICATION ERROR occurred." message. In the solberg> source of the page, it has the following: ... solberg> line 271, in setstate ImportError: solberg> ('cPickle.UnpicklingError', "invalid load key, solberg> 'G'.") --> solberg> </body> </html> solberg> =========================================================
participants (3)
-
Jim Fulton -
solberg@platinum.com -
Steve Spicklemire