Update a couple of test cases to account for the fact that ROLLBACK does not always abort all running SELECT statements.

FossilOrigin-Name: abccda769a3f6b755c3bf70b5fb31a5e16718ef3
This commit is contained in:
drh 2014-11-18 20:16:27 +00:00
parent 2b8669a9da
commit 58f95c43ad
4 changed files with 24 additions and 11 deletions

View File

@ -1,5 +1,5 @@
C Avoid\scalling\ssqlite3BtreeKeysize()\son\sa\sb-tree\scursor\sin\sSKIPNEXT\sor\sSKIPPREV\sstate.
D 2014-11-17T19:42:48.262
C Update\sa\scouple\sof\stest\scases\sto\saccount\sfor\sthe\sfact\sthat\sROLLBACK\sdoes\snot\salways\sabort\sall\srunning\sSELECT\sstatements.
D 2014-11-18T20:16:27.742
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
F Makefile.in a226317fdf3f4c895fb3cfedc355b4d0868ce1fb
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@ -659,7 +659,7 @@ F test/interrupt.test dfe9a67a94b0b2d8f70545ba1a6cca10780d71cc
F test/intpkey.test 7506090fc08e028712a8bf47e5f54111947e3844
F test/io.test 3a7abcef18727cc0f2399e04b0e8903eccae50f8
F test/ioerr.test 2a24bd6ed5a8b062e64bfe1f6cf94fb25e92210d
F test/ioerr2.test 9d71166f8466eda510f1af6137bdabaa82b5408d
F test/ioerr2.test 2593563599e2cc6b6b4fcf5878b177bdd5d8df26
F test/ioerr3.test d3cec5e1a11ad6d27527d0d38573fbff14c71bdd
F test/ioerr4.test f130fe9e71008577b342b8874d52984bd04ede2c
F test/ioerr5.test 2edfa4fb0f896f733071303b42224df8bedd9da4
@ -844,7 +844,7 @@ F test/shared7.test a81e99f83e6c51b02ac99c96fb3a2a7b5978c956
F test/shared8.test 00a07bf5e1337ecf72e94542bdefdc330d7a2538
F test/shared9.test 5f2a8f79b4d6c7d107a01ffa1ed05ae7e6333e21
F test/sharedA.test 0cdf1a76dfa00e6beee66af5b534b1e8df2720f5
F test/shared_err.test 0079c05c97d88cfa03989b7c20a8b266983087aa
F test/shared_err.test 2f2aee20db294b9924e81f6ccbe60f19e21e8506
F test/sharedlock.test 5ede3c37439067c43b0198f580fd374ebf15d304
F test/shell1.test d60946b5fde4d85fe06db7331dfe89011f564350
F test/shell2.test c57da3a381c099b02c813ba156298d5c2f5c93a3
@ -1221,7 +1221,8 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
P 55e453aadbb676dda07f0fa537d39ce184ef636c
R 6cd25f6196e6f786753b0fb88328cee1
U dan
Z f594bfe54166ed1c0f3ae7a5a057ba04
P 54e7d3fcb1ab21c03ffef1af93ae029a2901098a
Q +eba171e980fa4491dfee9d7e4df50c87a0ebbf87
R 07c45ea3d962860999af22ae8c2af8c8
U drh
Z f4bad3f3683413628206e5a23517cfd8

View File

@ -1 +1 @@
54e7d3fcb1ab21c03ffef1af93ae029a2901098a
abccda769a3f6b755c3bf70b5fb31a5e16718ef3

View File

@ -112,6 +112,12 @@ foreach bPersist [list 0 1] {
}
}
# When this test was written, an IO error within the UPDATE statement caused
# a rollback, which tripped all read-cursors, causing the outer SELECT to
# fail with "abort due to ROLLBACK". Now, the loop continues until the UPDATE
# is run successfully. At this point the next IO error occurs within the
# SELECT - throwing the "disk I/O error" that the test case now expects.
#
do_test ioerr2-5 {
execsql {
CREATE TABLE t2 AS SELECT * FROM t1;
@ -130,7 +136,7 @@ do_test ioerr2-5 {
}
} msg]
list $rc $msg
} {1 {abort due to ROLLBACK}}
} {1 {disk I/O error}} ;# used to be "{1 {abort due to ROLLBACK}}"
if {$::tcl_platform(platform) == "unix"} {
# Cause the call to xAccess used by [pragma temp_store_directory] to

View File

@ -446,9 +446,15 @@ do_malloc_test shared_err-8 -tclprep {
} {1}
db2 close
}
# When this test case was written, OOM errors in write statements would
# cause transaction rollback, which would trip cursors in other statements,
# aborting them. This no longer happens.
#
do_test shared_malloc-8.X {
# Test that one or more queries were aborted due to the malloc() failure.
expr $::aborted>=1
# expr $::aborted>=1
expr $::aborted==0
} {1}
# This test is designed to catch a specific bug that was present during