Megatest

Check-in [19e5d7e0c2]
Login
Overview
Comment:99.9%. Added exception handler when checking for journal file - if the test for the file happens at the wrong time it can fail
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | v1.60
Files: files | file ages | folders
SHA1: 19e5d7e0c28c9e663ae5e3bde6df7caf0831626f
User & Date: mrwellan on 2014-11-13 08:51:02
Other Links: branch diff | manifest | tags
Context
2014-11-13
09:00
bumped version to v1.6006 check-in: ed44e5d269 user: mrwellan tags: v1.60
08:51
99.9%. Added exception handler when checking for journal file - if the test for the file happens at the wrong time it can fail check-in: 19e5d7e0c2 user: mrwellan tags: v1.60
2014-11-12
23:21
Update schema creation to allow retrying to create schema check-in: 483e2bb5d3 user: matt tags: v1.60
Changes

Modified db.scm from [dc27fe9f35] to [3cfb280ece].

1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
			       (if currstatus (conc "status='" currstatus "' AND ") "")
			       " run_id=? AND testname LIKE ?;")))
		(db:with-db
		 dbstruct
		 run-id
		 #t
		 (lambda (db)
		   (sqlite3:execute (db:get-db dbstruct run-id) qry newstate newstatus run-id testname)))))
	    testnames))

;; speed up for common cases with a little logic
;; NB// Ultimately this will be deprecated in deference to mt:test-set-state-status-by-id
;;
(define (db:test-set-state-status-by-id dbstruct run-id test-id newstate newstatus newcomment)
  (db:with-db







|







1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
			       (if currstatus (conc "status='" currstatus "' AND ") "")
			       " run_id=? AND testname LIKE ?;")))
		(db:with-db
		 dbstruct
		 run-id
		 #t
		 (lambda (db)
		   (sqlite3:execute db qry newstate newstatus run-id testname)))))
	    testnames))

;; speed up for common cases with a little logic
;; NB// Ultimately this will be deprecated in deference to mt:test-set-state-status-by-id
;;
(define (db:test-set-state-status-by-id dbstruct run-id test-id newstate newstatus newcomment)
  (db:with-db
2445
2446
2447
2448
2449
2450
2451






2452
2453
2454
2455
2456
2457
2458
2459
		      (loop (car tal)(cdr tal))))))))))

(define (db:delay-if-busy dbdat #!key (count 6))
  (if dbdat
      (let* ((dbpath (db:dbdat-get-path dbdat))
	     (db     (db:dbdat-get-db   dbdat)) ;; we'll return this so (db:delay--if-busy can be called inline
	     (dbfj   (conc dbpath "-journal")))






	(if (file-exists? dbfj)
	    (case count
	      ((6)
	       (thread-sleep! 0.2)
	       (db:delay-if-busy count: 5))
	      ((5)
	       (thread-sleep! 0.4)
	       (db:delay-if-busy count: 4))







>
>
>
>
>
>
|







2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
		      (loop (car tal)(cdr tal))))))))))

(define (db:delay-if-busy dbdat #!key (count 6))
  (if dbdat
      (let* ((dbpath (db:dbdat-get-path dbdat))
	     (db     (db:dbdat-get-db   dbdat)) ;; we'll return this so (db:delay--if-busy can be called inline
	     (dbfj   (conc dbpath "-journal")))
	(if (handle-exceptions
	     exn
	     (begin
	       (debug:print-info 0 "WARNING: failed to test for existance of " dbfj)
	       (thread-sleep! 1)
	       (db:delay-if-busy count (- count 1)))
	     (file-exists? dbfj))
	    (case count
	      ((6)
	       (thread-sleep! 0.2)
	       (db:delay-if-busy count: 5))
	      ((5)
	       (thread-sleep! 0.4)
	       (db:delay-if-busy count: 4))