radicle-heartwood-lfs/crates
Lorenz Leutgeb f3afe7b02a radicle/config/sqlite: Use `synchronous = NORMAL`
Change the default value for the `synchronous` pragma from `FULL` to
`NORMAL`.

With this change, SQLite will not aggressively `fsync()` after every
transaction, so there is considerably less disk pressure as disk I/O
can be batched.

See <https://sqlite.org/pragma.html>:
> `WAL` mode is safe from corruption with `synchronous=NORMAL`, and
> probably `DELETE` mode is safe too on modern filesystems. `WAL` mode is
> always consistent with `synchronous=NORMAL`, but `WAL` mode does lose
> durability. A transaction committed in `WAL` mode with
> `synchronous=NORMAL` might roll back following a power loss or system
> crash.
> Transactions are durable across application crashes regardless of the
> synchronous setting or journal mode.

Also:
> You lose durability across power lose with synchronous `NORMAL` in `WAL`
> mode, but that is not important for most applications. Transactions
> are still atomic, consistent, and isolated, which are the most
> important characteristics in most use cases.

So, there is no risk of database corruption, and in the extreme
cases of sudden power loss or system crash, some transaction may
roll back.

See also <https://sqlite.org/wal.html>

Co-authored-by: Yorgos Saslis <yorgos.work@proton.me>
2026-03-09 09:20:42 +00:00
..
radicle radicle/config/sqlite: Use `synchronous = NORMAL` 2026-03-09 09:20:42 +00:00
radicle-cli radicle: Make SQLite pragmas configurable 2026-03-09 09:20:42 +00:00
radicle-cli-test cli-test: Move `let mut args` closer to its uses 2026-02-17 20:19:26 +01:00
radicle-cob cob: Update to 0.18.0 2026-02-19 21:06:43 +01:00
radicle-core core: use "data-types" instead of "data types" 2026-02-20 13:38:34 +00:00
radicle-crypto crypto: Update to 0.15.0 2026-02-19 21:06:43 +01:00
radicle-dag repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
radicle-fetch fetch: Update to 0.17.0 2026-02-20 14:04:16 +00:00
radicle-git-metadata core: Introduce RepoId 2026-01-09 14:03:27 +01:00
radicle-git-ref-format git-ref-format: New crate 2025-10-13 13:34:15 +02:00
radicle-localtime localtime: add description in Cargo.toml 2026-02-20 13:48:14 +00:00
radicle-node radicle: Make SQLite pragmas configurable 2026-03-09 09:20:42 +00:00
radicle-oid Update gix-* crates 2026-02-16 17:13:39 +00:00
radicle-protocol Revert "node/debug: Use derived serializers" 2026-03-05 15:29:42 +01:00
radicle-remote-helper remote-helper: Rename `to_branch_name` 2026-02-18 00:07:49 +01:00
radicle-schemars crypto: Optionally provide JSON Schema 2026-02-10 09:39:34 +00:00
radicle-signals signals: Add support for Windows 2026-02-13 15:38:02 +00:00
radicle-ssh hooks: Enable typos, fix reported errors 2026-02-17 11:35:28 +00:00
radicle-systemd systemd: Update to 0.12.0 2026-02-20 13:11:50 +00:00
radicle-term term: Update to 0.17.0 2026-02-20 14:09:35 +00:00
radicle-windows signals: Add support for Windows 2026-02-13 15:38:02 +00:00