guix-devel/guix/store
Caleb Ristvedt a4678c6ba1
database: Make 'register-items' transactional.
* guix/store/database.scm (SQLITE_BUSY, register-output-sql): New variables.
(add-references): Don't try finalizing after each use, only after all the
uses (otherwise a finalized statement would be used if #:cache? was #f).
(call-with-transaction): New procedure.
(register-items): Use call-with-transaction to prevent broken intermediate
states from being visible.

* .dir-locals.el (call-with-transaction): indent it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-03-07 00:00:18 +01:00
..
database.scm database: Make 'register-items' transactional. 2019-03-07 00:00:18 +01:00
deduplication.scm deduplication: Ignore EMLINK. 2019-01-23 23:35:12 +01:00
schema.sql database: 'with-database' can now initialize new databases. 2018-06-14 11:16:58 +02:00
ssh.scm store: Support 'ssh://' URIs in 'GUIX_DAEMON_SOCKET'. 2017-04-21 19:17:36 +02:00