Megatest

Check-in [2415e799b1]
Login
Overview
Comment:made server throttle wait time configurable ==3.4/1.1/1203/PASS/mars==
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | v1.65-cleanup | v1.6565
Files: files | file ages | folders
SHA1: 2415e799b1b58e3022ebe1eaf296a27386976a1f
User & Date: mrwellan on 2020-08-27 14:45:03
Original Comment: made server throttle wait time configurable
Other Links: branch diff | manifest | tags
Context
2020-08-28
10:24
Converted a few load wait back to simple sleeps to save cycles. check-in: 44f224d1e8 user: mrwellan tags: v1.65-cleanup, v1.6565
2020-08-27
14:45
made server throttle wait time configurable ==3.4/1.1/1203/PASS/mars== check-in: 2415e799b1 user: mrwellan tags: v1.65-cleanup, v1.6565
12:25
dunno ==/3.76/0.7/PASS/1201/orion/== ==/ext-tests all PASS except kill-rerun/== check-in: 9306ad82ee user: mrwellan tags: v1.65-cleanup
Changes

Modified server.scm from [12c9f61b71] to [0bfbc24f73].

319
320
321
322
323
324
325
326


327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
      (let ((sig (server:mk-signature)))
        (set! *my-client-signature* sig)
        *my-client-signature*)))

;; wait for server=start-last to be three seconds old
;;
(define (server:wait-for-server-start-last-flag areapath)
  (let* ((start-flag (conc areapath "/logs/server-start-last")))


    (if (file-exists? start-flag)
	(let* ((fmodtime (file-modification-time start-flag))
	       (reftime  3) ;; (+ 2 (random 3))) ;;; THIS INTERACTS WITH [server] timeout. Suggest using 0.1 or above
	       (delta    (- (current-seconds) fmodtime))
	       (all-go   (> delta reftime)))
	  (if all-go
	      #t ;; (system (conc "touch " start-flag)) ;; lazy but safe
	      (begin
		(debug:print-info 0 *default-log-port* "Gating server start, last start: "
				  fmodtime ", delta: " delta ", reftime: " reftime ", all-go=" all-go)
		(thread-sleep! 5)
		(server:wait-for-server-start-last-flag areapath)))))))

;; kind start up of servers, wait 40 seconds before allowing another server for a given
;; run-id to be launched
;;
(define (server:kind-run areapath)
  ;; look for $MT_RUN_AREA_HOME/logs/server-start-last







|
>
>


<







|







319
320
321
322
323
324
325
326
327
328
329
330

331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
      (let ((sig (server:mk-signature)))
        (set! *my-client-signature* sig)
        *my-client-signature*)))

;; wait for server=start-last to be three seconds old
;;
(define (server:wait-for-server-start-last-flag areapath)
  (let* ((start-flag (conc areapath "/logs/server-start-last"))
	 ;;; THIS INTERACTS WITH [server] timeout. Suggest using 0.1 or above for timeout (6 seconds)
	 (reftime    (configf:lookup-number *configdat* "server" "idletime" default: 4)))
    (if (file-exists? start-flag)
	(let* ((fmodtime (file-modification-time start-flag))

	       (delta    (- (current-seconds) fmodtime))
	       (all-go   (> delta reftime)))
	  (if all-go
	      #t ;; (system (conc "touch " start-flag)) ;; lazy but safe
	      (begin
		(debug:print-info 0 *default-log-port* "Gating server start, last start: "
				  fmodtime ", delta: " delta ", reftime: " reftime ", all-go=" all-go)
		(thread-sleep! reftime)
		(server:wait-for-server-start-last-flag areapath)))))))

;; kind start up of servers, wait 40 seconds before allowing another server for a given
;; run-id to be launched
;;
(define (server:kind-run areapath)
  ;; look for $MT_RUN_AREA_HOME/logs/server-start-last