Megatest

Check-in [8455164d0e]
Login
Overview
Comment:Improved stats updating. Still has issue with first round
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | v1.62
Files: files | file ages | folders
SHA1: 8455164d0ef268a90ccda36eb4969277132c4212
User & Date: mrwellan on 2016-10-10 11:50:13
Other Links: branch diff | manifest | tags
Context
2016-10-12
13:16
Check for actual matching run data in run-tabs-layout-updater. Fix for apply when list too long (Chicken Scheme limitation). Protect some tree updater calls with checks for db changed. Convert sqlite3:for-each-row to sqlite3:fold where the list can get long and the for-each will run out of memory (not tail recursive). check-in: 5508c28144 user: mrwellan tags: v1.62
2016-10-10
11:50
Improved stats updating. Still has issue with first round check-in: 8455164d0e user: mrwellan tags: v1.62
2016-10-06
11:30
Added some sketches of architecture ideas to docs check-in: 765d0f79c4 user: mrwellan tags: v1.62
Changes

Modified dashboard.scm from [e734d4686f] to [2e23768337].

2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2534
2535
2536
2537
2538
2539
2540






2541
2542
2543
2544
2545
2546
2547







-
-
-
-
-
-







(define *tim* (iup:timer))
(define *ord* #f)
(iup:attribute-set! *tim* "TIME" 300)
(iup:attribute-set! *tim* "RUN" "YES")

(define *last-recalc-ended-time* 0)

(define (dashboard:been-changed tabdat)
  (> (file-modification-time (dboard:tabdat-dbfpath tabdat)) (dboard:tabdat-last-db-update tabdat)))

(define (dashboard:set-db-update-time tabdat)
  (dboard:tabdat-last-db-update-set! tabdat (file-modification-time (dboard:tabdat-dbfpath tabdat))))

(define (dashboard:recalc modtime please-update-buttons last-db-update-time)
  (or please-update-buttons
      (and (> (current-milliseconds)(+ *last-recalc-ended-time* 150))
	   (> modtime last-db-update-time)
	   (> (current-seconds)(+ last-db-update-time 1)))))

;; (define *monitor-db-path* #f)
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588






2589
2590
2591
2592
2593
2594
2595
2573
2574
2575
2576
2577
2578
2579



2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592







-
-
-
+
+
+
+
+
+







	  (set! *last-monitor-update-time* run-update-time) ;; monitor-modtime)
	  #t)
	#f)))

(define (dashboard:database-changed? commondat tabdat)
  (let* ((run-update-time (current-seconds))
	 (modtime         (dashboard:get-youngest-run-db-mod-time tabdat)) ;; NOTE: ensure this is tabdat!! 
	 (recalc          (dashboard:recalc modtime (dboard:commondat-please-update commondat) (dboard:tabdat-last-db-update tabdat))))
     (dboard:commondat-please-update-set! commondat #f)
     recalc))
	 (recalc          (dashboard:recalc modtime 
					    (dboard:commondat-please-update commondat) 
					    (dboard:tabdat-last-db-update tabdat))))
    (if recalc (dboard:tabdat-last-db-update-set! tabdat run-update-time))
    (dboard:commondat-please-update-set! commondat #f)
    recalc))

;; point inside line
;;
(define-inline (dashboard:px-between px lx1 lx2)
  (and (< lx1 px)(> lx2 px)))

;;Not reference anywhere