[elephant-devel] Re: Test of 0.9 on LispWorks 5.0 (64-bit) for Linux

Chun Tian binghe binghe.lisp at gmail.com
Tue Jun 12 16:35:34 UTC 2007


Ian Eslick <eslick at csail.mit.edu> writes:

> Chun Tian,
>
> Were you able to run the tests on PostgreSQL as well?  Did they show
> similar failures?

No. On PostgreSQL, only INDEXING-TIMING failes: (but this test is much slower than bdb)

Test INDEXING-TIMING failed
Form: (PROGN
        (MAKE-STRESS-CLASSES)
        (LET ((INSTS (GET-INSTANCES-BY-CLASS 'STRESS-INDEX))
              (START NIL)
              (END NIL)
              (NORMAL-CHECK NIL)
              (INDEX-CHECK NIL)
              (NORMAL-TIME 0)
              (INDEX-TIME 0))
          (WHEN INSTS (DROP-INSTANCES INSTS :SC *STORE-CONTROLLER*))
          (WITH-TRANSACTION NIL
            (NORMAL-STRESS-SETUP *STRESS-COUNT* 'STRESS-NORMAL :STRESS2 10))
          (WITH-TRANSACTION NIL
            (INDEXED-STRESS-SETUP *STRESS-COUNT* 'STRESS-INDEX :STRESS2 10))
          (SETF START (GET-INTERNAL-RUN-TIME))
          (SETF NORMAL-CHECK (NORMAL-LOOKUP))
          (SETF END (GET-INTERNAL-RUN-TIME))
          (SETF NORMAL-TIME (/ (- END START 0.0) INTERNAL-TIME-UNITS-PER-SECOND))
          (SETF START (GET-INTERNAL-RUN-TIME))
          (SETF INDEX-CHECK (INDEX-LOOKUP))
          (SETF END (GET-INTERNAL-RUN-TIME))
          (SETF INDEX-TIME (/ (- END START 0.0) INTERNAL-TIME-UNITS-PER-SECOND))
          (FORMAT T
                  "~%Ranged get of ~A/~A objects = Linear: ~A sec Indexed: ~A sec~%"
                  *RANGE-SIZE*
                  *STRESS-COUNT*
                  NORMAL-TIME
                  INDEX-TIME)
          (AND (EQUAL NORMAL-CHECK INDEX-CHECK) (> NORMAL-TIME INDEX-TIME))))
Expected value: T
Actual value: NIL.

And I rerun the BDB test, some fails like before:

4 out of 132 total tests failed: SET-RANGE, PGET-BOTH-RANGE, PCURSOR, 
   PCURSOR2.


>
> The set range features have always been a little fragile, but I'm not
> sure how 64-bits would effect it.  I can try to run Lispworks 32bit
> on Linux as I think there have been some differences between Linux
> and other platforms in the past.
>
> I also noticed that the test 'SET-RANGE' failed with an error.  Could
> you do the following test?
>
> (setf regression-test::*catch-errors* nil)
> (open-store *testbdb-spec*)
> (do-test 'set-range)
>
> And let me know what the error is?

OK, but something wrong happened:

CL-USER 1 > (clc:clc-require :elephant-tests)

CL-USER 2 > (in-package :elephant-tests)
#<The ELEPHANT-TESTS package, 459/1024 internal, 0/16 external>

ELE-TESTS 3 > (clc:clc-require :ele-bdb)

ELE-TESTS 4 > *testbdb-spec*
(:BDB "/afs/163.org/user/b/binghe/lisp/elephant/tests/testdb/")

ELE-TESTS 5 > (setf *testbdb-spec* '(:bdb "/tmp/testdb/"))
(:BDB "/tmp/testdb/")

ELE-TESTS 6 > (setf *default-spec* *testbdb-spec*)
(:BDB "/tmp/testdb/")

ELE-TESTS 7 > (setf regression-test::*catch-errors* nil)
NIL

ELE-TESTS 8 > (open-store *testbdb-spec*)
#<BDB-STORE-CONTROLLER /tmp/testdb/>

ELE-TESTS 9 > (do-test 'set-range)

Error: The variable INDEX1 is unbound.
  1 (continue) Try evaluating INDEX1 again.
  2 Specify a value to use this time instead of evaluating INDEX1.
  3 Specify a value to set INDEX1 to.
  4 (abort) Return to level 0.
  5 Return to top loop level 0.

Type :b for backtrace, :c <option number> to proceed,  or :? for other options

ELE-TESTS 10 : 1 > :c 5

ELE-TESTS 11 > 

Sorry, cannot adjust it myself.

>
> Thank you,
> Ian
>
> On Jun 8, 2007, at 8:16 AM, Chun Tian (binghe) wrote:
>
>> Hi, Elephant Developers
>>
>> I saw the release 0.9 yesterday, and three "should work" of
>> LispWorks (64-bit)
>> on the testing status page. Fortunately I have a 5.0.2 Enterprise
>> Edition of
>> LispWorks (64-bit) for Linux, runing on a Debian box, with Berkeley
>> DB 4.5
>> and PostgreSQL 8.2 client installed. Glad to be a tester.
>>
>> To run elephent on Debian GNU/Linux, the my-config.sexp may like this:
>>
>> ;; Linux defaults
>> #+(and (or sbcl allegro openmcl lispworks) (not (or mswindows
>> windows)) (not (or macosx darwin)))
>> ((:compiler . :gcc)
>>  (:berkeley-db-include-dir . "/usr/include/")
>>  (:berkeley-db-lib-dir . "/usr/lib/")
>>  (:berkeley-db-lib . "/usr/lib/libdb-4.5.so")
>>  (:berkeley-db-deadlock . "/usr/bin/db4.5_deadlock")
>>  (:berkeley-db-cachesize . 20971520)
>>  (:berkeley-db-map-degree2 . t)
>>  (:clsql-lib-paths . nil)
>>  (:prebuilt-libraries . nil))
>>
>> The test for Berkeley DB looks like this:
>>
>> ELE-TESTS 15 > (setq *default-spec* '(:BDB "/tmp/testdb/"))
>> (:BDB "/tmp/testdb/")
>>
>> ELE-TESTS 16 > (do-backend-tests)
>> Attempting to load libmemutil.so...
>> Loaded /var/cache/common-lisp-controller/1001/lispworks/local/afs/
>> 163.org/user/b/binghe/lisp/elephant/src/memutil/libmemutil.so
>> ; Loading fasl file /var/cache/common-lisp-controller/1001/
>> lispworks/local/afs/163.org/user/b/binghe/lisp/elephant/src/memutil/
>> memutil.64ufasl
>> ;;; Compiling file /afs/163.org/user/b/binghe/lisp/elephant/tests/
>> testbdb.lisp ...
>> ;;; Safety = 3, Speed = 1, Space = 1, Float = 1, Interruptible = 0
>> ;;; Compilation speed = 1, Debug = 2, Fixnum safety = 3
>> ;;; Source level debugging is on
>> ;;; Source file recording is  on
>> ;;; Cross referencing is on
>> ; (LISPWORKS:TOP-LEVEL-FORM 1)
>> ; (LISPWORKS:TOP-LEVEL-FORM 2)
>> ; (DEFVAR ENV)
>> ; (DEFVAR DB)
>> ; PREPARE-BDB
>> ; (LISPWORKS:TOP-LEVEL-FORM 3)
>> ; TEST-SEQUENCE1
>> ; (LISPWORKS:TOP-LEVEL-FORM 4)
>> ; TEST-SEQUENCE2
>> ; (LISPWORKS:TOP-LEVEL-FORM 5)
>> ; CLEANUP-BDB
>> ; (LISPWORKS:TOP-LEVEL-FORM 6)
>> ; (LISPWORKS:TOP-LEVEL-FORM 7)
>> ; Loading fasl file /var/cache/common-lisp-controller/1001/
>> lispworks/local/afs/163.org/user/b/binghe/lisp/elephant/tests/
>> testbdb.64ufasl
>> Doing 132 pending tests of 132 tests total.
>>  FIXNUMS FIXNUM-TYPE-1 READ-32-BIT-FIXNUM READ-64-BIT-FIXNUM
>> WRITE-32-BIT-FIXNUM WRITE-64-BIT-FIXNUM
>>  BIGNUMS FLOATS RATIONALS COMPLEXES BASE-STRINGS STRINGS HARD- 
>> STRINGS SYMBOLS CHARS PATHNAMES CONSES
>>  HASH-TABLES-1 HASH-TABLES-2 ARRAYS-1 ARRAYS-2 TEST-DEEP-EQUALP
>> TEST-SERIALIZATION-UNICODE-SLOT OBJECTS
>>  STRUCTS STRUCT-NON-STD-CONSTRUCT CIRCULAR PERSISTENT
>> Second store spec missing: ignoring CROSS-STORE-REFERENCE-CONDITION
>> UNINDEXED-CLASS-CONDITION
>>  NON-TRANSIENT-CLASS-SLOT-1 NON-TRANSIENT-CLASS-SLOT-2 TRANSIENT- 
>> CLASS-SLOT CLASS-DEFINERS
>>  BAD-INHERITENCE MIXES MIXES-RIGHT-SLOTS INHERIT INHERIT-RIGHT- 
>> SLOTS INITFORM-CLASSES INITFORM-TEST
>>  INITARG-TEST NO-EVAL-INITFORM REDEFCLASS MAKUNBOUND UPDATE-CLASS
>> CHANGE-CLASS CHANGE-CLASS3
>>  BASICPERSISTENCE TESTOID BTREE-MAKE BTREE-PUT BTREE-GET REMOVE-KV
>> REMOVED MAP-BTREE INDEXED-BTREE-MAKE
>>  ADD-INDICES TEST-INDICES INDEXED-PUT INDEXED-GET SIMPLE-SLOT-GET
>> INDEXED-GET-FROM-SLOT1
>>  INDEXED-GET-FROM-SLOT2 REMOVE-KV-INDEXED NO-KEY-NOR-INDICES REMOVE- 
>> KV-FROM-SLOT1
>>  NO-KEY-NOR-INDICES-SLOT1 REMOVE-KV-FROM-SLOT2 NO-KEY-NOR-INDICES- 
>> SLOT2 MAP-INDEXED GET-FIRST GET-FIRST2
>>  GET-LAST GET-LAST2 SET SET2
>> Test SET-RANGE failed
>> Form: (WITH-TRANSACTION (:STORE-CONTROLLER *STORE-CONTROLLER*)
>> (WITH-BTREE-CURSOR (C INDEX1) (MULTIPLE-VALUE-BIND (HAS K V)
>> (CURSOR-SET-RANGE C 199.5) (DECLARE (IGNORE HAS K)) (= (SLOT1 V)
>> 200))))
>> Expected value: T
>> Actual value: #<SIMPLE-ERROR 40502326D3>.
>>  SET-RANGE2 MAP-INDEXED-INDEX MAP-INDEX-FROM-END REM-KV REM-IDEXKV
>> MAKE-INDEXED2 ADD-INDICES2
>>  PUT-INDEXED2 GET-INDEXED2 GET-FROM-INDEX3 DUP-TEST NODUP-TEST PREV- 
>> NODUP-TEST PNODUP-TEST
>>  PPREV-NODUP-TEST CUR-DEL1 INDEXED-DELETE TEST-DELETED INDEXED- 
>> DELETE2 TEST-DELETED2 CUR-DEL2 GET-BOTH
>>  PGET-BOTH
>> Test PGET-BOTH-RANGE failed
>> Form: (WITH-BTREE-CURSOR (C INDEX3) (MULTIPLE-VALUE-BIND (M K V P)
>> (CURSOR-PGET-BOTH-RANGE C 10 106.5) (VALUES K V P)))
>> Expected values: 10
>>                  -107
>>                  107
>> Actual values: NIL
>>                NIL
>>                NIL.
>> Test PCURSOR failed
>> Form: (WITH-BTREE-CURSOR (C INDEX3) (VALUES (PCURSOR-PKEY (CURSOR- 
>> PFIRST C)) (PCURSOR-PKEY (CURSOR-PNEXT C)) (PCURSOR-PKEY (CURSOR- 
>> PNEXT-NODUP C)) (PCURSOR-PKEY (CURSOR-PNEXT-DUP C)) (PCURSOR-PKEY
>> (CURSOR-PPREV C)) (PCURSOR-PKEY (CURSOR-PPREV-NODUP C)) (PCURSOR- 
>> PKEY (CURSOR-PLAST C)) (PCURSOR-PKEY (CURSOR-PSET C 300)) (PCURSOR- 
>> PKEY (CURSOR-PSET-RANGE C 199.5)) (PCURSOR-PKEY (CURSOR-PGET-BOTH C
>> 10 101)) (PCURSOR-PKEY (CURSOR-PGET-BOTH-RANGE C 11 111.4))))
>> Expected values: 0
>>                  2
>>                  10
>>                  11
>>                  10
>>                  9
>>                  9999
>>                  3000
>>                  2000
>>                  101
>>                  112
>> Actual values: 0
>>                2
>>                10
>>                11
>>                10
>>                9
>>                9999
>>                3000
>>                NIL
>>                101
>>                NIL.
>>  NEWINDEX
>> Test PCURSOR2 failed
>> Form: (WITH-BTREE-CURSOR (C INDEX4) (VALUES (PCURSOR-PKEY (CURSOR- 
>> PFIRST C)) (PCURSOR-PKEY (CURSOR-PNEXT C)) (PCURSOR-PKEY (CURSOR- 
>> PNEXT-NODUP C)) (PCURSOR-PKEY (CURSOR-PNEXT-DUP C)) (PCURSOR-PKEY
>> (CURSOR-PPREV C)) (PCURSOR-PKEY (CURSOR-PPREV-NODUP C)) (PCURSOR- 
>> PKEY (CURSOR-PLAST C)) (PCURSOR-PKEY (CURSOR-PSET C 300)) (PCURSOR- 
>> PKEY (CURSOR-PSET-RANGE C 199.5)) (PCURSOR-PKEY (CURSOR-PGET-BOTH C
>> 10 101)) (PCURSOR-PKEY (CURSOR-PGET-BOTH-RANGE C 11 111.4))))
>> Expected values: 0
>>                  2
>>                  10
>>                  11
>>                  10
>>                  9
>>                  9999
>>                  3000
>>                  2000
>>                  101
>>                  112
>> Actual values: 0
>>                2
>>                10
>>                11
>>                10
>>                9
>>                9999
>>                3000
>>                NIL
>>                101
>>                NIL.
>>  ADD-GET-REMOVE ADD-GET-REMOVE-SYMBOL EXISTSP PSET DISABLE-CLASS- 
>> INDEXING-TEST INDEXING-BASIC-TRIVIAL
>>  INDEXING-BASIC INDEXING-CLASS-OPT INDEXING-INHERIT INDEXING-RANGE
>> INDEXING-SLOT-MAKUNBOUND
>>  INDEXING-WIPE-INDEX INDEXING-RECONNECT-DB INDEXING-CHANGE-CLASS
>> INDEXING-REDEF-CLASS
>> Ranged get of 10/700 objects = Linear: 0.58 sec Indexed: 0.02 sec
>>  INDEXING-TIMING
>> Single store mode: ignoring REMOVE-ELEMENT
>> Single store mode: ignoring MIGRATE-BASIC
>> Single store mode: ignoring MIGRATE-BTREE
>> Single store mode: ignoring MIGRATE-IDX-BTREE
>> Single store mode: ignoring MIGRATE-PCLASS
>> Single store mode: ignoring MIGRATE-MULT-PCLASS
>> Single store mode: ignoring  MIGRATE-IPCLASS PREPARES-BDB TEST-SEQ1
>> TEST-SEQ2 CLEANSUP-BDB
>> 4 out of 132 total tests failed: SET-RANGE, PGET-BOTH-RANGE, PCURSOR,
>>    PCURSOR2.
>> NIL
>>
>> Just ask me if anything other test operations needed to do.
>>
>> Chun Tian (binghe)
>>
>> -- 
>> '()
>>
>> _______________________________________________
>> elephant-devel site list
>> elephant-devel at common-lisp.net
>> http://common-lisp.net/mailman/listinfo/elephant-devel
>





More information about the elephant-devel mailing list