Overview
Comment: | Fixed bug with incorrect roll up of state/status to toplevel test |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | v1.60 |
Files: | files | file ages | folders |
SHA1: |
d8ca09d716b06c723e040f502f73f915 |
User & Date: | matt on 2015-06-13 16:40:21 |
Other Links: | branch diff | manifest | tags |
Context
2015-06-13
| ||
23:47 | Got release rollup test fully correct check-in: dfc505d26e user: matt tags: v1.60 | |
16:40 | Fixed bug with incorrect roll up of state/status to toplevel test check-in: d8ca09d716 user: matt tags: v1.60 | |
15:12 | Fixed cleanup of old processes check-in: 66825b4006 user: matt tags: v1.60 | |
Changes
Modified db.scm from [cd379659b1] to [a4ebf41172].
︙ | ︙ | |||
1336 1337 1338 1339 1340 1341 1342 | ;; Now do rollups for the toplevel tests ;; (db:delay-if-busy dbdat) (for-each (lambda (toptest) (let ((test-name (list-ref toptest 3))) ;; (run-id (list-ref toptest 5))) | | > > > > | 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 | ;; Now do rollups for the toplevel tests ;; (db:delay-if-busy dbdat) (for-each (lambda (toptest) (let ((test-name (list-ref toptest 3))) ;; (run-id (list-ref toptest 5))) (db:top-test-set-per-pf-counts db run-id test-name))) toplevels))) (define (db:top-test-set-per-pf-counts db run-id test-name) (db:general-call db 'top-test-set-per-pf-counts (list test-name run-id test-name test-name test-name test-name test-name test-name test-name test-name))) ;; (list run-id test-name)))) ;; Clean out old junk and vacuum the database ;; ;; Ultimately do something like this: ;; ;; 1. Look at test records either deleted or part of deleted run: ;; a. If test dir exists, set the the test to state='UNKNOWN', Set the run to 'unknown' |
︙ | ︙ | |||
2812 2813 2814 2815 2816 2817 2818 | (if (member state '("LAUNCHED" "REMOTEHOSTSTART")) (db:general-call dbdat 'set-test-start-time (list test-id))) (if msg (db:general-call dbdat 'state-status-msg (list state status msg test-id)) (db:general-call dbdat 'state-status (list state status test-id))))) (define (db:roll-up-pass-fail-counts dbstruct run-id test-name item-path status) | > | | > | | 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 | (if (member state '("LAUNCHED" "REMOTEHOSTSTART")) (db:general-call dbdat 'set-test-start-time (list test-id))) (if msg (db:general-call dbdat 'state-status-msg (list state status msg test-id)) (db:general-call dbdat 'state-status (list state status test-id))))) (define (db:roll-up-pass-fail-counts dbstruct run-id test-name item-path status) (if ;; (and (not (equal? item-path "")) ;; (not (member status '("PASS" "WARN" "FAIL" "WAIVED" "RUNNING" "CHECK" "SKIP" "LAUNCHED"))) (let ((dbdat (db:get-db dbstruct run-id))) (db:general-call dbdat 'update-pass-fail-counts (list test-name test-name test-name)) (if (equal? status "RUNNING") (db:general-call dbdat 'top-test-set-running (list test-name)) (if (equal? status "LAUNCHED") (db:general-call dbdat 'top-test-set (list "LAUNCHED" test-name)) (let ((db (db:dbdat-get-db dbdat))) (db:top-test-set-per-pf-counts db run-id test-name)))) #f) #f)) (define (db:test-get-logfile-info dbstruct run-id test-name) (db:with-db dbstruct run-id |
︙ | ︙ | |||
2902 2903 2904 2905 2906 2907 2908 | AND status NOT IN ('TEN_STRIKES','BLOCKED') AND state in ('RUNNING','NOT_STARTED','LAUNCHED','REMOTEHOSTSTART')) > 0 THEN 'RUNNING' ELSE 'COMPLETED' END, status=CASE WHEN (SELECT count(id) FROM tests WHERE run_id=? AND testname=? AND item_path != '' | | > > > | > > > | > > > > > > > > > > > > > > | 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 | AND status NOT IN ('TEN_STRIKES','BLOCKED') AND state in ('RUNNING','NOT_STARTED','LAUNCHED','REMOTEHOSTSTART')) > 0 THEN 'RUNNING' ELSE 'COMPLETED' END, status=CASE WHEN (SELECT count(id) FROM tests WHERE run_id=? AND testname=? AND item_path != '' AND state IN ('NOT_STARTED','BLOCKED','INCOMPLETE')) > 0 THEN 'FAIL' WHEN (SELECT count(id) FROM tests WHERE testname=? AND item_path != '' AND status = 'ABORT') > 0 THEN 'ABORT' WHEN (SELECT count(id) FROM tests WHERE testname=? AND item_path != '' AND status = 'CHECK') > 0 THEN 'CHECK' WHEN (SELECT count(id) FROM tests WHERE testname=? AND item_path != '' AND status = 'SKIP') > 0 THEN 'SKIP' WHEN (SELECT count(id) FROM tests WHERE testname=? AND item_path != '' AND status = 'AUTO') > 0 THEN 'AUTO' WHEN (SELECT count(id) FROM tests WHERE testname=? AND item_path != '' AND status IN ('STUCK/INCOMPLETE', 'INCOMPLETE')) > 0 THEN 'INCOMPLETE' WHEN (SELECT count(id) FROM tests WHERE testname=? AND item_path != '' AND (status NOT IN ('PASS','FAIL'))) > 0 THEN 'ABORT' WHEN fail_count > 0 THEN 'FAIL' WHEN pass_count > 0 AND fail_count=0 THEN 'PASS' ELSE 'UNKNOWN' END WHERE testname=? AND item_path='';") ;; DONE ;; STEPS '(delete-test-step-records "UPDATE test_steps SET status='DELETED' WHERE test_id=?;") '(delete-test-data-records "UPDATE test_data SET status='DELETED' WHERE test_id=?;") ;; using status since no state field )) |
︙ | ︙ |
Modified tests/fullrun/megatest.config from [3bc8922817] to [30ad751f3a].
︙ | ︙ | |||
234 235 236 237 238 239 240 | # launcher #{ scheme (case (string->symbol (conc (getenv "datapath"))) \ # ((none) "nbfake") \ # ((openlava) "bsub") \ # (else "sleeprunner"))} # launcher bsub -q priority -o $MT_TEST_RUN_DIR/openlava.log | | > | 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 | # launcher #{ scheme (case (string->symbol (conc (getenv "datapath"))) \ # ((none) "nbfake") \ # ((openlava) "bsub") \ # (else "sleeprunner"))} # launcher bsub -q priority -o $MT_TEST_RUN_DIR/openlava.log # launcher #{shell if which bsub > /dev/null;then echo bsub -q priority -o openlava.log;else echo sleeprunner;fi} launcher nbfake [configf:settings trim-trailing-spaces yes] [test] # VAL1 has trailing spaces VAL1 Foo VAL2 ==>#{get test VAL1}Bar<== no spaces between Foo and Bar to pass |
︙ | ︙ |
Modified tests/unittests/runs.scm from [d24504e68f] to [25943e33c5].
︙ | ︙ | |||
136 137 138 139 140 141 142 | ;; reset to COMPLETED/PASS (tests:test-set-status! 1 test-id "COMPLETED" "PASS" #f #f) (test "Top reset to COMPLETED/PASS" '("COMPLETED" "PASS")(get-state-status 1 "rollup" "")) (tests:test-set-status! 1 test-id state status #f #f) (test (conc "Item set to " state "/" status) (list state status) (get-state-status 1 "rollup" "item/4")) | | | | | | | 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 | ;; reset to COMPLETED/PASS (tests:test-set-status! 1 test-id "COMPLETED" "PASS" #f #f) (test "Top reset to COMPLETED/PASS" '("COMPLETED" "PASS")(get-state-status 1 "rollup" "")) (tests:test-set-status! 1 test-id state status #f #f) (test (conc "Item set to " state "/" status) (list state status) (get-state-status 1 "rollup" "item/4")) (test (conc "Rollup of " state "/" status) (list rup-state rup-status) (get-state-status 1 "rollup" ""))) '("COMPLETED" "COMPLETED" "INCOMPLETE" "INCOMPLETE" "RUNNING" "RUNNING" "COMPLETED" "COMPLETED") '("ABORT" "FAIL" "PASS" "FAIL" "PASS" "FAIL" "BLAH" "AUTO") '("COMPLETED" "COMPLETED" "COMPLETED" "COMPLETED" "RUNNING" "RUNNING" "COMPLETED" "COMPLETED") '("ABORT" "FAIL" "FAIL" "FAIL" "PASS" "FAIL" "ABORT" "AUTO"))) (test "launch-test" #t (string? (file-exists? ;; (launch-test test-id run-id run-info keyvals runname test-conf test-name test-path itemdat params) (launch-test 30001 1 rinfo keyvals "run1" tconfig "test1" test-path '() (make-hash-table))))) |
︙ | ︙ |