[Zope] corrupted objects within dbase

Ingo Assenmacher ingo.assenmacher@post.rwth-aachen.de
Mon, 15 May 2000 21:22:43 +0200


Hi Helmut.

Sorry.
I have just noticed your mail.
Well, yes, I have found a solution (although it is more like a workaround).
The problem was that the following python statement

	self.erzeuger = AUTHENTICATED_USER

within the constructor of my python-base class SOMEHOW shot the thing and I was unable to get a hand on it anymore (even trying to get these things out manually (but that was another problem ;)
So, I changed the line to:

self.erzeuger = AUTHENTICATED_USER.getUserName()

since all I needed was the name!

That solved it.

I got a similiar thing as I once tried to assign an empty list to an object-member in a xxx_add method by

<dtml-call "REQUEST.set('me', [])">

the result was exactly the same: an object got created and changed its type to the type of the container class after a few (non-deterministic) accesses. Did this with zope 2.1.4/2.1.5/2.1.6 on linux/i386 and win32. Reproducable.

hmmm... bogus. Perhaps a bug in the persistence mechamism??

I do not know. But I do avoid those assignments (although they are not forbidden, are they?)
Interesting to notice: you can use those assignments within methods when you do not store anything.

Sorry for the late answer.

Regards, Ingo.


> I've noticed your mail on zope@zope.org becaus I'm
> in the same troubles.

> If you've got a solution for this problem, please
> contact me or repost it at zope@zope.org.