From f817241a596f35b9c4985a61ceea24e5f645a5cf Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Fri, 18 Sep 2020 20:05:29 +0100 Subject: Simplify sqlite transactionality Remove one layer of exception handling, as I don't think it was adding much. --- guix-build-coordinator/datastore/sqlite.scm | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/guix-build-coordinator/datastore/sqlite.scm b/guix-build-coordinator/datastore/sqlite.scm index 6de0187..79877ed 100644 --- a/guix-build-coordinator/datastore/sqlite.scm +++ b/guix-build-coordinator/datastore/sqlite.scm @@ -147,23 +147,16 @@ (with-exception-handler (lambda (exn) (simple-format (current-error-port) - "error: sqlite: ~A\n" - exn) + "error: sqlite rolling back transaction\n") (sqlite-exec db "ROLLBACK TRANSACTION;") (raise-exception exn)) (lambda () - (with-exception-handler - (lambda (exn) - (backtrace) - (raise-exception exn)) - (lambda () - (call-with-values - (lambda () - (proc db)) - (lambda vals - (sqlite-exec db "COMMIT TRANSACTION;") - (apply values vals)))))) - #:unwind? #t)))) + (call-with-values + (lambda () + (proc db)) + (lambda vals + (sqlite-exec db "COMMIT TRANSACTION;") + (apply values vals)))))))) (define-method (datastore-find-agent (datastore ) -- cgit v1.2.3