aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nar-herder/database.scm10
1 files changed, 9 insertions, 1 deletions
diff --git a/nar-herder/database.scm b/nar-herder/database.scm
index 426def6..ded7c2c 100644
--- a/nar-herder/database.scm
+++ b/nar-herder/database.scm
@@ -539,7 +539,15 @@ PRAGMA optimize;")))
(let ((start-time (get-internal-real-time)))
(call-with-values
(lambda ()
- (proc db))
+ (with-throw-handler #t
+ (lambda ()
+ (proc db))
+ (lambda (key . args)
+ (simple-format
+ (current-error-port)
+ "exception in transaction: ~A: ~A\n"
+ key args)
+ (backtrace))))
(lambda vals
(let ((duration-seconds
(/ (- (get-internal-real-time) start-time)