[elephant-devel] get-instances-by-value andget-instances-by-class
Alex Mizrahi
killerstorm at newmail.ru
Sat Mar 6 17:52:35 UTC 2010
hi
> it seems that there is a problem with sbcl and linux 64-bit.
> I noticed that this problems does not appear on my 32-bit systems only on
the 64-bit systems.
I've tested it on Debian 5.0 64-bit: SBCL 1.0.18, BDB 4.6, both stock from
Debian packages.
There is no leak neither for get-instances-by-value, nor ofr
get-instances-by-class:
CL-USER> (require 'ele-bdb)
...
CL-USER> (use-package :elephant)
T
CL-USER> (open-store '(:bdb #p"mydb/"))
#<BDB-STORE-CONTROLLER mydb/>
CL-USER> (defpclass bigj () ((slo1 :accessor slot1 :initarg :slot1 :index
t)))
#<PERSISTENT-METACLASS BIGJ>
CL-USER> (make-instance 'bigj :slot1 "goethe")
#<BIGJ oid:2>
CL-USER> (make-instance 'bigj :slot1 "goethe2")
#<BIGJ oid:4>
CL-USER> (make-instance 'bigj :slot1 "goeth")
#<BIGJ oid:5>
CL-USER> (dotimes (i 1000000)
(get-instances-by-value 'bigj 'slo1 "goethe"))
NIL
CL-USER> (dotimes (i 1000000)
(get-instances-by-class 'bigj))
NIL
CL-USER> (dotimes (i 1000000)
(get-instance-by-value 'bigj 'slo1 "goethe"))
NIL
Both before and after tests SBCL had resident set size of 100 MB, as
measured by `top`.
So I guess it is an error with a specific version of SBCL or BDB, so try
different versions.
More information about the elephant-devel
mailing list