[elephant-devel] WARNING

Henrik Hjelte henrik at evahjelte.com
Fri Jan 19 19:24:38 UTC 2007


I saw that some new files were checked in, so I
tried to get the new version going. This is how far I've got so far:

One file missing:
src/db-bdb/bdb-symbol-tables.lisp

Some defgeneric forms in controller had ((sc store-controller)) as
argument instead of (store-controller).

When compiling against the Berkey DB 4.4.20 (the latest generation 4.4 i
found), I had to comment out the function db_compact in libberkeley-db.c
in order to make it compile.

I have a small suggestion to ele-bdb.asd below:

(defun get-config-option (option component)
  (unless *bdb-config*
    (let ((filespec (make-pathname :defaults (asdf:component-pathname  

(asdf:component-system component))
                                           :name "my-config"
                                           :type "sexp")))
      (unless (probe-file filespec)
        (error "Missing file. Copy config.sexp in elephant root
directory to my-config.sexp and edit it appropriately."))
      (with-open-file (config filespec)
        (setf *bdb-config* (read config)))))
  (cdr (assoc option *bdb-config*)))


I have also found a bug in clsql-collections, the method
cursor-pset. Position should have a :test #'equal to make it work with
strings.

(defmethod cursor-pset ((cursor sql-secondary-cursor) key)
  (declare (optimize (speed 3)))
  (unless (cursor-initialized-p cursor)
    (cursor-init cursor))
  (let ((idx (position key (:sql-crsr-ks cursor) :test #'equal)))
    (if idx
        (progn
          (setf (:sql-crsr-ck cursor) idx)
          (setf (:dp-nmbr cursor) 0)
          (cursor-current-x cursor :returnpk t))
        (cursor-un-init cursor)
        )))

And congratulations on the joyful event. Was it Christmas?

/Henrik Hjelte






More information about the elephant-devel mailing list