diff options
author | drh <drh@noemail.net> | 2018-06-11 18:06:48 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2018-06-11 18:06:48 +0000 |
commit | ea64715976cfe3a047e5ae9d0b990faf7076e99c (patch) | |
tree | eed745e2fdec1f0a1136b6bd7a02e6c11ee4dc80 /src/insert.c | |
parent | 299bf7c2f0193e2d39dd96ad4ccbe673ae9e21be (diff) | |
download | sqlite-ea64715976cfe3a047e5ae9d0b990faf7076e99c.tar.gz sqlite-ea64715976cfe3a047e5ae9d0b990faf7076e99c.zip |
Fix the column cache invalidation logic in the code for ROWID uniqueness
constraint checking in the INSERT command. This fixes ticket
[c2432ef9089ee73bd].
FossilOrigin-Name: 0b485a571c805a5bc431a231a196ff6034342c6548d92b09c52814dd57c89c75
Diffstat (limited to 'src/insert.c')
-rw-r--r-- | src/insert.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/insert.c b/src/insert.c index 3d5164283..78b07a025 100644 --- a/src/insert.c +++ b/src/insert.c @@ -1533,6 +1533,7 @@ void sqlite3GenerateConstraintChecks( sqlite3VdbeVerifyAbortable(v, onError); sqlite3VdbeAddOp3(v, OP_NotExists, iDataCur, addrRowidOk, regNewData); VdbeCoverage(v); + sqlite3ExprCachePush(pParse); switch( onError ){ default: { @@ -1609,6 +1610,7 @@ void sqlite3GenerateConstraintChecks( break; } } + sqlite3ExprCachePop(pParse); sqlite3VdbeResolveLabel(v, addrRowidOk); if( sAddr.ipkTop ){ sAddr.ipkBtm = sqlite3VdbeAddOp0(v, OP_Goto); |