[Zope] clean up Data.fs?

Dieter Maurer dieter@handshake.de
Wed, 25 Jul 2001 20:01:55 +0200 (CEST)


Kyler B. Laird writes:
 > ...
 > I was caching some information in my product
 > using a global variable that started with _v_.
 > Moving this to be self._v_cache solved the
 > problem.
 > 
 > My *guess* is that something in the transaction
 > machinery fails when there is data not tucked
 > away in the proper place.
 > ....
 > So, the lesson is that I should avoid global
 > variables in products, even if they appear to
 > work otherwise.
In principle, there is no problem with global data
in modules. Many products do it to maintain non-persistent
state that must be seen in all threads.
Examples are my "CacheControlled ZSQL Methods", "FSSession"
and "GUF".

Moving the information to "self._v_XXX" has the potential problem
that it is only available to one thread: attributes
starting with "_v_" are thread local!

I would expect that you did not yet find the real problem.


Dieter