diff options
author | danielk1977 <danielk1977@noemail.net> | 2007-08-13 15:28:33 +0000 |
---|---|---|
committer | danielk1977 <danielk1977@noemail.net> | 2007-08-13 15:28:33 +0000 |
commit | ea4d9e2dc8094082cc12f6a9e424e155965ebf0f (patch) | |
tree | 712edbbfa679848786b3fd912fef498396a7e5d2 /test/misc4.test | |
parent | a7fba4b05571ae7367461409c9078bdec8e0f692 (diff) | |
download | sqlite-ea4d9e2dc8094082cc12f6a9e424e155965ebf0f.tar.gz sqlite-ea4d9e2dc8094082cc12f6a9e424e155965ebf0f.zip |
Invalidate prepared SQL statements when rolling back a transaction that includes schema modifications. (CVS 4216)
FossilOrigin-Name: a07143fc0578a5fc7c891e94616ee0b353674d6e
Diffstat (limited to 'test/misc4.test')
-rw-r--r-- | test/misc4.test | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/test/misc4.test b/test/misc4.test index bf3734fa4..743d36507 100644 --- a/test/misc4.test +++ b/test/misc4.test @@ -13,7 +13,7 @@ # This file implements tests for miscellanous features that were # left out of other test files. # -# $Id: misc4.test,v 1.21 2006/01/03 00:33:50 drh Exp $ +# $Id: misc4.test,v 1.22 2007/08/13 15:28:35 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl @@ -40,6 +40,18 @@ ifcapable tempdb { ROLLBACK; } } {} + + # Because the previous transaction included a DDL statement and + # was rolled back, statement $stmt was marked as expired. Executing it + # now returns SQLITE_SCHEMA. + do_test misc4-1.2.1 { + list [sqlite3_step $stmt] [sqlite3_finalize $stmt] + } {SQLITE_ERROR SQLITE_SCHEMA} + do_test misc4-1.2.2 { + set stmt [sqlite3_prepare $DB $sql -1 TAIL] + set TAIL + } {} + do_test misc4-1.3 { sqlite3_step $stmt } SQLITE_DONE |