diff options
author | dan <Dan Kennedy> | 2023-10-21 15:04:24 +0000 |
---|---|---|
committer | dan <Dan Kennedy> | 2023-10-21 15:04:24 +0000 |
commit | ca9dc173a2b95b4af9cc65557faaf3d2b3fa9e3d (patch) | |
tree | 274ef52681b786f3944a240c82050801b149579f /ext/session/sqlite3session.c | |
parent | 51b358e5e54b9a64d2ee9ecb2f035780e74ddb8c (diff) | |
download | sqlite-ca9dc173a2b95b4af9cc65557faaf3d2b3fa9e3d.tar.gz sqlite-ca9dc173a2b95b4af9cc65557faaf3d2b3fa9e3d.zip |
Fix a problem with SQLITE_CHANGESETAPPLY_FKNOACTION and the foreign-key-trigger-cache.
FossilOrigin-Name: 95304ec6c9654b4366dc58ae263270cb42861cb5017174936f816922b5eb61e6
Diffstat (limited to 'ext/session/sqlite3session.c')
-rw-r--r-- | ext/session/sqlite3session.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ext/session/sqlite3session.c b/ext/session/sqlite3session.c index bf3f1390d..e7459b1af 100644 --- a/ext/session/sqlite3session.c +++ b/ext/session/sqlite3session.c @@ -5326,6 +5326,7 @@ int sqlite3changeset_apply_v2( if( flags & SQLITE_CHANGESETAPPLY_FKNOACTION ){ db->flags |= ((u64)SQLITE_FkNoAction); + db->aDb[0].pSchema->schema_cookie -= 32; } if( rc==SQLITE_OK ){ @@ -5336,7 +5337,8 @@ int sqlite3changeset_apply_v2( if( (flags & SQLITE_CHANGESETAPPLY_FKNOACTION) && savedFlag==0 ){ assert( db->flags & SQLITE_FkNoAction ); - db->flags &= ((u64)SQLITE_FkNoAction); + db->flags &= ~((u64)SQLITE_FkNoAction); + db->aDb[0].pSchema->schema_cookie -= 32; } return rc; } |