154
155
156
157
158
159
160
161
162
163
164
165
166
167
|
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
|
+
|
":value"
":expected"
":tol"
":units"
;; misc
"-server"
"-killserver"
"-port"
"-extract-ods"
"-pathmod"
"-env2file"
"-setvars"
"-set-state-status"
"-debug" ;; for *verbosity* > 2
"-gen-megatest-test"
|
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
|
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
|
-
-
+
+
-
+
|
(equal? hostname (car khost-port))
(equal? port (string->number (cadr khost-port)))))
(begin
(open-run-close tasks:server-deregister tasks:open-db hostname port: port)
(if status ;; #t means alive
(begin
(if (equal? hostname (get-host-name))
(process-signal pid signal/term)
(cdb:kill-server zmq-socket))
(process-signal pid signal/term) ;; local machine, send sig term
(cdb:kill-server zmq-socket)) ;; remote machine, try telling server to commit suicide
(debug:print-info 1 "Killed server by host:port at " hostname ":" port))
(debug:print-info 1 "Removing defunct server record for " hostname ":" port))
(set! killed #t)))
(if (and kpid
;; (equal? hostname (car khost-port))
(equal? kpid pid)) ;;; YEP, ALL WITH PID WILL BE KILLED!!!
(begin
(open-run-close tasks:server-deregister tasks:open-db hostname pid: pid)
(set! killed #t)
(if status
(if (equal? hostname (get-host-name))
(process-signal pid signal/term)
(process-signal pid signal/term) ;; local machine, send sig term
(debug:print 0 "WARNING: Can't kill a dead server on host " hostname)))
(debug:print-info 1 "Killed server by pid at " hostname ":" port)))
;; (if zmq-socket (close-socket zmq-socket))
(format #t fmtstr id mt-ver pid hostname interface port start-time priority
(if status "alive" "dead"))))
servers)
(debug:print-info 1 "Done with listservers")
|