Megatest

Check-in [42ed5b696f]
Login
Overview
Comment:Added a handle error on creation of a testdat.db in a test directory to hopefully fix the problem where occasionally a test control panel won't run due to the test directory being removed and the sqlite3 db is partially created
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | development
Files: files | file ages | folders
SHA1: 42ed5b696fa447a29b586ee0f2c74ad6976b14b1
User & Date: mrwellan on 2013-04-12 16:09:49
Other Links: branch diff | manifest | tags
Context
2013-04-16
12:47
Merged in support-for-skip check-in: 7635c4e92c user: mrwellan tags: development, v1.5412
2013-04-12
16:09
Added a handle error on creation of a testdat.db in a test directory to hopefully fix the problem where occasionally a test control panel won't run due to the test directory being removed and the sqlite3 db is partially created check-in: 42ed5b696f user: mrwellan tags: development
2013-04-11
22:39
updated test5 check-in: 6730a2e1d8 user: matt tags: development
Changes

Modified db.scm from [0623ab4501] to [aff93d1503].

246
247
248
249
250
251
252
253
254
255
256







257
258
259
260
261
262
263
246
247
248
249
250
251
252

253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269







-



+
+
+
+
+
+
+







(define (open-test-db testpath) 
  (debug:print-info 11 "open-test-db " testpath)
  (if (and testpath 
	   (directory? testpath)
	   (file-read-access? testpath))
      (let* ((dbpath    (conc testpath "/testdat.db"))
	     (dbexists  (file-exists? dbpath))
	     (db        (sqlite3:open-database dbpath)) ;; (never-give-up-open-db dbpath))
	     (handler   (make-busy-timeout (if (args:get-arg "-override-timeout")
					       (string->number (args:get-arg "-override-timeout"))
					       136000))))
	(handle-exceptions
	 exn
	 (begin
	   (debug:print 0 "ERROR: problem accessing test db " testpath ", you probably should clean and re-run this test"
			((condition-property-accessor 'exn 'message) exn))
	   #f)
	 (set! db (sqlite3:open-database dbpath)))
	(sqlite3:set-busy-handler! db handler)
	(if (not dbexists)
	    (begin
	      (sqlite3:execute db "PRAGMA synchronous = FULL;")
	      (debug:print-info 11 "Initialized test database " dbpath)
	      (db:testdb-initialize db)))
	;; (sqlite3:execute db "PRAGMA synchronous = 0;")