<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Is is ok to just run this anytime as a preventive measure? We had a
POSkeyerror that would show up now and again but we could never nail it
down.<br>
Are there any drawbacks to running this on a production server? <br>
Thanks<br>
-Allen<br>
<br>
<br>
Dieter Maurer wrote:
<blockquote cite="mid:18741.31233.448257.304774@gargle.gargle.HOWL"
 type="cite">
  <pre wrap="">Rupesh P Raj wrote at 2008-12-2 13:46 +0530:
  </pre>
  <blockquote type="cite">
    <pre wrap="">I am getting the following POSKeyError. Can anyone please tell me, what is
the reason for this error, and how can I rectify it:

2008-12-02T03:16:11 ERROR ZODB.Connection Couldn't load state for 0x18fb01
Traceback (most recent call last):
 File "/opt/Zope-2.8.8/lib/python/ZODB/Connection.py", line 704, in
setstate
   self._setstate(obj)
 File "/opt/Zope-2.8.8/lib/python/ZODB/Connection.py", line 740, in
_setstate
   p, serial = self._storage.load(obj._p_oid, self._version)
 File "/opt/Zope-2.8.8/lib/python/ZEO/ClientStorage.py", line 746, in load
   return self.loadEx(oid, version)[:2]
 File "/opt/Zope-2.8.8/lib/python/ZEO/ClientStorage.py", line 769, in
loadEx
   data, tid, ver = self._server.loadEx(oid, version)
 File "/opt/Zope-2.8.8/lib/python/ZEO/ServerStub.py", line 192, in loadEx
   return self.rpc.call("loadEx", oid, version)
 File "/opt/Zope-2.8.8/lib/python/ZEO/zrpc/connection.py", line 536, in
call
   raise inst # error raised by server
POSKeyError: 0x18fb01
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Your ZODB contains an object referencing another object with object id
"0x18fb01" but this object is missing (not in the ZODB).
I.e., you have a dangling (persistent) reference.

You can use the "fsrefs" utility to check for such dangling references.
It will tell you about the referencing object and its broken references.
You can fetch the referencing object and try to fix it (there is a
HowTo somewhere how you can approach this).



  </pre>
</blockquote>
</body>
</html>