aboutsummaryrefslogtreecommitdiff
path: root/src/wherecode.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2016-05-06 20:23:12 +0000
committerdrh <drh@noemail.net>2016-05-06 20:23:12 +0000
commitf09c48233a1238f45be65b57986e543d7178711f (patch)
tree5eabbeec7f13dd9174b6fa34616ba914d285cbf6 /src/wherecode.c
parenta3fd75d4265306f6aefecafe6368c57e16fc60b9 (diff)
downloadsqlite-f09c48233a1238f45be65b57986e543d7178711f.tar.gz
sqlite-f09c48233a1238f45be65b57986e543d7178711f.zip
Simplification to the logic used to decide between OP_Seek and OP_NotExists.
Use OP_NotExists for both DELETE and UPDATE. FossilOrigin-Name: 3a695263183303e3f64eb2320752d0fdef53eaf2
Diffstat (limited to 'src/wherecode.c')
-rw-r--r--src/wherecode.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/wherecode.c b/src/wherecode.c
index c1397b8a2..aee50c314 100644
--- a/src/wherecode.c
+++ b/src/wherecode.c
@@ -1324,9 +1324,7 @@ Bitmask sqlite3WhereCodeOneLoopStart(
if( omitTable ){
/* pIdx is a covering index. No need to access the main table. */
}else if( HasRowid(pIdx->pTable) ){
- if( pWInfo->eOnePass!=ONEPASS_OFF
- || (pWInfo->wctrlFlags & WHERE_SEEK_TABLE)!=0
- ){
+ if( (pWInfo->wctrlFlags & WHERE_SEEK_TABLE)!=0 ){
iRowidReg = ++pParse->nMem;
sqlite3VdbeAddOp2(v, OP_IdxRowid, iIdxCur, iRowidReg);
sqlite3ExprCacheStore(pParse, iCur, -1, iRowidReg);