From c4e1422d93b72c1ab1be5c913c48860b1f4e39e2 Mon Sep 17 00:00:00 2001 From: Marcus Pearce Date: Fri, 16 Jul 2004 14:51:39 +0000 Subject: [PATCH] r9797: * sql/oodml.lisp: on Lispworks, use weak valued hash tables for object caching. * sql/expressions.lisp: Fix SQL generation for the symbol NIL. --- ChangeLog | 5 +++++ sql/expressions.lisp | 12 +++++++----- sql/oodml.lisp | 3 ++- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index fe3f1d2..933a542 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +16 Jul 2004 Marcus Pearce + * sql/oodml.lisp: on Lispworks, use weak valued hash tables for + object caching. + * sql/expressions.lisp: Fix SQL generation for the symbol NIL. + 16 Jul 2004 Marcus Pearce * sql/expressions.lisp: reactivate caching of generated SQL strings. Move methods for DATABASE-OUTPUT-SQL, OUTPUT-SQL and SQL-HASH-KEY diff --git a/sql/expressions.lisp b/sql/expressions.lisp index 2f40e33..7f0ad1f 100644 --- a/sql/expressions.lisp +++ b/sql/expressions.lisp @@ -859,11 +859,13 @@ uninclusive, and the args from that keyword to the end." (let ((keyword-package (symbol-package :foo))) (defmethod database-output-sql ((sym symbol) database) - (convert-to-db-default-case - (if (equal (symbol-package sym) keyword-package) - (concatenate 'string "'" (string sym) "'") - (symbol-name sym)) - database))) + (if (null sym) + +null-string+ + (convert-to-db-default-case + (if (equal (symbol-package sym) keyword-package) + (concatenate 'string "'" (string sym) "'") + (symbol-name sym)) + database)))) (defmethod database-output-sql ((tee (eql t)) database) (declare (ignore database)) diff --git a/sql/oodml.lisp b/sql/oodml.lisp index 78fd886..174b35a 100644 --- a/sql/oodml.lisp +++ b/sql/oodml.lisp @@ -1097,7 +1097,8 @@ as elements of a list." (unless (record-caches database) (setf (record-caches database) (make-hash-table :test 'equal - #+allegro :values #+allegro :weak))) + #+allegro :values #+allegro :weak + #+lispworks :weak-kind #+lispworks :value))) (setf (gethash (compute-records-cache-key targets qualifiers) (record-caches database)) results) results) -- 2.34.1