From f5e27f23ad4786ac1875dbbd5830e93e8f52fa06 Mon Sep 17 00:00:00 2001 From: Jussi Saurio Date: Tue, 12 Aug 2025 20:35:21 +0300 Subject: [PATCH] Use type-safe PageSize newtype for connection.page_size --- core/lib.rs | 9 ++++----- core/translate/pragma.rs | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/core/lib.rs b/core/lib.rs index 6a9f63da4..c1c2d943a 100644 --- a/core/lib.rs +++ b/core/lib.rs @@ -391,8 +391,7 @@ impl Database { let page_size = pager .io .block(|| pager.with_header(|header| header.page_size)) - .unwrap_or_default() - .get(); + .unwrap_or_default(); let default_cache_size = pager .io @@ -784,7 +783,7 @@ pub struct Connection { cache_size: Cell, /// page size used for an uninitialized database or the next vacuum command. /// it's not always equal to the current page size of the database - page_size: Cell, + page_size: Cell, /// Disable automatic checkpoint behaviour when DB is shutted down or WAL reach certain size /// Client still can manually execute PRAGMA wal_checkpoint(...) commands wal_auto_checkpoint_disabled: Cell, @@ -1439,7 +1438,7 @@ impl Connection { pub fn set_capture_data_changes(&self, opts: CaptureDataChangesMode) { self.capture_data_changes.replace(opts); } - pub fn get_page_size(&self) -> u32 { + pub fn get_page_size(&self) -> PageSize { self.page_size.get() } @@ -1481,7 +1480,7 @@ impl Connection { return Ok(()); }; - self.page_size.set(size.get()); + self.page_size.set(size); if self._db.db_state.get() != DbState::Uninitialized { return Ok(()); } diff --git a/core/translate/pragma.rs b/core/translate/pragma.rs index bea505c6b..46d09180d 100644 --- a/core/translate/pragma.rs +++ b/core/translate/pragma.rs @@ -484,7 +484,7 @@ fn query_pragma( pager .io .block(|| pager.with_header(|header| header.page_size.get())) - .unwrap_or(connection.get_page_size()) as i64, + .unwrap_or(connection.get_page_size().get()) as i64, register, ); program.emit_result_row(register, 1);