@@ -290,11 +290,13 @@ ;; NB// Should expand items here and then insert into the run queue. (debug:print 5 "test-records: " test-records ", keyvallst: " keyvallst " flags: " (hash-table->alist flags)) (let ((sorted-test-names (tests:sort-by-priority-and-waiton test-records)) (item-patts (hash-table-ref/default flags "-itempatt" #f)) (test-registery (make-hash-table)) - (num-retries 0)) + (num-retries 0) + (max-retries (config-lookup *configdat* "setup" "maxretries"))) + (if (and max-retries (string->number max-retries))(set! max-retries (string->number max-retries)) 100) (if (not (null? sorted-test-names)) (let loop ((hed (car sorted-test-names)) (tal (cdr sorted-test-names)) (reruns '())) (if (not (null? reruns))(debug:print 4 "INFO: reruns=" reruns)) @@ -507,11 +509,11 @@ ;; Here we need to check that all the tests remaining to be run are eligible to run ;; and are not blocked by failed (let* ((newlst (open-run-close tests:filter-non-runnable #f run-id tal test-records)) ;; i.e. not FAIL, WAIVED, INCOMPLETE, PASS, KILLED, (junked (lset-difference equal? tal newlst))) (debug:print 4 "INFO: full drop through, if reruns is less than 100 we will force retry them: " reruns) - (if (< num-retries 100) + (if (< num-retries max-retries) (set! newlst (append reruns newlst))) (set! num-retries (+ num-retries 1)) (thread-sleep! *global-delta*) (if (not (null? newlst)) ;; since reruns have been tacked on to newlst create new reruns from junked