Handle CursorResult in deferred seek

This commit is contained in:
jussisaurio
2024-10-05 16:56:22 +03:00
parent 02d6fa31d3
commit fe90aacd35

View File

@@ -1011,7 +1011,13 @@ impl Program {
let index_cursor = cursors.get_mut(&index_cursor_id).unwrap();
let rowid = index_cursor.rowid()?;
let table_cursor = cursors.get_mut(&table_cursor_id).unwrap();
table_cursor.seek_rowid(rowid.unwrap())?;
match table_cursor.seek_rowid(rowid.unwrap())? {
CursorResult::Ok(_) => {}
CursorResult::IO => {
state.deferred_seek = Some((index_cursor_id, table_cursor_id));
return Ok(StepResult::IO);
}
}
}
let cursor = cursors.get_mut(cursor_id).unwrap();