mirror of
https://github.com/aljazceru/turso.git
synced 2026-01-27 03:44:25 +01:00
Explain why it fails
This commit is contained in:
@@ -495,6 +495,7 @@ fn finish_read_page(
|
||||
pub fn begin_write_btree_page(pager: &Pager, page: &Rc<RefCell<Page>>) -> Result<()> {
|
||||
let page_source = &pager.page_io;
|
||||
let page_finish = page.clone();
|
||||
// page.borrow() returns RefCell<Page> which remains active for the entire begin_write_btree_page function
|
||||
let page = page.borrow();
|
||||
|
||||
let contents = page.contents.read().unwrap();
|
||||
@@ -505,6 +506,7 @@ pub fn begin_write_btree_page(pager: &Pager, page: &Rc<RefCell<Page>>) -> Result
|
||||
Box::new(move |bytes_written: i32| {
|
||||
let buf_copy = buf_copy.clone();
|
||||
let buf_len = buf_copy.borrow().len();
|
||||
// requires a mutable borrow of the page_finish's RefCell<Page>
|
||||
page_finish.borrow_mut().clear_dirty();
|
||||
if bytes_written < buf_len as i32 {
|
||||
log::error!("wrote({bytes_written}) less than expected({buf_len})");
|
||||
|
||||
BIN
database.db
Normal file
BIN
database.db
Normal file
Binary file not shown.
Reference in New Issue
Block a user