Hi, Leslie

The only else "caching stuff" I found in "classes.lisp" is the class definition of "cacheable-persistent-object", I moved it into "cache.lisp" and this change didn't break the build on LispWorks 5.1, so only two definitions are moved to "cache.lisp":

(defclass cacheable-persistent-object (persistent-object)
  ((pchecked-out :accessor pchecked-out-p :initform nil)
   (checked-out :accessor checked-out-p :initform nil :transient t))
  (:metaclass persistent-metaclass)
  (:documentation
   "Adds a special value slot to store checkout state"))

(defmethod shared-initialize :around ((instance cacheable-persistent- object) slot-names &key make-cached-instance &allow-other-keys)
  ;; User asked us to start in cached mode?  Otherwise default to not.
  (setf (slot-value instance 'pchecked-out) make-cached-instance)
  (setf (slot-value instance 'checked-out) make-cached-instance)
  (call-next-method))

I think that's enough. Please find a trivial patch in attach of this mail.

Regards,

Chun Tian (binghe)


Hi Chun,

I found a way to get pass this issue: moving above definition out of
"class.lisp", to, i.e. "cache.lisp", then everythings go fine. I run
some BDB tests, seems OK.

Thanks for this fix; maybe you could send a patch that moves all
of the caching stuff to cache.lisp?

That would save us a lot of time and get your change into upstream
more quickly.

 Leslie

--
http://www.linkedin.com/in/polzer


Attachment: elephant-lw51.diff
Description: Binary data


_______________________________________________
elephant-devel site list
elephant-devel@common-lisp.net
http://common-lisp.net/mailman/listinfo/elephant-devel

Reply via email to