summary refs log tree commit diff
path: root/gnu/packages/tex.scm
diff options
context:
space:
mode:
authorCaleb Ristvedt <caleb.ristvedt@cune.org>2020-06-01 22:15:21 -0500
committerCaleb Ristvedt <caleb.ristvedt@cune.org>2020-06-10 21:54:35 -0500
commit8971f626f2e69987bea729307adb93a0be243234 (patch)
tree6a65f50e3c1f7bea3590c8a02ba149423c376037 /gnu/packages/tex.scm
parent37545de4a3bf59611c184b31506fe9a16abe4c8b (diff)
downloadguix-8971f626f2e69987bea729307adb93a0be243234.tar.gz
database: separate transaction-handling and retry-handling.
Previously call-with-transaction would both retry when SQLITE_BUSY errors were
thrown and do what its name suggested (start and rollback/commit a
transaction).  This changes it to do only what its name implies, which
simplifies its implementation.  Retrying is provided by the new
call-with-SQLITE_BUSY-retrying procedure.

* guix/store/database.scm (call-with-transaction): no longer restarts, new
  #:restartable? argument controls whether "begin" or "begin immediate" is
  used.
  (call-with-SQLITE_BUSY-retrying, call-with-retrying-transaction,
  call-with-retrying-savepoint): new procedures.
  (register-items): use call-with-retrying-transaction to preserve old
  behavior.

* .dir-locals.el (call-with-retrying-transaction,
  call-with-retrying-savepoint): add indentation information.
Diffstat (limited to 'gnu/packages/tex.scm')
0 files changed, 0 insertions, 0 deletions