Chris Withers wrote:
Jim Fulton wrote:
- I wonder if an argument could be made than we shouldn't
implicitly deactivate an object that has been accessed in a
a transaction while the transaction is still running.
Would this prevent ZODB from ever promising not to use more than a
certain amount of memory?
Yes, and non-necessarily. :)
The only way that ZODB could keep such a promise would be to
disallow loading new objects, generating errors under some circumstances.
Certainly, as Dieter pointed out, this would make it harder to
remove objects from memory.
The biggest zodb-related performance problems I've seen are when a
scripter writes code that drags way more objects into memory than any
sane script should. The creates a HUGE python process which never
releases the memory back to the os (I believe that may be fixed in
Python 2.5?) which causes all kinds of performance problems...
It should be possible to prevent scripters shooting themselves in the foot!
Sorry, that's impossible.
Jim Fulton mailto:[EMAIL PROTECTED] Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org