[Zope-dev] session concurrency
santi at zetadb.com
santi at zetadb.com
Wed Nov 26 05:54:19 EST 2003
> Santi Camps wrote at 2003-11-24 23:14 +0100:
> > I've a product, http://zetadb.sourceforge.net, that uses SESSION
> extensively. I've just discover, unhappiness, that there are some
> problems when SESSION object is changed at the same time in two
> diferent python scripts (using frames). The two frames are changing
> diferent keys of the SESSION object, but at the end the whole SESSION
> object is saved, I think, so one of the two objects losses its
> SESSION data
>
> It should *NOT* loose its session data but get a "ConflictError"
> and automatically retry the request.
>
> That's normal ZODB behaviour.
>
> Search for "Application specific conflict resolution" for a
> (complex, in your case) way to work around this.
>
> A partial workaround may be to put your various keys into
> persistent subobjects.
>
I'm trying to understand how Conflict Resolution works. The first step
will be change my DirectoryStorage for a FileStorage and try again.
As you say, I seems that Zope retries the request 3 times when a
ConflictError is raised, so it should work in my case. If not, I will try
to debug and see how not, or perhaps disabling low conflict flag.
If, at the end, it countinues crashing, I will store my data in persistent
subobjects.
Thanks a lot
Santi Camps
More information about the Zope-Dev
mailing list