[ZODB-Dev] POSKeyError

Shane Hathaway shane at hathawaymix.org
Wed Jun 22 17:08:51 EDT 2011


On 06/21/2011 07:18 AM, Erik Dahl wrote:
> I'm using relstorage 1.4.2 during a batch job I was running last night I got the following errors.
>
> 2011-06-21 07:55:02,664 WARNING relstorage: POSKeyError on oid 23916102: no tid found; Current transaction is 256466219826629358; Recent object tids: []
> 2011-06-21 07:55:02,665 WARNING relstorage: POSKeyError on oid 23916103: no tid found; Current transaction is 256466219826629358; Recent object tids: []
> 2011-06-21 08:00:19,850 WARNING relstorage: POSKeyError on oid 23917425: no tid found; Current transaction is 256466242546653525; Recent object tids: []
> 2011-06-21 08:00:19,854 WARNING relstorage: POSKeyError on oid 23917423: no tid found; Current transaction is 256466242546653525; Recent object tids: []
> 2011-06-21 08:00:19,865 WARNING relstorage: POSKeyError on oid 23917424: no tid found; Current transaction is 256466242546653525; Recent object tids: []
> 2011-06-21 08:01:56,607 WARNING relstorage: POSKeyError on oid 23917839: no tid found; Current transaction is 256466249456206779; Recent object tids: []
> 2011-06-21 08:01:56,616 WARNING relstorage: POSKeyError on oid 23917838: no tid found; Current transaction is 256466249456206779; Recent object tids: []
>
> Whenever I see POSKeyError I get really nervous but I see these are marked as warnings.  A quick look at the database seemed to show that it was ok.  Should I be worried?

I would investigate more before saying whether it's OK.  Run a pre-pack 
with GC to populate the object_ref table, then find out what refers to 
those objects by exploring object_ref.

(It would be really nice if someone invented a ZODB browser that's aware 
of the object_ref table, perhaps through some API that RelStorage has 
not yet exposed.  object_ref makes it easy and fast to discover the 
lineage of any ZODB object.)

Shane


More information about the ZODB-Dev mailing list