124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
-
+
|
;; (define *server-id* #f)
(define *server-info* #f) ;; good candidate for easily convert to non-global
(define *time-to-exit* #f)
(define *server-run* #t)
(define *run-id* #f)
(define *server-kind-run* (make-hash-table))
(define *home-host* #f)
(define *queues* (make-api:queues enable: #t)) ;; set up the queues for coalescing queries
;; (define *total-non-write-delay* 0)
(define *heartbeat-mutex* (make-mutex))
(define *api-process-request-count* 0)
(define *max-api-process-requests* 0)
(define *server-overloaded* #f)
;; client
|
164
165
166
167
168
169
170
171
172
173
174
175
176
177
|
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
|
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
(conndat #f)
(transport *transport-type*)
(server-timeout (server:get-timeout)) ;; default from server:get-timeout
(force-server #f)
(ro-mode #f)
(ro-mode-checked #f)) ;; flag that indicates we have checked for ro-mode
;; api queued requests structure and global (temporary solution)
(defstruct api:queues
(enable #f)
(dbstruct #f) ;; must be initialized!
(mutex (make-mutex))
(readq '())
(writeq '())
(last-read (current-milliseconds))
(last-write (current-milliseconds))
(read-cvar (make-condition-variable "reads"))
(write-cvar (make-condition-variable "writes"))
)
(define *queues* (make-api:queues enable: #t)) ;; set up the queues for coalescing queries
;; launching and hosts
(defstruct host
(reachable #f)
(last-update 0)
(last-used 0)
(last-cpuload 1))
|