Forgive me taking a long time to answer this; I have been on traveling. Here is the comment that I wrote into the sql-controller.lisp file, more than a year ago, I guess:
;; Every actual CL-SQL connection has to be in a separate thread. ;; My solution to this is to keep a map of threads, and reuse connections within a certain thread. That is, CL-SQL itself is threadsafe if you use a separate connection in each thread. You have to provide a mutex so that multiple threads don't access the same connection simultaneously. As far as I know, this all functions correctly in Elephant and the user doesn't have to worry about it at all; certainly my own application is multi-threaded and I have not noticed a problem, although that is not a very good stress test. However, I think I am agreeing with the author in saying that the problem could well be inside SQLite3 itself. My memory of all of this stuff is a little rusty; I personally am not sure how robust SQLite is in a multi-threaded environment. _______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel