diff --git a/crates/radicle/CHANGELOG.md b/crates/radicle/CHANGELOG.md index d5dad941..379b3717 100644 --- a/crates/radicle/CHANGELOG.md +++ b/crates/radicle/CHANGELOG.md @@ -15,6 +15,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- The default configuration for the SQLite pragma `synchronous` is changed + from `FULL` to `NORMAL`, which generates less I/O operations. On power + loss, transactions might be rolled back, but SQLite still guarantees + consistency in this mode. + ### Removed ### Security diff --git a/crates/radicle/src/node/db/config.rs b/crates/radicle/src/node/db/config.rs index c57e80c6..f3d030b4 100644 --- a/crates/radicle/src/node/db/config.rs +++ b/crates/radicle/src/node/db/config.rs @@ -1,7 +1,7 @@ use super::sqlite_ext::*; const DEFAULT_JOURNAL_MODE: JournalMode = JournalMode::WAL; -const DEFAULT_SYNCHRONOUS: Synchronous = Synchronous::FULL; +const DEFAULT_SYNCHRONOUS: Synchronous = Synchronous::NORMAL; /// Database configuration. #[derive(Debug, Default, Copy, Clone, PartialEq, ::serde::Serialize, ::serde::Deserialize)] @@ -88,7 +88,7 @@ mod test { #[test] fn database_config_valid_combinations() { let cases = [ - (None, None, JournalMode::WAL, Synchronous::FULL), + (None, None, JournalMode::WAL, Synchronous::NORMAL), ( Some("WAL"), Some("NORMAL"),