summaryrefslogtreecommitdiff
path: root/src/cuirass/http.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-01-29 15:23:51 +0100
committerLudovic Courtès <ludo@gnu.org>2018-01-29 18:06:47 +0100
commit0bf61ef1ff4ec7c4e24d6315f9a24e55959ec594 (patch)
treeb1e4254fb03ea9842c40ee6009f111b18cdb5679 /src/cuirass/http.scm
parent23fecf8f3d2469a3de4f7ffae16224b0d21cc265 (diff)
downloadcuirass-0bf61ef1ff4ec7c4e24d6315f9a24e55959ec594.tar
cuirass-0bf61ef1ff4ec7c4e24d6315f9a24e55959ec594.tar.gz
http: Evaluate DB requests in 'non-blocking'.
* src/cuirass/http.scm (handle-builds-request): Wrap 'db-get-builds' into 'non-blocking'.
Diffstat (limited to 'src/cuirass/http.scm')
-rw-r--r--src/cuirass/http.scm7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/cuirass/http.scm b/src/cuirass/http.scm
index b8a2996..9541844 100644
--- a/src/cuirass/http.scm
+++ b/src/cuirass/http.scm
@@ -67,8 +67,11 @@
(define (handle-builds-request db filters)
"Retrieve all builds matched by FILTERS in DB and convert them to hydra
format."
- (let ((builds (with-time-logging "builds request"
- (db-get-builds db filters))))
+ ;; Since these requests can take several seconds (!), run them through
+ ;; 'non-blocking'.
+ (let ((builds (non-blocking
+ (with-time-logging "builds request"
+ (db-get-builds db filters)))))
(map build->hydra-build builds)))
(define (request-parameters request)