[Zope] Error Migration Data.fs from Zope 2.10.4 to 2.13.8

Frank Kauff fkauff at biologie.uni-kl.de
Thu Oct 6 15:30:33 EST 2011


We are one (BIG) step further :-)

Following your suggestion (thanks!), I was able to run strip_versions. 
Zope 2.13 sucessfully started with the converted Data.fs, but now I get 
a different error (below) when trying to access most subfolders of the 
site. It seems there are more syntax changes that need to be converted? 
Are there other scripts to do this?

Thanks for all your help,
Frank


    Zope Error

Zope has encountered an error while publishing this resource.

*Error Type: TypeError*
*Error Value: ('object.__new__(Args) is not safe, use 
Persistence.Persistent.__new__()', , ())*

Traceback (innermost last):

  * Module ZPublisher.Publish, line 126, in publish
  * Module ZPublisher.mapply, line 77, in mapply
  * Module ZPublisher.Publish, line 46, in call_object
  * Module Shared.DC.Scripts.Bindings, line 322, in __call__
  * Module Shared.DC.Scripts.Bindings, line 359, in _bindAndExec
  * Module App.special_dtml, line 185, in _exec
  * Module DocumentTemplate.DT_Let, line 77, in render
  * Module DocumentTemplate.DT_In, line 647, in renderwob
  * Module DocumentTemplate.DT_In, line 772, in sort_sequence
  * Module ZODB.Connection, line 860, in setstate
  * Module ZODB.Connection, line 914, in _setstate
  * Module ZODB.serialize, line 612, in setGhostState
  * Module ZODB.serialize, line 605, in getState
  * Module ZODB.broken, line 106, in __new__

TypeError: ('object.__new__(Args) is not safe, use 
Persistence.Persistent.__new__()', <class 
'Shared.DC.ZRDB.Aqueduct.Args'>, ())


On 10/06/2011 09:15 PM, Laurence Rowe wrote:
> Perhaps you can just create a simple buildout.cfg for the version of
> ZODB you need:
>
> [buildout]
> parts = scripts
> versions = versions
>
> [versions]
> ZODB3 = 3.8.6
>
> [scripts]
> recipe = zc.recipe.egg
> eggs = ZODB3
> interpreter = py
>
> Grab bootstrap.py from
> http://svn.zope.org/*checkout*/zc.buildout/trunk/bootstrap/bootstrap.py
> then run python bootstrap.py followed by bin/buildout. That should
> give you bin/strip_versions which you can run.
>
> Laurence
>
>
> On 6 October 2011 19:22, Frank Kauff<fkauff at biologie.uni-kl.de>  wrote:
>> Hi Laurence,
>>
>> Please note that there are two errrors: The error "versions not supported"
>> comes  from Zope 2.13, but the other error appears when running from 2.10,
>> with ZODB 3.7:
>>
>> [fkauff at aftol2 var]$ /opt/Zope-2.10/bin/python
>> Python 2.4.3 (#1, Sep 21 2011, 19:55:41)
>> [GCC 4.1.2 20080704 (Red Hat 4.1.2-51)] on linux2
>> Type "help", "copyright", "credits" or "license" for more information.
>>>>> import ZODB
>>>>> ZODB.__version__
>> '3.7.1'
>> [fkauff at aftol2 var]$ /opt/Zope-2.10/bin/python ../strip_versions.py Data.fs
>> Data.fs.stripped
>> No handlers could be found for logger "ZODB.FileStorage"
>> Traceback (most recent call last):
>>   File "../strip_versions.py", line 115, in ?
>>     main()
>>   File "../strip_versions.py", line 107, in main
>>     ZODB.BaseStorage.copy(it, output_storage)
>> AttributeError: 'module' object has no attribute 'copy'
>>
>>
>> I installed Zope 2.11 from old.zope.org, but it still comes with ZODB 3.7
>>
>> [fkauff at aftol2 ~]$ /opt/Zope-2.11/bin/python
>> Python 2.4.6 (#1, Oct  6 2011, 09:13:36)
>> [GCC 4.1.2 20080704 (Red Hat 4.1.2-51)] on linux2
>> Type "help", "copyright", "credits" or "license" for more information.
>>>>> import ZODB
>>>>> ZODB.__version__
>> '3.7.0b3'
>>>>> ZODB.__path__
>> ['/opt/Zope-2.11/lib/python/ZODB']
>>
>>
>> So the main question seems to be - which Zope version is old enough to be
>> able to read my Data.fs but recent enough to run the conversion script? Can
>> i get a 2.11 version with ZODB 3.8 from somewhere?
>>
>> Thanks,
>> Frank
>>
>>
>>
>>
>>
>>
>>
>>
>> On 10/06/2011 05:54 PM, Laurence Rowe wrote:
>>> On 6 October 2011 14:40, Frank Kauff<fkauff at biologie.uni-kl.de>    wrote:
>>>> On 10/06/2011 03:21 PM, Laurence Rowe wrote:
>>>>> You probably need to run it using ZODB 3.8 (i.e. with your Zope 2.10
>>>>> instance.)
>>>> I think that's what  did:
>>>>
>>>> /opt/Zope-2.10/bin/python ../strip_versions.py Data.fs Data.fs.stripped
>>>>
>>>> which gave the first error below
>>>>
>>>> Or should I run it differently?
>>> Zope 2.10 shipped with ZODB 3.7.x and only worked with Python 2.4.
>>> Your error message is showing a problem in ZODB 3.10.3 for python 2.6.
>>> I think you're running it in your Zope 2.13 buildout.
>>>
>>> The strip_versions.py script needs to run with a ZODB released before
>>> version support was removed. The script shipped with ZODB 3.8.x but I
>>> expect it will also work with 3.7.x.
>>>
>>> Laurence
>>>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.zope.org/pipermail/zope/attachments/20111006/6f595be4/attachment.html 


More information about the Zope mailing list