From 8cd33f3ec9507142ab8eed6ac5739fb7c3ac29b2 Mon Sep 17 00:00:00 2001 From: PThorpe92 Date: Mon, 17 Nov 2025 08:41:22 -0500 Subject: [PATCH] Add comment for or replace behavior require seek in translate/insert --- core/translate/insert.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/core/translate/insert.rs b/core/translate/insert.rs index 05e1a88d8..b1897b17f 100644 --- a/core/translate/insert.rs +++ b/core/translate/insert.rs @@ -412,6 +412,9 @@ pub fn translate_insert( } let mut insert_flags = InsertFlags::new(); + + // For the case of OR REPLACE, we need to force a seek on the insert, as we may have + // already deleted the conflicting row and the cursor is not guaranteed to be positioned. if matches!(ctx.on_conflict, ResolveType::Replace) { insert_flags = insert_flags.require_seek(); }