[Openmcl-devel] CCL-1.4 CLSQL-5.0.4 WinXP(32)

Stefan Izota stefan.izota at gmail.com
Fri Feb 19 09:44:40 UTC 2010


Hi everybody,

I encountered a little problem with Clozure CL 1.4 in WindowXP (32 bit) 
and CLSQL-5.0.4.

I am using something like this:

(require 'asdf)

(push #p"d:/programs/ccl/extra/uffi-1.8.6/" asdf:*central-registry*)
(push #p"d:/programs/ccl/extra/clsql-5.0.4/" asdf:*central-registry*)

(push :win32 *features*)

(asdf:oos 'asdf:load-op 'uffi)
(asdf:oos 'asdf:load-op 'clsql)

(push #p"d:/programs/sqlite3/" clsql-sys:*foreign-library-search-paths*)
(push #p"d:/programs/ccl/extra/" clsql-sys:*foreign-library-search-paths*)

(asdf:oos 'asdf:load-op 'clsql-sqlite3)

(clsql:connect '("d:/db/test.sqlite") :database-type :sqlite3)

(clsql:def-view-class foo ()
 ((id
   :db-kind :key
   :db-constraints :not-null
   :type integer
   :initarg :id)
  (name
   :accessor name
   :type (string 30)
   :initarg :name))
 (:base-table foo))

(clsql:select 'foo)

and I got the following

value NIL is not of the expected type (UNSIGNED-BYTE 24).
  [Condition of type TYPE-ERROR]

Restarts:
0: [RETRY] Retry SLIME REPL evaluation request.
1: [ABORT] Return to SLIME's top level.
2: [ABORT-BREAK] Reset this thread
3: [ABORT] Kill this thread

Backtrace:
 0: (%STR-FROM-PTR #<A Foreign Pointer #x1193930> NIL NIL)
 1: ((:INTERNAL CLSQL-SQLITE3::EXTRACT-ROW-DATA 
(CLSQL-SYS:DATABASE-QUERY (T CLSQL-SQLITE3:SQLITE3-DATABASE T T))))
 2: (#<STANDARD-METHOD CLSQL-SYS:DATABASE-QUERY (T 
CLSQL-SQLITE3:SQLITE3-DATABASE T T)> "SELECT FOO.NAME,FOO.ID FROM FOO" 
#<SQLITE3-DATABASE d:/work/scheme/erp/data/erp.db.sqlite OPEN #x904D92E> 
:AUTO T)
 3: (CCL::%%STANDARD-COMBINED-METHOD-DCODE ((#<STANDARD-METHOD 
CLSQL-SYS:DATABASE-QUERY :BEFORE (T CLSQL-SYS:DATABASE T T)>) NIL ..) 
13615756)
 4: (NIL #<Unknown Arguments>)
 5: (#<STANDARD-METHOD CLSQL-SYS:QUERY (STRING)> "SELECT FOO.NAME,FOO.ID 
FROM FOO" :DATABASE #<SQLITE3-DATABASE 
d:/work/scheme/erp/data/erp.db.sqlite OPEN #x904D92E> :RESULT-TYPES 
:AUTO :FLATP NIL :FIELD-..
 6: (CCL::%%CHECK-KEYWORDS #(1 #(:FIELD-NAMES :FLATP :RESULT-TYPES 
:DATABASE) #<METHOD-FUNCTION CLSQL-SYS:QUERY (STRING)>) 13615783)
 7: (NIL #<Unknown Arguments>)
 8: (CCL::%%CHECK-KEYWORDS #(1 #(:FIELD-NAMES :FLATP :RESULT-TYPES 
:DATABASE) #<METHOD-FUNCTION CLSQL-SYS:QUERY 
(CLSQL-SYS::%SQL-EXPRESSION)>) 13615803)
 9: (NIL #<Unknown Arguments>)
10: (CLSQL-SYS:SELECT #<SQL-IDENT-ATTRIBUTE FOO.NAME> 
#<SQL-IDENT-ATTRIBUTE FOO.ID> :FROM (#<SQL-IDENT-TABLE FOO>) 
:RESULT-TYPES :AUTO :REFRESH NIL)
11: (CLSQL-SYS::FIND-ALL (FOO) :REFRESH NIL)
12: (CLSQL-SYS:SELECT FOO)
13: (CCL::CALL-CHECK-REGS CLSQL-SYS:SELECT FOO)
14: (SWANK::EVAL-REGION "(clsql:select 'foo)\n")
15: ((:INTERNAL SWANK::REPL-EVAL))
16: (SWANK::TRACK-PACKAGE #<COMPILED-LEXICAL-CLOSURE (:INTERNAL 
SWANK::REPL-EVAL) #x90B2396>)
17: (SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation 
request." #<COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::REPL-EVAL) 
#x90B23E6>)
18: (SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<COMPILED-LEXICAL-CLOSURE 
(:INTERNAL SWANK::REPL-EVAL) #x90B240E>)
19: (SWANK::REPL-EVAL "(clsql:select 'foo)\n")
20: (CCL::CALL-CHECK-REGS SWANK:LISTENER-EVAL "(clsql:select 'foo)\n")
21: (SWANK::EVAL-FOR-EMACS (SWANK:LISTENER-EVAL "(clsql:select 'foo)\n") 
"COMMON-LISP-USER" 26)
22: (SWANK::PROCESS-REQUESTS NIL)
23: ((:INTERNAL SWANK::HANDLE-REQUESTS))
24: (#<Anonymous Function #x8C0E2BE> #<Compiled-function 
SWANK:SWANK-DEBUGGER-HOOK #x8C9E3D6> #<COMPILED-LEXICAL-CLOSURE 
(:INTERNAL SWANK::HANDLE-REQUESTS) #x90B27FE>)
25: (SWANK::CALL-WITH-BINDINGS ((*STANDARD-OUTPUT* . 
#<SWANK-BACKEND::SLIME-OUTPUT-STREAM #x8D428B6>) (*STANDARD-INPUT* . 
#<SWANK-BACKEND::SLIME-INPUT-STREAM #x8D42AEE>) ..))) 
#<COMPILED-LEXICAL-CLOSURE (..
26: (SWANK::CALL-WITH-CONNECTION #<CONNECTION #x8D16DDE> 
#<COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::HANDLE-REQUESTS) #x90B27FE>)
27: (SWANK::HANDLE-REQUESTS #<CONNECTION #x8D16DDE> NIL)
28: (SWANK::CALL-WITH-BINDINGS NIL #<COMPILED-LEXICAL-CLOSURE (:INTERNAL 
SWANK::SPAWN-REPL-THREAD) #x8D4BFDE>)
29: (CCL::RUN-PROCESS-INITIAL-FORM #<PROCESS repl-thread(11) [Active] 
#x8D42E56> (#<COMPILED-LEXICAL-CLOSURE (:INTERNAL 
CCL::%PROCESS-RUN-FUNCTION) #x8D42D16>))
30: ((:INTERNAL (CCL::%PROCESS-PRESET-INTERNAL (PROCESS))) #<PROCESS 
repl-thread(11) [Active] #x8D42E56> (#<COMPILED-LEXICAL-CLOSURE 
(:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #x8D42D16>))
31: ((:INTERNAL CCL::THREAD-MAKE-STARTUP-FUNCTION))

I used

(clsql:create-view-from-class 'foo)

(defvar foo1 (make-instance 'foo :id 1 :name 'foo1))

(clsql:update-records-from-instance foo1)

to create the table and insert one row.

The same error occurs if I the default listener:

? (clsql:select 'foo)
 > Error: value NIL is not of the expected type (UNSIGNED-BYTE 24).
 > While executing: %STR-FROM-PTR, in process listener(1).
 > Type :POP to abort, :R for a list of available restarts.
 > Type :? for other options.
1 > :pop


Any ideas?

P.S. I sent this email to the CLSQL list also (from some reason I could 
not subscribe to that list).
P.S.2 I am new Clozure Cl (and Lisp in general).

Thanks for your time,
Stefan




More information about the Openmcl-devel mailing list