Re: [ZODB-Dev] Update on 'Random ValueError' bug

2006-12-22 Thread Chris Withers

Jim Fulton wrote:
You have.  I spend a fair bit if time on it for the 2.10/3.3 releases.  
This was mainly to
chase a problem on the Mac but I ended up cleaning up some internal 
messiness

quite a bit.


OK.


Of course, there's also the blob work.


Not sure how this relates to persistent zeo client caches...

Unfortunately, when I made time to look at this, Chris was away on 
vacation.


Yup, ships passing in the night :-S

Next step for me will be to verify the assertion that when calling 
settid() it must be passed a strictly larger tid than the one before.


This is the big sticking point. No-one seems to have the knowledge to 
make this call...


cheers,

Chris

--
Simplistix - Content Management, Zope  Python Consulting
   - http://www.simplistix.co.uk

___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zodb-dev


Re: [ZODB-Dev] Update on 'Random ValueError' bug

2006-12-22 Thread Jim Fulton

Chris Withers wrote:

Jim Fulton wrote:


...


Of course, there's also the blob work.


Not sure how this relates to persistent zeo client caches...


It doesn't.  It was in response to your statement:

zodb doesn't seem to have gotten that much attention since 2.9.x, unless I've 
missed something.

Jim

--
Jim Fulton   mailto:[EMAIL PROTECTED]   Python Powered!
CTO  (540) 361-1714http://www.python.org
Zope Corporation http://www.zope.com   http://www.zope.org
___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zodb-dev


Re: [ZODB-Dev] zodb cache settings

2006-12-22 Thread Dieter Maurer
Miles Waller wrote at 2006-12-21 17:31 +:
 ...
Now, if I access say, the title attribute of the top folder, the entire 
folder object is loaded into memory.  Am I correct that the subfolder 
objects (attributes of the folder) are not loaded in at this point, just 
references to them?

This should indeed happen: only the top folder is loaded with
persistent references to its persistent children.

The persistent reference is automatically turned into the true object
when one of the object's instance attributes it accessed
(description slightly simplified). At this point the object is loaded
from the storage.

 Does the same apply to the DateTime objects which 
are attributes of this folder?

No, as DateTime is not persistent, a DateTime instance is loaded as
soon as the object containing it is loaded.

At this point, how many objects would the cache show as needed to be loaded?

The cache will should the number of truely loaded persistent objects.
It will not count the persistent references nor any non persistent objects.

Assuming that I access the datetime attribute when I load the folder, 
could I avoid evicting objects from the cache by storing dates as 
strings rather than DateTimes, so I load one large object rather than two?

No. As DateTime is not persistent, DateTime instances are not
seen by the ZODB cache management (they behave like strings in this respect).


Also, am I right that the cache size is determined by total number of 
objects, rather than by cache size?

Yes.

 So loading a large file in, for 
example, would not evict tons of objects to make room for it.

Hopefully, this is wrong.

The standard File implementations fragment their content over
a number of persistent objects. This is necessary in order not
to blow up your RAM requirements. Thus, a File instance is
indeed a collection of persistent objects -- and a huge File object
can evict larger numbers of other objects.

Of course, they might be unintelligent File implementations
(not the standard ones, but potentially third party developments).



-- 
Dieter
___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zodb-dev