[bknr-devel] Warning: Encoding destroyed object
Hans Hübner
hans.huebner at gmail.com
Mon Feb 27 09:14:12 UTC 2006
Hi Kamen,
my analysis of your problem was not complete: In fact, the problem is
a bit different from what I wrote:
If you pass persistent objects as argument to a transaction and you
delete that object within the transaction, serializing the transaction
arguments to the transaction log result in the warning that you have
seen. The datastore emits a warning because the object is no longer
in existence after the transaction has been executed. Upon restore,
this will not be a problem since no log entry is written, but the
warning is annoying nevertheless.
My suggestion, using "destroy-object" from your transaction, does not
help, because you still have the persistent object in the argument
list to the transaction function. A proper workaround is to pass only
the object ID in the argument list to the transaction (this is how
delete-object works). Another workaround is to remove the warning
from the datastore. Maybe I will do that in the future, but I have to
think about it some more.
My remark about deleting blob files still holds, though.
-Hans
More information about the Bknr-devel
mailing list