[elephant-cvs] CVS elephant

ieslick ieslick at common-lisp.net
Sat Nov 11 18:41:10 UTC 2006


Update of /project/elephant/cvsroot/elephant
In directory clnet:/tmp/cvs-serv20360

Modified Files:
	INSTALL TODO TUTORIAL ele-bdb.asd ele-clsql.asd 
	elephant-tests.asd 
Log Message:

Remove all references to sleepycat; change to bdb db-bdb or 
berkeley-db; passes all test for BDB and SQLite on Allegro/Mac OS/32-bit



--- /project/elephant/cvsroot/elephant/INSTALL	2006/11/11 06:27:37	1.18
+++ /project/elephant/cvsroot/elephant/INSTALL	2006/11/11 18:41:10	1.19
@@ -91,19 +91,14 @@
 
    config.sexp
 
-to point to your local distribution of the Berkeley DB libraries
-
-Darwin / OS X 
----------------
-You need to have the developer tools installed.  In the Makefile and 
-ele-bdb.lib there are commented-out lines showing settings that some 
-users have used for OS X; if you are using that I assume you will 
-have to comment out the appropriate lines and uncomment those examples.
+Which contains an alist providing string paths pointing to the root
+of the Berkeley DB distribution :berkeley-db-root, the library to load
+:berkeley-db-lib and the pthreads library if you're running linux :pthread-lib.
 
 For Win32 (directions courtesy of Bill Clementson): 
 ---------------------------------------------------
-Create an MSVC dll project and add src/db-bdb/libsleepycat.c,
-src/db-bdb/libsleepycat.def and the Berkeley DB libdb43.lib files
+Create an MSVC dll project and add src/db-bdb/libberkeley-db.c,
+src/db-bdb/libberkeley-db.def and the Berkeley DB libdb43.lib files
 to the project (should be in the build_win32/release folder)
 
 Add the Berkeley DB dbinc include files directory and the
@@ -114,7 +109,7 @@
 Build the Elephant DLL file
 
 Since you've statically included libdb43.lib inside
-libsleepycat.c, it may or may not be necessary to load
+libberkeley-db.c, it may or may not be necessary to load
 libdb43.dll into Lisp (see below.)
 
 
@@ -140,7 +135,7 @@
 To test the load process explicitly the following asdf files are
 provided:
 
-if you are using Sleepycat / Berkeley DB, type:
+if you are using Berkeley DB, type:
   (asdf:operate 'asdf:load-op :ele-bdb)
 
 if you are using CL-SQL, type:
--- /project/elephant/cvsroot/elephant/TODO	2006/11/11 15:33:33	1.29
+++ /project/elephant/cvsroot/elephant/TODO	2006/11/11 18:41:10	1.30
@@ -3,8 +3,8 @@
 
 Ongoing release plan notes:
 
-0.6.1 - performance, safety and portability (end of Summer?)
------------------------------------------------------------
+0.6.1 - performance, safety and portability 
+--------------------------------------------
 
 Bugs or Observations:
 x 64-bit support (from Marco)
@@ -12,16 +12,14 @@
 x MCL 1.1 unicode support; rationalize other lisp support for unicode
 
 Stability:
-- Review all the NOTE comments in the code
 - Remove build gensym warnings in sleepycat
-- Remove sleepycat name.  Change sleepycat to db-bdb to reflect oracle ownership and avoid
-  confusion for new users
 - Delete persistent slot values from the slot store with remove-kv to ensure that
   there's no data left lying around if you define then redefine a class and add
   back a persistent slot name that you thought was deleted and it gets the old
   value by default.
 - Cleaner failure modes if operations are performed without repository or without
   transaction or auto-commit (Both)
+- Review all the NOTE comments in the code
 
 Store variables:
 - Think through default *store-controller* vs. explicit parameter passing 
@@ -96,6 +94,8 @@
   stay around - probably indefinitely unless we GC (no, we'll resolve this with a 
   stop-and-copy GC - need to make migration bookkeeping more efficient)
 x MCL type-declaration compatibility
+x Remove sleepycat name.  Change sleepycat to db-bdb to reflect oracle ownership and avoid
+  confusion for new users
 
 0.6.2 - Advanded work, low-hanging fruit (Fall '06)
 --------------------------------------------------
--- /project/elephant/cvsroot/elephant/TUTORIAL	2006/02/15 01:54:07	1.7
+++ /project/elephant/cvsroot/elephant/TUTORIAL	2006/11/11 18:41:10	1.8
@@ -3,7 +3,7 @@
 ========
 
 --------------------------------
-What is Sleepycat / Berkeley DB?
+What is Berkeley DB?
 --------------------------------
 
 When someone says "database," most people think of SQL
@@ -14,7 +14,7 @@
 many features.  While you don't need to understand Sleepycat
 to use Elephant, reading the docs will certainly help you.
 
-http://www.sleepycat.com
+http://www.oracle.com/database/berkeley-db.html
 
 ---------------
 Getting Started
@@ -27,7 +27,7 @@
 
 Assuming you've managed to install Elephant properly,
 
-* if you are using Sleepycat / Berkeley DB, type:
+* if you are using Berkeley DB, type:
   (asdf:operate 'asdf:load-op :ele-bdb)
 
 * or if you are using CL-SQL, type:
@@ -56,7 +56,7 @@
 The store controller holds the handles to the database
 environment and tables, and some other bookkeeping.  If for
 some reason you need to run recovery on the database (see
-sleepycat docs) you can specify that with the :recover and
+Berkeley DB docs) you can specify that with the :recover and
 :recover-fatal keys.
 
 Alternatively,
@@ -250,7 +250,7 @@
 Note that the database is read every time you access a slot.
 This is a feature, not a bug, especially in concurrent
 situations: you want the most recent commits, right?
-(Sleepycat will give isolation inside of transactions,
+(Berkeley DB will give isolation inside of transactions,
 though.)  In particular, if your slot value is not an
 immediate value, reading will cons the value.  Gets are not
 an expensive operation (I can do a million reads in 30
@@ -315,7 +315,7 @@
 The btrees class are to hash-tables as persistent-objects
 are to ordinary objects.  btrees have a hash-table-like
 interface, but store their keys and values directy in a
-Sleepycat btree.  Btrees may be persisted simply by their
+BDB btree.  Btrees may be persisted simply by their
 OID.  Hence they have all the nice properties of persistent
 objects: identity, fast serialization / deserialization, no
 merge conflicts.....
@@ -345,13 +345,13 @@
 Threading
 ---------
 
-Sleepycat plays well with threads and processes.  The store
+Berkeley DB plays well with threads and processes.  The store
 controller is thread-safe by default, that is, can be shared
 amongst threads.  Transactions may not be shared amongst
 threads except serially.  One thing which is NOT thread and
 process safe is recovery, which should be run when no one is
 else is talking to the database environment.  Consult the
-Sleepycat docs for more information.
+Berkeley DB docs for more information.
 
 Elephant uses some specials to hold parameters and buffers.
 If you're using a natively threaded lisp, you can initialize
@@ -391,12 +391,12 @@
 * (db-env-set-flags (controller-environment *store-controller*) 1
                     :txn-nosync t)
 
-or look at other flags in the sleepycat docs.  This will
+or look at other flags in the Berkeley DB docs.  This will
 greatly increase your throughput at the cost of some
 durability; I get around a 100x improvement.  This can be
 recovered with judicious use of checkpointing and
 replication, though this is currently not supported by
-Elephant -- see the sleepycat docs.
+Elephant -- see the Berkeley DB docs.
 
 The serializer is definitely fast on fixnums, strings, and
 persistent things.  It is fairly fast but consing with
--- /project/elephant/cvsroot/elephant/ele-bdb.asd	2006/11/11 06:27:37	1.11
+++ /project/elephant/cvsroot/elephant/ele-bdb.asd	2006/11/11 18:41:10	1.12
@@ -45,8 +45,8 @@
 (defclass bdb-c-source (elephant-c-source) ())
 
 (defmethod compiler-options ((compiler (eql :gcc)) (c bdb-c-source) &key &allow-other-keys)
-  (let* ((include (merge-pathnames (get-config-option :sleepycat-root c) "include"))
-	 (lib (merge-pathnames (get-config-option :sleepycat-root c) "lib")))
+  (let* ((include (merge-pathnames (get-config-option :berkeley-db-root c) "include"))
+	 (lib (merge-pathnames (get-config-option :berkeley-db-root c) "lib")))
     (append (list (format nil "-L~A" lib) (format nil "-I~A" include))
 	    (call-next-method)
 	    (list "-ldb"))))
@@ -55,7 +55,7 @@
   (remove-if #'(lambda (x) (null (car x)))
 	     (list
 	      (cons (get-config-option :pthread-lib c) "pthread")
-	      (cons (get-config-option :sleepycat-lib c) "sleepycat"))))
+	      (cons (get-config-option :berkeley-db-lib c) "berkeley-db"))))
 
 ;;
 ;; System definition
@@ -75,8 +75,8 @@
 	    ((:module :db-bdb
 		      :components
 		      ((:file "package")
-		       (:bdb-c-source "libsleepycat")
-		       (:file "sleepycat")
+		       (:bdb-c-source "libberkeley-db")
+		       (:file "berkeley-db")
 		       (:file "bdb-controller")
 		       (:file "bdb-transactions")
 		       (:file "bdb-collections"))
--- /project/elephant/cvsroot/elephant/ele-clsql.asd	2006/02/22 20:18:51	1.7
+++ /project/elephant/cvsroot/elephant/ele-clsql.asd	2006/11/11 18:41:10	1.8
@@ -53,7 +53,8 @@
 	    :components
 	    ((:module :db-clsql
 		      :components
-		      ((:file "sql-controller")
+		      ((:file "package")
+		       (:file "sql-controller")
 		       (:file "sql-transaction")
 		       (:file "sql-collections"))
 		      :serial t))))
--- /project/elephant/cvsroot/elephant/elephant-tests.asd	2006/02/19 04:52:58	1.6
+++ /project/elephant/cvsroot/elephant/elephant-tests.asd	2006/11/11 18:41:10	1.7
@@ -74,6 +74,6 @@
   :components
   ((:module :tests
 	    :components
-	    ((:file "testsleepycat")))))
+	    ((:file "testbdb")))))
 
  




More information about the Elephant-cvs mailing list