]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add test for WAL mode to unixexcl.test.
authordan <dan@noemail.net>
Mon, 19 Dec 2011 15:46:51 +0000 (15:46 +0000)
committerdan <dan@noemail.net>
Mon, 19 Dec 2011 15:46:51 +0000 (15:46 +0000)
FossilOrigin-Name: 4d518bd4801c31bb1e4fb0329ad057e549035237

manifest
manifest.uuid
test/unixexcl.test

index 4c700358b7cf1395febd624391243b1bd8590f48..d896acd364ccde23e858bf22224303da065992e7 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sa\scouple\sof\stest\scases\sto\saccount\sfor\sthe\smaster-journal\sname\srelated\schange\sin\s[cf3bccc2].
-D 2011-12-19T11:16:39.956
+C Add\stest\sfor\sWAL\smode\sto\sunixexcl.test.
+D 2011-12-19T15:46:51.583
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in 5b4a3e12a850b021547e43daf886b25133b44c07
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -871,7 +871,7 @@ F test/types.test bf816ce73c7dfcfe26b700c19f97ef4050d194ff
 F test/types2.test 3555aacf8ed8dc883356e59efc314707e6247a84
 F test/types3.test 99e009491a54f4dc02c06bdbc0c5eea56ae3e25a
 F test/unique.test 083c7fff74695bcc27a71d75699deba3595bc9c2
-F test/unixexcl.test 9d80a54d86d2261f660758928959368ffc36151e
+F test/unixexcl.test 892937c53d0c16e76631674e38a0fce052ae5e9c
 F test/unordered.test f53095cee37851bf30130fa1bf299a8845e837bb
 F test/update.test 8bc86fd7ef1a00014f76dc6a6a7c974df4aef172
 F test/uri.test 0d289d32396bdbc491e9dc845f1a52e13f861e0b
@@ -984,7 +984,7 @@ F tool/tostr.awk e75472c2f98dd76e06b8c9c1367f4ab07e122d06
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
 F tool/warnings-clang.sh 9f406d66e750e8ac031c63a9ef3248aaa347ef2a
 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381
-P 44ca4d123385d759c11919865525c998c2e35bdb
-R 84fa60a337903d6e9b8a452659d1b330
+P 21b76af6edd48f665cdd3af5f99d477f030c7668
+R e3e501a911a193a6cca08b5fc467fda0
 U dan
-Z ebf66ca7938806efd839391c15a281c8
+Z 8da8eb99ffcc8591296a31b08a15f7c3
index 9aef15622c41786c18b99cd4114443f74cd9c067..a8926d69a14bf103e8fb3e2eb55a53b832841680 100644 (file)
@@ -1 +1 @@
-21b76af6edd48f665cdd3af5f99d477f030c7668
\ No newline at end of file
+4d518bd4801c31bb1e4fb0329ad057e549035237
\ No newline at end of file
index 057ae0af14fe3e56dba29f4b1d2467b092f6790a..207078acdeb1998ab9f3eac7091b4f162bde16ab 100644 (file)
@@ -80,4 +80,48 @@ do_multiclient_test tn {
   } {0 {hello world}}
 }
 
+do_multiclient_test tn {
+  do_test unixexcl-3.$tn.1 {
+    code1 { db close; sqlite3 db test.db -vfs unix-excl }
+    code2 { db2 close; sqlite3 db2 test.db -vfs unix-excl }
+    sql1 {
+      PRAGMA journal_mode = WAL;
+      CREATE TABLE t1(a, b);
+      INSERT INTO t1 VALUES(1, 2);
+    }
+  } {wal}
+
+  if {$tn==1} {
+    do_test unixexcl-3.$tn.1.multiproc {
+      csql2 { SELECT * FROM t1; }
+    } {1 {database is locked}}
+  } else {
+    do_test unixexcl-3.$tn.1.singleproc {
+      sql2 { SELECT * FROM t1; }
+    } {1 2}
+
+    do_test unixexcl-3.$tn.2 {
+      sql2 { 
+        BEGIN;
+          SELECT * FROM t1;
+      }
+    } {1 2}
+    do_test unixexcl-3.$tn.3 {
+      sql1 { PRAGMA wal_checkpoint; INSERT INTO t1 VALUES(3, 4); }
+    } {0 5 5}
+    do_test unixexcl-3.$tn.4 {
+      sql2 { SELECT * FROM t1; }
+    } {1 2}
+    do_test unixexcl-3.$tn.5 {
+      sql1 { SELECT * FROM t1; }
+    } {1 2 3 4}
+    do_test unixexcl-3.$tn.6 {
+      sql2 { COMMIT; SELECT * FROM t1; }
+    } {1 2 3 4}
+    do_test unixexcl-3.$tn.7 {
+      sql1 { PRAGMA wal_checkpoint; }
+    } {0 7 7}
+  }
+}
+
 finish_test