diff options
Diffstat (limited to 'guix-data-service/jobs/load-new-guix-revision.scm')
-rw-r--r-- | guix-data-service/jobs/load-new-guix-revision.scm | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/guix-data-service/jobs/load-new-guix-revision.scm b/guix-data-service/jobs/load-new-guix-revision.scm index 1a29add..de9d4a8 100644 --- a/guix-data-service/jobs/load-new-guix-revision.scm +++ b/guix-data-service/jobs/load-new-guix-revision.scm @@ -173,9 +173,32 @@ VALUES (nextval('" (log-part-sequence-name job_id) "'), $1, $2)") (let loop ((line (get-line port-to-read-from))) (let ((line-with-newline (string-append line "\n"))) - (insert logging-conn job-id line-with-newline) - (display line-with-newline real-output-port)) - (loop (get-line port-to-read-from)))))))3 + (catch #t + (lambda () + (insert logging-conn job-id line-with-newline) + (display line-with-newline real-output-port)) + (lambda (key . args) + (display + (simple-format + #f + " +error: ~A: ~A +error: could not insert log part: '~A'\n\n" + key args line) + real-output-port) + (catch #t + (lambda () + (insert + logging-conn + job-id + (simple-format + #f + " +guix-data-service: error: missing log line: ~A +\n" key))) + (lambda () + #t))))) + (loop (get-line port-to-read-from))))))) port-to-write-to))) |