@@ -67,43 +67,58 @@ (define (dbr:dbstruct-localdb-set! v run-id db) (hash-table-set! (dbr:dbstruct-locdbs v) run-id db)) (require-extension typed-records) (defstruct db:test-rec ((id -1) : number) - ((run_id -1) : number) - ((testname "") : string) - ((state "") : string) - ((status "") : string) - ((event_time -1) : number) - ((host "") : string) - ((cpuload -1) : number) - ((diskfree -1) : number) - ((uname "") : string) - ((rundir "") : string) - ((item_path "") : string) - ((run_duration -1) : number) - ((final_logf "") : string) - ((comment "") : string) - ((process-id -1) : number) - ((archived -1) : number) - ((shortdir -1) : number) - ((attemptnum -1) : number)) + ((run_id -1) : number) + ((testname "") : string) + ((state "") : string) + ((status "") : string) + ((event_time -1) : number) + ((host "") : string) + ((cpuload -1) : number) + ((diskfree -1) : number) + ((uname "") : string) + ((rundir "") : string) + ((item_path "") : string) + ((run_duration -1) : number) + ((final_logf "") : string) + ((comment "") : string) + ((process-id -1) : number) + ((archived -1) : number) + ((shortdir -1) : number) + ((attemptnum -1) : number)) (define (db:qry-gen-alist qrystr listvals) - (define listqry (string-split qrystr ",")) - (if (null? listqry) - '() - (let loop ((strhead (car listqry)) - (strtail (cdr listqry)) - (valhead (car listvals)) - (valtail (cdr listvals)) - (res '())) - (let* ((slot-val-pair (cons (string->symbol strhead) valhead))) - (if (or (null? strtail) - (null? valtail)) - (cons slot-val-pair res);;(print strhead valhead));;(cons (cons (string->symbol strhead) valhead) res)) - (loop (car strtail)(cdr strtail)(car valtail)(cdr valtail)(cons slot-val-pair res))))))) + (define listqry (string-split qrystr ",")) + (if (null? listqry) + '() + (let loop ((strhead (car listqry)) + (strtail (cdr listqry)) + (valhead (car listvals)) + (valtail (cdr listvals)) + (res '())) + (let* ((slot-val-pair (cons (string->symbol strhead) valhead))) + (if (or (null? strtail) + (null? valtail)) + (cons slot-val-pair res);;(print strhead valhead));;(cons (cons (string->symbol strhead) valhead) res)) + (loop (car strtail)(cdr strtail)(car valtail)(cdr valtail)(cons slot-val-pair res))))))) + +(define (db:test-rec-from-qry-long listvals) + (make-db:test-rec id: (list-ref listvals 0) run_id: (list-ref listvals 1) testname: (list-ref listvals 2) + state: (list-ref listvals 3) status: (list-ref listvals 4) event_time: (list-ref listvals 5) + host: (list-ref listvals 6) cpuload: (list-ref listvals 7) diskfree: (list-ref listvals 8) + uname: (list-ref listvals 9) rundir: (list-ref listvals 10) item_path: (list-ref listvals 11) + run_duration: (list-ref listvals 12) final_logf: (list-ref listvals 13) comment: (list-ref listvals 14) + shortdir: (list-ref listvals 15) attemptnum: (list-ref listvals 16) archived: (list-ref listvals 17))) + +(define (db:test-rec-from-qry-short listvals) + (make-db:test-rec id: (list-ref listvals 0) run_id: (list-ref listvals 1) testname: (list-ref listvals 2) + state: (list-ref listvals 3) status: (list-ref listvals 4) event_time: (list-ref listvals 5) + host: (list-ref listvals 6) cpuload: (list-ref listvals 7) diskfree: (list-ref listvals 8) + uname: (list-ref listvals 9) rundir: (list-ref listvals 10) item_path: (list-ref listvals 11) + run_duration: (list-ref listvals 12) final_logf: (list-ref listvals 13) comment: (list-ref listvals 14))) (define (db:test-get-id typed-rec) (db:test-rec-id typed-rec)) (define (db:test-get-run_id typed-rec) (db:test-rec-run_id typed-rec)) (define (db:test-get-testname typed-rec) (db:test-rec-testname typed-rec)) (define (db:test-get-state typed-rec) (db:test-rec-state typed-rec))