aboutsummaryrefslogtreecommitdiff
path: root/src/fkey.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2009-10-12 22:30:49 +0000
committerdrh <drh@noemail.net>2009-10-12 22:30:49 +0000
commit4c4298392e109ca67a25626f50f87715356b67b6 (patch)
tree6ec78f5710d3e9a2e00e27b52dfafa7d1e601095 /src/fkey.c
parent9a616f56076022ea8a900e402355b1b6d11786ba (diff)
downloadsqlite-4c4298392e109ca67a25626f50f87715356b67b6.tar.gz
sqlite-4c4298392e109ca67a25626f50f87715356b67b6.zip
Add asserts as evidence that all FK constraints are either immediate or
deferred. FossilOrigin-Name: 634ef4fc9f4051245b38f558bb1c733031548c2f
Diffstat (limited to 'src/fkey.c')
-rw-r--r--src/fkey.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/fkey.c b/src/fkey.c
index 55d0a4f92..8af7ea924 100644
--- a/src/fkey.c
+++ b/src/fkey.c
@@ -1178,7 +1178,11 @@ void sqlite3FkDelete(Table *pTab){
fkTriggerDelete(pTab->dbMem, pFKey->apTrigger[1]);
#endif
- /* Delete the memory allocated for the FK structure. */
+ /* EV: R-30323-21917 Each foreign key constraint in SQLite is
+ ** classified as either immediate or deferred.
+ */
+ assert( pFKey->isDeferred==0 || pFKey->isDeferred==1 );
+
pNext = pFKey->pNextFrom;
sqlite3DbFree(pTab->dbMem, pFKey);
}