[elephant-devel] Close all stores on exit

Leslie P. Polzer sky at viridian-project.de
Tue Feb 10 14:54:31 UTC 2009


To avoid unnecessary recoveries Elephant should ensure that all
stores get closed, e.g.:

diff -rN -u old-elephant-1.0/src/elephant/controller.lisp
new-elephant-1.0/src/elephant/controller.lisp
--- old-elephant-1.0/src/elephant/controller.lisp       2009-02-10 15:50:08.581855135 +0100
+++ new-elephant-1.0/src/elephant/controller.lisp       2009-02-10 15:50:08.638522104 +0100
@@ -795,6 +795,9 @@
   (loop for pair in *dbconnection-spec*
        do (close-store (cdr pair))))

+#+sbcl
+(push #'close-all-stores sb-ext:*exit-hooks*)
+
 (defmacro with-open-store ((spec) &body body)
   "Executes the body with an open controller,
    unconditionally closing the controller on exit."

If no one objects then I'm going to commit this. Others can add
the code for their Lisp.

Maybe we should also add a warning for all unsupported Lisps.

  Leslie

-- 
LinkedIn Profile: http://www.linkedin.com/in/polzer
Xing Profile: https://www.xing.com/profile/LeslieP_Polzer
Blog: http://blog.viridian-project.de/





More information about the elephant-devel mailing list