[Zope3-Users] Re: Problems with ZDC upgrading to Zope 3.3.0b1

2006-05-11 Thread Philipp von Weitershausen
Stephan Richter wrote:
 On Thursday 11 May 2006 03:44, Tom Dossis wrote:
 Is there a migration operation I need to run?

 Clicking evolve: http://localhost:8080/++etc++process/@@generations.html
 doesn't seem to do the trick.
 
 It seems to me that no generation scripts were written. :-( This is a real 
 show-stopper! I will not make another Zope 3.3 release before this is fixed.

On the other hand, it seems that the BBB packages that would guarantee
the pickle to be loaded were not included in the release
(http://www.zope.org/Collectors/Zope3-dev/603).

And yes, no generation scripts were written. Why? Because

a) there doesn't (yet) seem to be an API that lets you iterate over
objects (perferrably of a certain class) in the ZODB so that you could
have them repickled (at least that's what Jim told me when I asked him)

b) no persistent class was moved for this reason. Of course,
non-persistent classes might still have been pickled. However, IIRC even
if we had such an API described in a), it wouldn't be of any use because
the objects that were moved don't have their own pickle but live in the
pickle of some persistent object that makes a reference to it.

As said, BBB packages were provided, but not included in the release.
This is a packaging problem.

Philipp

___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


Re: [Zope3-Users] Re: Problems with ZDC upgrading to Zope 3.3.0b1

2006-05-11 Thread Stephan Richter
On Thursday 11 May 2006 10:06, Philipp von Weitershausen wrote:
 On the other hand, it seems that the BBB packages that would guarantee
 the pickle to be loaded were not included in the release
 (http://www.zope.org/Collectors/Zope3-dev/603).


This is not enough. You are required to provide BBB *and* generation scripts 
for objects that are referenced in the ZODB

 And yes, no generation scripts were written. Why? Because

 a) there doesn't (yet) seem to be an API that lets you iterate over
 objects (perferrably of a certain class) in the ZODB so that you could
 have them repickled (at least that's what Jim told me when I asked him)

 b) no persistent class was moved for this reason. Of course,
 non-persistent classes might still have been pickled. However, IIRC even
 if we had such an API described in a), it wouldn't be of any use because
 the objects that were moved don't have their own pickle but live in the
 pickle of some persistent object that makes a reference to it.

 As said, BBB packages were provided, but not included in the release.
 This is a packaging problem.

-- 
Stephan Richter
CBU Physics  Chemistry (B.S.) / Tufts Physics (Ph.D. student)
Web2k - Web Software Design, Development and Training
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


[Zope3-Users] Re: Problems with ZDC upgrading to Zope 3.3.0b1

2006-05-11 Thread Stephan Richter
On Thursday 11 May 2006 10:06, Philipp von Weitershausen wrote:
 On the other hand, it seems that the BBB packages that would guarantee
 the pickle to be loaded were not included in the release
 (http://www.zope.org/Collectors/Zope3-dev/603).

This is not enough. You are required to provide BBB *and* generation scripts 
for objects that are referenced in the ZODB. Once the BBB references are 
removed the database will not load anymore.

 And yes, no generation scripts were written. Why? Because

 a) there doesn't (yet) seem to be an API that lets you iterate over
 objects (perferrably of a certain class) in the ZODB so that you could
 have them repickled (at least that's what Jim told me when I asked him)

This is a problem, not a reason not to do it. At least for FileStorage, which 
most people use I assume, there is a way. Here is a good example of its use:

http://source.schooltool.org/viewcvs/trunk/schooltool/src/schooltool/generations/evolve5.py?rev=5669view=auto

 b) no persistent class was moved for this reason. Of course,
 non-persistent classes might still have been pickled. However, IIRC even
 if we had such an API described in a), it wouldn't be of any use because
 the objects that were moved don't have their own pickle but live in the
 pickle of some persistent object that makes a reference to it.

This is not true. See

http://svn.zope.org/Zope3/trunk/src/zope/dublincore/annotatableadapter.py?rev=67630view=auto

class ZDCAnnotationData(PersistentDict):
Data for a Dublin Core annotation.

A specialized class is used to allow an alternate fssync
serialization to be registered.  See the
zope.dublincore.fssync package.


 As said, BBB packages were provided, but not included in the release.
 This is a packaging problem.

Right, this is fixable. I am not too concerned about that.

Regards,
Stephan
-- 
Stephan Richter
CBU Physics  Chemistry (B.S.) / Tufts Physics (Ph.D. student)
Web2k - Web Software Design, Development and Training
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


Re: [Zope3-Users] Re: Problems with ZDC upgrading to Zope 3.3.0b1

2006-05-11 Thread Philipp von Weitershausen
Stephan Richter wrote:
 On Thursday 11 May 2006 10:06, Philipp von Weitershausen wrote:
 On the other hand, it seems that the BBB packages that would guarantee
 the pickle to be loaded were not included in the release
 (http://www.zope.org/Collectors/Zope3-dev/603).
 
 This is not enough. You are required to provide BBB *and* generation scripts 
 for objects that are referenced in the ZODB

If you tell me how to do it, I'll be happy to. As said, I asked Jim
before and he just said that the object-iteration APIs of ZODB weren't
yet plumbed through.

I'll also state again that NO persistent class was moved. I'm therefore
not sure if the object-iteration APIs would even help with this problem
as they might only return persistent objects, not arbitrary references
to non-persistent objects.

 And yes, no generation scripts were written. Why? Because

 a) there doesn't (yet) seem to be an API that lets you iterate over
 objects (perferrably of a certain class) in the ZODB so that you could
 have them repickled (at least that's what Jim told me when I asked him)

 b) no persistent class was moved for this reason. Of course,
 non-persistent classes might still have been pickled. However, IIRC even
 if we had such an API described in a), it wouldn't be of any use because
 the objects that were moved don't have their own pickle but live in the
 pickle of some persistent object that makes a reference to it.

 As said, BBB packages were provided, but not included in the release.
 This is a packaging problem.
 

___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


Re: [Zope3-Users] Re: Problems with ZDC upgrading to Zope 3.3.0b1

2006-05-11 Thread Philipp von Weitershausen
Philipp von Weitershausen wrote:
 Stephan Richter wrote:
 On Thursday 11 May 2006 10:06, Philipp von Weitershausen wrote:
 On the other hand, it seems that the BBB packages that would guarantee
 the pickle to be loaded were not included in the release
 (http://www.zope.org/Collectors/Zope3-dev/603).
 This is not enough. You are required to provide BBB *and* generation scripts 
 for objects that are referenced in the ZODB
 
 If you tell me how to do it, I'll be happy to. As said, I asked Jim
 before and he just said that the object-iteration APIs of ZODB weren't
 yet plumbed through.
 
 I'll also state again that NO persistent class was moved.

I take that back :). There seems to be at least one persistent class. I
was looking at the wrong file before.

Philipp
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users