[Zope-dev] How would I keep _v_* attributes from getting thrown away?
John D. Heintz
jheintz@isogen.com
Mon, 22 Jan 2001 17:12:10 -0600
Thanks for the warning Dieter,
but I'm managing threads/connections/sessions/POAs and a few other
things already to expose ZODB objects through CORBA sessions.
I wanted the _v_* attributes to live for the life of the DB Connections.
Last night I found a fix for the bug that prevented me from overriding
the _p_deactivate() method on Persistent objects, so I think that I will
just do this:
class ...
def _p_deactivate(self):
temp_position = self._v_position
Persistent._p_deactivate(self)
self._v_position = temp_position
Thanks for the help though.
John
Dieter Maurer wrote:
> John D. Heintz writes:
> > I am using ZODB along with CORBA to expose peristent objects. Some of
> > my objects have per-connection/session state.
> > ...
> > My initial idea is to have a _v_position attribute ...
> Using "_v_" attributes for session state is a very bad idea.
> They are thread(!) local and not session local.
> This means, if a following request of your user (in the same session)
> happens to get assigned a different thread, it will read
> and update a different position. Chaos is garanteed (though you
> will see it only, if your site is loaded).
>
> Use a session product (-> zope.org) for session data.
>
>
> Dieter
>
> _______________________________________________
> Zope-Dev maillist - Zope-Dev@zope.org
> http://lists.zope.org/mailman/listinfo/zope-dev
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope )
--
. . . . . . . . . . . . . . . . . . . . . . . .
John D. Heintz | Senior Engineer
1016 La Posada Dr. | Suite 240 | Austin TX 78752
T 512.633.1198 | jheintz@isogen.com
w w w . d a t a c h a n n e l . c o m