From e4b34b5160e047d163125e5c13405f4407eed13e Mon Sep 17 00:00:00 2001 From: Pekka Enberg Date: Wed, 24 Sep 2025 10:17:20 +0300 Subject: [PATCH] core: Wrap Connection::sync_mode with RwLock --- core/lib.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/lib.rs b/core/lib.rs index 222dbcc84..7123620fc 100644 --- a/core/lib.rs +++ b/core/lib.rs @@ -520,7 +520,7 @@ impl Database { is_nested_stmt: AtomicBool::new(false), encryption_key: RwLock::new(None), encryption_cipher_mode: RwLock::new(None), - sync_mode: Cell::new(SyncMode::Full), + sync_mode: RwLock::new(SyncMode::Full), data_sync_retry: AtomicBool::new(false), busy_timeout: Cell::new(Duration::new(0, 0)), }); @@ -1016,7 +1016,7 @@ pub struct Connection { is_nested_stmt: AtomicBool, encryption_key: RwLock>, encryption_cipher_mode: RwLock>, - sync_mode: Cell, + sync_mode: RwLock, data_sync_retry: AtomicBool, /// User defined max accumulated Busy timeout duration /// Default is 0 (no timeout) @@ -2127,11 +2127,11 @@ impl Connection { } pub fn get_sync_mode(&self) -> SyncMode { - self.sync_mode.get() + *self.sync_mode.read() } pub fn set_sync_mode(&self, mode: SyncMode) { - self.sync_mode.set(mode); + *self.sync_mode.write() = mode; } pub fn get_data_sync_retry(&self) -> bool {