diff options
author | drh <drh@noemail.net> | 2019-12-26 23:40:33 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2019-12-26 23:40:33 +0000 |
commit | fe2a3f1d241b21ce93c679b16c717a99f58c6cd7 (patch) | |
tree | 6dd5d8fdd319d73ae8c807816890ecc609bf6643 /src/upsert.c | |
parent | d3ee3ad12fd53f0db78a2c07917fb4fc310ca72a (diff) | |
download | sqlite-fe2a3f1d241b21ce93c679b16c717a99f58c6cd7.tar.gz sqlite-fe2a3f1d241b21ce93c679b16c717a99f58c6cd7.zip |
If an UPSERT can cause an Abort due to a constraint failure, make sure
the query planner knows this. Ticket [7c13db5c3bf74001].
FossilOrigin-Name: f14ce948662f3445a06d84d4f32d9b81143e0cffaf773d8aa4d3a609bfb9682b
Diffstat (limited to 'src/upsert.c')
-rw-r--r-- | src/upsert.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/upsert.c b/src/upsert.c index 5db4f5fc9..9a33f75d0 100644 --- a/src/upsert.c +++ b/src/upsert.c @@ -236,6 +236,7 @@ void sqlite3UpsertDoUpdate( VdbeCoverage(v); sqlite3VdbeAddOp4(v, OP_Halt, SQLITE_CORRUPT, OE_Abort, 0, "corrupt database", P4_STATIC); + sqlite3MayAbort(pParse); sqlite3VdbeJumpHere(v, i); } } |