On Thu, Feb 23 2006, Hans Hübner wrote:
Hi,
I cannot reproduce this, at least not from what you describe. The warning is the result of a reference to a deleted object being written to the transaction log, presumable referenced from a slot of another object. Can you provide me with an isolated test case?
Dear Hans,
Sorry of not responding earlier.
Here is an isolated test case:
(asdf:oos 'asdf:load-op :bknr-impex) (asdf:oos 'asdf:load-op :bknr-datastore)
(defpackage some-example (:use #:common-lisp #:bknr.impex #:puri #:bknr.indices #:bknr.datastore))
(in-package :some-example)
(define-persistent-class obj (store-object) ())
(deftransaction del (obj) (delete-object obj))
(make-instance 'mp-store :directory "/tmp/tmp-store/" :subsystems (list (make-instance 'store-object-subsystem)))
(del (make-object 'obj :name "a test" :type nil))
I noticed that if "del" is not a transaction it does not signal a warning. I am not sure why is so. Beside delete-object I would like to physically delete the file there. Thanks.
Regards,