Fix a couple of test scripts to match the new wal recovery behaviour on this branch.

FossilOrigin-Name: 3af61e83532f76f0f3252a28663415d37b096ddf05a9c58fa79303933c09abce
This commit is contained in:
dan 2020-07-27 15:05:20 +00:00
parent 8caebb26c5
commit cddfc3922c
4 changed files with 50 additions and 24 deletions

View File

@ -1,5 +1,5 @@
C Improved\serror\sreporting\sif\swalLockExclusive()\sfails.
D 2020-07-27T15:01:10.732
C Fix\sa\scouple\sof\stest\sscripts\sto\smatch\sthe\snew\swal\srecovery\sbehaviour\son\sthis\sbranch.
D 2020-07-27T15:05:20.842
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@ -1673,7 +1673,7 @@ F test/vtab_err.test dcc8b7b9cb67522b3fe7a272c73856829dae4ab7fdb30399aea1b6981bd
F test/vtab_shared.test 5253bff2355a9a3f014c15337da7e177ab0ef8ad
F test/vtabdrop.test 65d4cf6722972e5499bdaf0c0d70ee3b8133944a4e4bc31862563f32a7edca12
F test/wal.test 16180bc4becda176428ad02eaea437b4b8f5ae099314de443a4e12b2dcc007a2
F test/wal2.test 537f59e5c5932e3b45bf3591ae3e48a2601360c2e52821b633e222fe6ebd5b09
F test/wal2.test 31f6e2c404b9f2cdf9ca19b105a1742fdc19653c2c936da39e3658c617524046
F test/wal3.test 2a93004bc0fb2b5c29888964024695bade278ab2
F test/wal4.test 4744e155cd6299c6bd99d3eab1c82f77db9cdb3c
F test/wal5.test 9c11da7aeccd83a46d79a556ad11a18d3cb15aa9
@ -1698,7 +1698,7 @@ F test/walmode.test cd6e7cff618eaaa5910ce57c3657aa50110397f86213886a2400afb9bfec
F test/walnoshm.test 84ca10c544632a756467336b7c3b864d493ee496
F test/waloverwrite.test dad2f26567f1b45174e54fbf9a8dc1cb876a7f03
F test/walpersist.test 8c6b7e3ec1ba91b5e4dc4e0921d6d3f87cd356a6
F test/walprotocol.test a112aba0b79e3adeaa485fed09484b32c654e97df58e454aa8489ac2cd57bf84
F test/walprotocol.test 1b3f922125e341703f6e946d77fdc564d38fb3e07a9385cfdc6c99cac1ecf878
F test/walprotocol2.test 7d3b6b4bf0b12f8007121b1e6ef714bc99101fb3b48e46371df1db868eebc131
F test/walro.test cb438d05ba0d191f10b688e39c4f0cd5b71569a1d1f4440e5bdf3c6880e08c20
F test/walro2.test 0e79dd15cbdb4f482c01ea248373669c732414a726b357d04846a816afafb768
@ -1878,7 +1878,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
P 74374aebf9abf3d6b6a3920967a079ceaa4c6276dc6c177682742c2be405b7b7
R ad70c7dd934fbc2e01f89cff69e39467
U drh
Z 0c4694f1a9773fd8d0ef5779e92d6e66
P cf962d213abe1b55ebbcfecf1de9d5d61709509d1ce3cbd56d8cf4c9ad65e5a9
R ebe6827bc20f72ccd734ec811c796054
U dan
Z 36a51a01bccca5b769bdcaf4fbb60dd7

View File

@ -1 +1 @@
cf962d213abe1b55ebbcfecf1de9d5d61709509d1ce3cbd56d8cf4c9ad65e5a9
3af61e83532f76f0f3252a28663415d37b096ddf05a9c58fa79303933c09abce

View File

@ -122,8 +122,12 @@ do_test wal2-1.1 {
} {4 10}
set RECOVER [list \
{0 1 lock exclusive} {1 2 lock exclusive} {4 4 lock exclusive} \
{1 2 unlock exclusive} {4 4 unlock exclusive} {0 1 unlock exclusive} \
{0 1 lock exclusive} {1 2 lock exclusive} \
{4 1 lock exclusive} {4 1 unlock exclusive} \
{5 1 lock exclusive} {5 1 unlock exclusive} \
{6 1 lock exclusive} {6 1 unlock exclusive} \
{7 1 lock exclusive} {7 1 unlock exclusive} \
{1 2 unlock exclusive} {0 1 unlock exclusive} \
]
set READ [list \
{4 1 lock shared} {4 1 unlock shared} \
@ -394,9 +398,17 @@ set expected_locks [list]
lappend expected_locks {1 1 lock exclusive} ;# Lock checkpoint
lappend expected_locks {0 1 lock exclusive} ;# Lock writer
lappend expected_locks {2 1 lock exclusive} ;# Lock recovery
lappend expected_locks {4 4 lock exclusive} ;# Lock all aReadMark[]
# lappend expected_locks {4 4 lock exclusive} ;# Lock all aReadMark[]
lappend expected_locks {4 1 lock exclusive} ;# Lock aReadMark[1]
lappend expected_locks {4 1 unlock exclusive} ;# Unlock aReadMark[1]
lappend expected_locks {5 1 lock exclusive}
lappend expected_locks {5 1 unlock exclusive}
lappend expected_locks {6 1 lock exclusive}
lappend expected_locks {6 1 unlock exclusive}
lappend expected_locks {7 1 lock exclusive}
lappend expected_locks {7 1 unlock exclusive}
lappend expected_locks {2 1 unlock exclusive} ;# Unlock recovery
lappend expected_locks {4 4 unlock exclusive} ;# Unlock all aReadMark[]
# lappend expected_locks {4 4 unlock exclusive} ;# Unlock all aReadMark[]
lappend expected_locks {0 1 unlock exclusive} ;# Unlock writer
lappend expected_locks {3 1 lock exclusive} ;# Lock aReadMark[0]
lappend expected_locks {3 1 unlock exclusive} ;# Unlock aReadMark[0]
@ -625,8 +637,12 @@ do_test wal2-6.4.1 {
} {}
set RECOVERY {
{0 1 lock exclusive} {1 2 lock exclusive} {4 4 lock exclusive}
{1 2 unlock exclusive} {4 4 unlock exclusive} {0 1 unlock exclusive}
{0 1 lock exclusive} {1 2 lock exclusive}
{4 1 lock exclusive} {4 1 unlock exclusive}
{5 1 lock exclusive} {5 1 unlock exclusive}
{6 1 lock exclusive} {6 1 unlock exclusive}
{7 1 lock exclusive} {7 1 unlock exclusive}
{1 2 unlock exclusive} {0 1 unlock exclusive}
}
set READMARK0_READ {
{3 1 lock shared} {3 1 unlock shared}

View File

@ -52,18 +52,28 @@ do_test 1.1 {
set ::locks [list]
sqlite3 db test.db -vfs T
execsql { SELECT * FROM x }
lrange $::locks 0 5
} [list {0 1 lock exclusive} {1 2 lock exclusive} {4 4 lock exclusive} \
{1 2 unlock exclusive} {4 4 unlock exclusive} {0 1 unlock exclusive} \
lrange $::locks 0 11
} [list {0 1 lock exclusive} {1 2 lock exclusive} \
{4 1 lock exclusive} {4 1 unlock exclusive} \
{5 1 lock exclusive} {5 1 unlock exclusive} \
{6 1 lock exclusive} {6 1 unlock exclusive} \
{7 1 lock exclusive} {7 1 unlock exclusive} \
{1 2 unlock exclusive} \
{0 1 unlock exclusive} \
]
do_test 1.2 {
db close
set ::locks [list]
sqlite3 db test.db -vfs T
execsql { SELECT * FROM x }
lrange $::locks 0 5
} [list {0 1 lock exclusive} {1 2 lock exclusive} {4 4 lock exclusive} \
{1 2 unlock exclusive} {4 4 unlock exclusive} {0 1 unlock exclusive} \
lrange $::locks 0 11
} [list {0 1 lock exclusive} {1 2 lock exclusive} \
{4 1 lock exclusive} {4 1 unlock exclusive} \
{5 1 lock exclusive} {5 1 unlock exclusive} \
{6 1 lock exclusive} {6 1 unlock exclusive} \
{7 1 lock exclusive} {7 1 unlock exclusive} \
{1 2 unlock exclusive} \
{0 1 unlock exclusive} \
]
proc lock_callback {method filename handle lock} {
if {$lock == "1 2 lock exclusive"} { return SQLITE_BUSY }
@ -101,7 +111,7 @@ do_test 1.5 {
set ::locks [list]
sqlite3 db test.db -vfs T
catchsql { SELECT * FROM x }
} {1 {locking protocol}}
} {0 z}
db close
T delete
@ -160,7 +170,7 @@ do_test 2.5 {
} {Tehran Qom Markazi Qazvin Gilan Ardabil}
do_test 2.6 {
set ::r
} {1 {locking protocol}}
} {0 {Tehran Qom Markazi Qazvin Gilan Ardabil}}
db close
db2 close
@ -182,7 +192,7 @@ do_test 2.7 {
} {Tehran Qom Markazi Qazvin Gilan Ardabil}
do_test 2.8 {
set ::r
} {1 {locking protocol}}
} {0 {Tehran Qom Markazi Qazvin Gilan Ardabil}}
db close
db2 close