Index: db.scm ================================================================== --- db.scm +++ db.scm @@ -67,27 +67,34 @@ (db:initialize db)) (db:set-sync db) db)) (define (open-run-close proc idb . params) - (let ((runner (lambda () - (let* ((db (if idb idb (open-db))) - (res #f)) - (db:set-sync db) - (set! res (apply proc db params)) - (if (not idb)(sqlite3:finalize! db)) - res)))) - (handle-exceptions - exn - (begin - (debug:print 0 "EXCEPTION: database probably overloaded?") - (debug:print 0 " " exn) - (print-call-chain) - (thread-sleep! (random 120)) - (debug:print 0 "trying db call one more time....") - (runner)) - (runner)))) + (let* ((db (if idb idb (open-db))) + (res #f)) + (db:set-sync db) + (set! res (apply proc db params)) + (if (not idb)(sqlite3:finalize! db)) + res)) + +;; (let ((runner (lambda () +;; (let* ((db (if idb idb (open-db))) +;; (res #f)) +;; (db:set-sync db) +;; (set! res (apply proc db params)) +;; (if (not idb)(sqlite3:finalize! db)) +;; res)))) +;; (handle-exceptions +;; exn +;; (begin +;; (debug:print 0 "EXCEPTION: database probably overloaded?") +;; (debug:print 0 " " exn) +;; (print-call-chain) +;; (thread-sleep! (random 120)) +;; (debug:print 0 "trying db call one more time....") +;; (runner)) +;; (runner)))) (define *global-delta* 0) (define *last-global-delta-printed* 0) (define (open-run-close-measure proc idb . params) Index: megatest.scm ================================================================== --- megatest.scm +++ megatest.scm @@ -279,14 +279,14 @@ (setup-for-run) (open-db))) (runpatt (args:get-arg "-list-runs")) (testpatt (args:get-arg "-testpatt")) (itempatt (args:get-arg "-itempatt")) - (runsdat (rdb:get-runs db runpatt #f #f '())) + (runsdat (db:get-runs db runpatt #f #f '())) (runs (db:get-rows runsdat)) (header (db:get-header runsdat)) - (keys (rdb:get-keys db)) + (keys (db:get-keys db)) (keynames (map key:get-fieldname keys))) (if (not (args:get-arg "-server")) (server:client-setup db)) ;; Each run (for-each @@ -297,11 +297,11 @@ keynames) "/") "/" (db:get-value-by-header run header "runname") " status: " (db:get-value-by-header run header "state")) (let ((run-id (db:get-value-by-header run header "id"))) - (let ((tests (rdb:get-tests-for-run db run-id testpatt itempatt '() '()))) + (let ((tests (db:get-tests-for-run db run-id testpatt itempatt '() '()))) ;; Each test (for-each (lambda (test) (format #t " Test: ~25a State: ~15a Status: ~15a Runtime: ~5@as Time: ~22a Host: ~10a\n" @@ -484,13 +484,13 @@ (exit 1))) (set! db (open-db)) (if (not (args:get-arg "-server")) (server:client-setup db)) (let* ((itempatt (args:get-arg "-itempatt")) - (keys (rdb:get-keys db)) + (keys (db:get-keys db)) (keynames (map key:get-fieldname keys)) - (paths (rdb:test-get-paths-matching db keynames target (args:get-arg "-test-files")))) + (paths (db:test-get-paths-matching db keynames target (args:get-arg "-test-files")))) (set! *didsomething* #t) (for-each (lambda (path) (print path)) paths))) ;; else do a general-run-call @@ -497,11 +497,11 @@ (general-run-call "-test-files" "Get paths to test" (lambda (db target runname keys keynames keyvallst) (let* ((itempatt (args:get-arg "-itempatt")) - (paths (rdb:test-get-paths-matching db keynames target (args:get-arg "-test-files")))) + (paths (db:test-get-paths-matching db keynames target (args:get-arg "-test-files")))) (for-each (lambda (path) (print path)) paths)))))) ;;====================================================================== @@ -534,11 +534,11 @@ (exit 1))) (set! db (open-db)) (if (not (args:get-arg "-server")) (server:client-setup db)) (let* ((itempatt (args:get-arg "-itempatt")) - (keys (rdb:get-keys db)) + (keys (db:get-keys db)) (keynames (map key:get-fieldname keys)) (paths (db:test-get-paths-matching db keynames target))) (set! *didsomething* #t) (for-each (lambda (path) (print path)) @@ -612,11 +612,11 @@ (exit 1))) (set! db (open-db)) (if (not (args:get-arg "-server")) (server:client-setup db)) (if (and state status) - (rdb:teststep-set-status! db test-id step state status itemdat (args:get-arg "-m") logfile) + (db:teststep-set-status! db test-id step state status itemdat (args:get-arg "-m") logfile) (begin (debug:print 0 "ERROR: You must specify :state and :status with every call to -step") (exit 6))) (sqlite3:finalize! db) (set! *didsomething* #t)))) @@ -655,11 +655,11 @@ (if (args:get-arg "-load-test-data") ;; has sub commands that are rdb: (db:load-test-data db test-id)) (if (args:get-arg "-setlog") (let ((logfname (args:get-arg "-setlog"))) - (rdb:test-set-log! db test-id logfname))) + (db:test-set-log! db test-id logfname))) (if (args:get-arg "-set-toplog") (rtests:test-set-toplog! db run-id test-name (args:get-arg "-set-toplog"))) (if (args:get-arg "-summarize-items") (tests:summarize-items db run-id test-name #t)) ;; do force here (if (args:get-arg "-runstep") @@ -681,11 +681,11 @@ (else ">&"))) (fullcmd (conc "(" (string-intersperse (cons cmd params) " ") ") " redir " " logfile))) ;; mark the start of the test - (rdb:teststep-set-status! db test-id stepname "start" "n/a" itemdat (args:get-arg "-m") logfile) + (db:teststep-set-status! db test-id stepname "start" "n/a" itemdat (args:get-arg "-m") logfile) ;; close the db ;; (sqlite3:finalize! db) ;; run the test step (debug:print 2 "INFO: Running \"" fullcmd "\"") (change-directory startingdir) @@ -704,13 +704,13 @@ (debug:print 2 "INFO: running \"" cmd "\"") (change-directory startingdir) (set! exitstat (system cmd)) (set! *globalexitstatus* exitstat) ;; no necessary (change-directory testpath) - (rdb:test-set-log! db test-id htmllogfile))) + (db:test-set-log! db test-id htmllogfile))) (let ((msg (args:get-arg "-m"))) - (rdb:teststep-set-status! db test-id stepname "end" exitstat itemdat msg logfile)) + (db:teststep-set-status! db test-id stepname "end" exitstat itemdat msg logfile)) ;; (sqlite3:finalize! db) ;;(if (not (eq? exitstat 0)) ;; (exit 254)) ;; (exit exitstat) doesn't work?!? ;; open the db ;; mark the end of the test @@ -754,11 +754,11 @@ (debug:print 0 "Failed to setup, exiting") (exit 1))) (set! db (open-db)) (if (not (args:get-arg "-server")) (server:client-setup db)) - (set! keys (rdb:get-keys db)) + (set! keys (db:get-keys db)) (debug:print 1 "Keys: " (string-intersperse (map key:get-fieldname keys) ", ")) (sqlite3:finalize! db) (set! *didsomething* #t))) (if (args:get-arg "-gui") Index: runconfig.scm ================================================================== --- runconfig.scm +++ runconfig.scm @@ -11,12 +11,12 @@ (include "common_records.scm") (define (setup-env-defaults db fname run-id already-seen #!key (environ-patt #f)) - (let* ((keys (rdb:get-keys db)) - (keyvals (rdb:get-key-vals db run-id)) + (let* ((keys (db:get-keys db)) + (keyvals (db:get-key-vals db run-id)) (thekey (string-intersperse (map (lambda (x)(if x x "-na-")) keyvals) "/")) ;; Why was system disallowed in the reading of the runconfigs file? ;; NOTE: Should be setting env vars based on (target|default) (confdat (read-config fname #f #t environ-patt: environ-patt sections: (list "default" thekey))) (whatfound (make-hash-table)) Index: runs.scm ================================================================== --- runs.scm +++ runs.scm @@ -182,11 +182,11 @@ #f)))) ;; This is a duplicate of run-tests (which has been deprecated). Use this one instead of run tests. ;; keyvals (define (runs:run-tests db target runname test-patts user flags) - (let* ((keys (rdb:get-keys db)) + (let* ((keys (db:get-keys db)) (keyvallst (keys:target->keyval keys target)) (run-id (runs:register-run db keys keyvallst runname "new" "n/a" user)) ;; test-name))) (deferred '()) ;; delay running these since they have a waiton clause ;; keepgoing is the defacto modality now, will add hit-n-run a bit later ;; (keepgoing (hash-table-ref/default flags "-keepgoing" #f)) @@ -677,11 +677,11 @@ ;; 'set-state-status ;; ;; NB// should pass in keys? ;; (define (runs:operate-on db action runnamepatt testpatt itempatt #!key (state #f)(status #f)(new-state-status #f)) - (let* ((keys (rdb:get-keys db)) + (let* ((keys (db:get-keys db)) (rundat (runs:get-runs-by-patt db keys runnamepatt)) (header (vector-ref rundat 0)) (runs (vector-ref rundat 1)) (states (if state (string-split state ",") '())) (statuses (if status (string-split status ",") '())) @@ -801,11 +801,11 @@ (if (args:get-arg "-server") (server:start db (args:get-arg "-server")) (if (not (or (args:get-arg "-runall") (args:get-arg "-runtests"))) (server:client-setup db))) - (set! keys (rdb:get-keys db)) + (set! keys (db:get-keys db)) ;; have enough to process -target or -reqtarg here (if (args:get-arg "-reqtarg") (let* ((runconfigf (conc *toppath* "/runconfigs.config")) ;; DO NOT EVALUATE ALL (runconfig (read-config runconfigf #f #f environ-patt: #f))) (if (hash-table-ref/default runconfig (args:get-arg "-reqtarg") #f) @@ -887,11 +887,11 @@ (define (runs:rollup-run db keys keyvallst runname user) ;; was target, now keyvallst (debug:print 4 "runs:rollup-run, keys: " keys " keyvallst: " keyvallst " :runname " runname " user: " user) (let* (; (keyvalllst (keys:target->keyval keys target)) (new-run-id (runs:register-run db keys keyvallst runname "new" "n/a" user)) (prev-tests (test:get-matching-previous-test-run-records db new-run-id "%" "%")) - (curr-tests (rdb:get-tests-for-run db new-run-id "%" "%" '() '())) + (curr-tests (db:get-tests-for-run db new-run-id "%" "%" '() '())) (curr-tests-hash (make-hash-table))) (db:update-run-event_time db new-run-id) ;; index the already saved tests by testname and itemdat in curr-tests-hash (for-each (lambda (testdat) @@ -915,11 +915,11 @@ (apply sqlite3:execute db (conc "INSERT OR REPLACE INTO tests (run_id,testname,state,status,event_time,host,cpuload,diskfree,uname,rundir,item_path,run_duration,final_logf,comment) " "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?);") new-run-id (cddr (vector->list testdat))) - (set! new-testdat (car (rdb:get-tests-for-run db new-run-id testname item-path '() '()))) + (set! new-testdat (car (db:get-tests-for-run db new-run-id testname item-path '() '()))) (hash-table-set! curr-tests-hash full-name new-testdat) ;; this could be confusing, which record should go into the lookup table? ;; Now duplicate the test steps (debug:print 4 "Copying records in test_steps from test_id=" (db:test-get-id testdat) " to " (db:test-get-id new-testdat)) (sqlite3:execute db