Index: server.scm ================================================================== --- server.scm +++ server.scm @@ -96,15 +96,15 @@ (debug:print-info 0 "Server continuing, tests running: " numrunning ", seconds since last db access: " (- (current-seconds) *last-db-access*)) (loop 0))) (begin (debug:print-info 0 "Starting to shutdown the server.") ;; need to delete only *my* server entry (future use) - (open-run-close db:del-var #f "SERVER") - (thread-sleep! 10) + (set! *time-to-exit* #t) + (open-run-close tasks:server-deregister-self tasks:open-db) + (thread-sleep! 5) (debug:print-info 0 "Max cached queries was " *max-cache-size*) (debug:print-info 0 "Server shutdown complete. Exiting") - (open-run-close tasks:server-deregister-self tasks:open-db) (exit)))))) (define (server:find-free-port-and-open host s port #!key (trynum 50)) (let ((s (if s s (make-socket 'rep))) (p (if (number? port) port 5555))) Index: tasks.scm ================================================================== --- tasks.scm +++ tasks.scm @@ -129,15 +129,15 @@ (lambda (id hostname port) (set! res (cons (list hostname port) res)) (debug:print-info 1 "Found " hostname ":" port)) mdb "SELECT id,hostname,port FROM servers WHERE state='live' ORDER BY start_time DESC LIMIT 1;") - (print "res=" res) + ;; (print "res=" res) (if (null? res) #f (let loop ((hed (car res)) (tal (cdr res))) - (print "hed=" hed ", tal=" tal) + ;; (print "hed=" hed ", tal=" tal) (let* ((host (car hed)) (port (cadr hed)) (ping-res (server:ping host port))) (if ping-res hed ;; remove defunct server from table