Megatest

Check-in [7b2f541448]
Login
Overview
Comment:Added typed-records to common.scm. Minor typo fixes. Added shm and wal to files to check timestamps on for dashboard refresh
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | v1.62-side
Files: files | file ages | folders
SHA1: 7b2f541448dc901339807546a20fe468ecc7ba13
User & Date: matt on 2016-11-04 11:06:57
Other Links: branch diff | manifest | tags
Context
2016-11-04
13:01
Merged in v1.62 check-in: d42cd38243 user: matt tags: v1.62-side
11:06
Added typed-records to common.scm. Minor typo fixes. Added shm and wal to files to check timestamps on for dashboard refresh check-in: 7b2f541448 user: matt tags: v1.62-side
2016-10-31
23:17
Commented out line used for debugging check-in: d37abcb490 user: matt tags: v1.62-side
Changes

Modified common.scm from [5849a40b64] to [510ef48e81].

1
2
3
4
5
6
7
8
9
10
11
12

13
14
15
16
17
18
19
1
2
3
4
5
6
7
8
9
10
11

12
13
14
15
16
17
18
19











-
+







;;======================================================================
;; Copyright 2006-2012, Matthew Welland.
;; 
;;  This program is made available under the GNU GPL version 2.0 or
;;  greater. See the accompanying file COPYING for details.
;; 
;;  This program is distributed WITHOUT ANY WARRANTY; without even the
;;  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
;;  PURPOSE.
;;======================================================================

(use srfi-1 posix regex-case base64 format dot-locking csv-xml z3 sql-de-lite hostinfo md5 message-digest)
(use srfi-1 posix regex-case base64 format dot-locking csv-xml z3 sql-de-lite hostinfo md5 message-digest typed-records)
(require-extension regex posix)

(require-extension (srfi 18) extras tcp rpc)

(import (prefix sqlite3 sqlite3:))
(import (prefix base64 base64:))

Modified dashboard.scm from [a3ba83c9cc] to [cb5cc76ff7].

261
262
263
264
265
266
267

268
269
270
271
272
273
274
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275







+








  ;; tests data
  ((num-tests          10)               : number)      ;; total number of tests to show (used in the old runs display)

  ;; runs tree
  ((path-run-ids       (make-hash-table)) : hash-table) ;; path (target / runname) => id
  (runs-tree           #f)
  ((runs-tree-ht       (make-hash-table)) : hash-table) ;; track which targets added to tree (merge functionality with path-run-ids?)

  ;; tab data
  ((view-changed       #t)                : boolean)   
  ((xadj               0)                 : number)     ;; x slider number (if using canvas)
  ((yadj               0)                 : number)     ;; y slider number (if using canvas)
  ;; runs-summary tab state
  ((runs-summary-modes '((one-run . "Show One Run") (xor-two-runs . "XOR Two Runs") (xor-two-runs-hide-clean . "XOR; Hide Clean")) )   : list)
2583
2584
2585
2586
2587
2588
2589

2590
2591
2592
2593
2594
2595
2596
2597








2598
2599
2600
2601
2602
2603
2604
2584
2585
2586
2587
2588
2589
2590
2591








2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606







+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+







;; (define *monitor-db-path* #f)
(define *last-monitor-update-time* 0)

;; Force creation of the db in case it isn't already there.
(tasks:open-db)

(define (dashboard:get-youngest-run-db-mod-time tabdat)
  (let ((dbpath (dboard:tabdat-dbdir tabdat)))
  (handle-exceptions
   exn
   (begin
     (debug:print 0 *default-log-port* "WARNING: error in accessing databases in get-youngest-run-db-mod-time: " ((condition-property-accessor 'exn 'message) exn))
     (current-seconds)) ;; something went wrong - just print an error and return current-seconds
   (common:max (map (lambda (filen)
		     (file-modification-time filen))
		   (glob (conc (dboard:tabdat-dbdir tabdat) "/*.db"))))))
    (handle-exceptions
     exn
     (begin
       (debug:print 0 *default-log-port* "WARNING: error in accessing databases in get-youngest-run-db-mod-time: " ((condition-property-accessor 'exn 'message) exn))
       (current-seconds)) ;; something went wrong - just print an error and return current-seconds
     (common:max (map (lambda (filen)
			(file-modification-time filen))
		      (glob (conc dbpath "/*.db")(conc dbpath "/*-shm")(conc dbpath "/*-wal")))))))

(define (dashboard:monitor-changed? commondat tabdat)
  (let* ((run-update-time (current-seconds))
	 (monitor-db-path (dboard:tabdat-monitor-db-path tabdat))
	 (monitor-modtime (if (and monitor-db-path (file-exists? monitor-db-path))
			      (file-modification-time monitor-db-path)
			      -1)))

Modified megatest.scm from [a1a4b74e6e] to [42e5a9d374].

376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
376
377
378
379
380
381
382

383
384
385
386
387
388
389







-







			 (delay-loop (+ count 1))))
		   (loop)))
	     (if (common:low-noise-print 30)
		 (debug:print-info 0 *default-log-port* "Exiting watchdog timer, *time-to-exit* = " *time-to-exit*)))))
     "Watchdog thread")))

(thread-start! *watchdog*)


(if (args:get-arg "-log")
    (let ((oup (open-output-file (args:get-arg "-log"))))
      (debug:print-info 0 *default-log-port* "Sending log output to " (args:get-arg "-log"))
      (set! *default-log-port* oup)))

(if (or (args:get-arg "-h")

Modified tests/fullrun/megatest.config from [43488111c7] to [e144425204].

40
41
42
43
44
45
46




47
48
49
50
51
52
53
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57







+
+
+
+







megatest-db yes

# Set launchwait to no to use the more agressive code that does not wait for the launch to complete before proceeding
# this may save a few milliseconds on launching tests
# launchwait no
waivercommentpatt ^WW\d+ [a-z].*
incomplete-timeout 1

# wait 25 seconds between launching every process
#
launch-delay 25

# wait for runs to completely complete. yes, anything else is no
run-wait yes

# If set to "default" the old code is used. Otherwise defaults to 200 or uses
# numeric value given.
#