summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoe Ardent <nebkor@users.noreply.github.com>2024-02-04 10:42:48 -0800
committerGitHub <noreply@github.com>2024-02-04 18:42:48 +0000
commitb7bb583d8d6d2a299886449c12929d2dece5e67b (patch)
tree4d98022b7792a18f1f3a217092b3f2533c9d6284
parentc2af6f7ae890333d6f367e863d77d3dfe9b36f8a (diff)
fix: set durability for sqlite to recommended settings (#1667)
Also do an optimize on connection close. Fixes lag on history insertion.
-rw-r--r--atuin-client/src/database.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/atuin-client/src/database.rs b/atuin-client/src/database.rs
index 19fccb0c..e67fe06d 100644
--- a/atuin-client/src/database.rs
+++ b/atuin-client/src/database.rs
@@ -14,7 +14,10 @@ use rand::{distributions::Alphanumeric, Rng};
use regex::Regex;
use sql_builder::{esc, quote, SqlBuilder, SqlName};
use sqlx::{
- sqlite::{SqliteConnectOptions, SqliteJournalMode, SqlitePool, SqlitePoolOptions, SqliteRow},
+ sqlite::{
+ SqliteConnectOptions, SqliteJournalMode, SqlitePool, SqlitePoolOptions, SqliteRow,
+ SqliteSynchronous,
+ },
Result, Row,
};
use time::OffsetDateTime;
@@ -137,6 +140,8 @@ impl Sqlite {
let opts = SqliteConnectOptions::from_str(path.as_os_str().to_str().unwrap())?
.journal_mode(SqliteJournalMode::Wal)
+ .optimize_on_close(true, None)
+ .synchronous(SqliteSynchronous::Normal)
.create_if_missing(true);
let pool = SqlitePoolOptions::new()