397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
|
(tasks:server-set-state! (db:delay-if-busy tdbdat) server-id "dbprep")
;;(BB> "http-transport: ->dbprep")
(thread-sleep! 0.5) ;; give some margin for queries to complete before switching from file based access to server based access
(set! *dbstruct-db* (db:setup)) ;; run-id))
(set! server-going #t)
(tasks:server-set-state! (db:delay-if-busy tdbdat) server-id "running")
;;(BB> "http-transport: ->running")
(server:write-dotserver *toppath* iface port (current-process-id) 'http)
(thread-start! *watchdog*)
(server:complete-attempt *toppath*))
(begin ;; gotta exit nicely
;;(BB> "http-transport: ->collision")
(tasks:server-set-state! (db:delay-if-busy tdbdat) server-id "collision")
(http-transport:server-shutdown server-id port))))))
;; when things go wrong we don't want to be doing the various queries too often
;; so we strive to run this stuff only every four seconds or so.
|
|
|
|
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
|
(tasks:server-set-state! (db:delay-if-busy tdbdat) server-id "dbprep")
;;(BB> "http-transport: ->dbprep")
(thread-sleep! 0.5) ;; give some margin for queries to complete before switching from file based access to server based access
(set! *dbstruct-db* (db:setup)) ;; run-id))
(set! server-going #t)
(tasks:server-set-state! (db:delay-if-busy tdbdat) server-id "running")
;;(BB> "http-transport: ->running")
(server:write-dotserver *toppath* iface port (current-process-id) 'http) ;; create file .server
(thread-start! *watchdog*)
(server:complete-attempt *toppath*)) ;; delete file .starting-server
(begin ;; gotta exit nicely
;;(BB> "http-transport: ->collision")
(tasks:server-set-state! (db:delay-if-busy tdbdat) server-id "collision")
(http-transport:server-shutdown server-id port))))))
;; when things go wrong we don't want to be doing the various queries too often
;; so we strive to run this stuff only every four seconds or so.
|