From d35cc85d52c2200dc3859bd0f426a3c01e4d906d Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 31 Aug 2019 12:06:36 +0100 Subject: Improve error handling for processing emails --- ...ix-data-service-process-branch-updated-email.in | 24 ++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/scripts/guix-data-service-process-branch-updated-email.in b/scripts/guix-data-service-process-branch-updated-email.in index 6170a32..429684a 100644 --- a/scripts/guix-data-service-process-branch-updated-email.in +++ b/scripts/guix-data-service-process-branch-updated-email.in @@ -31,7 +31,23 @@ (with-postgresql-connection "process-branch-updated-email" (lambda (conn) - (enqueue-job-for-email - conn - (parse-email - (get-string-all (current-input-port)))))) + (let* ((email-string + (get-string-all (current-input-port))) + (email + (catch + #t + (lambda () + (parse-email email-string)) + (lambda (key . args) + (display "\nerror: while processing email\n" + (current-error-port)) + (simple-format (current-error-port) + "~A: ~A\n\n" + key + args) + (display email-string (current-error-port)) + (display "\n\n" (current-error-port)) + #f)))) + (when email + (enqueue-job-for-email conn email))))) + -- cgit v1.2.3