-C Add\smany\snew\stest\scases\sto\swhere7.test.\s(CVS\s6079)
-D 2008-12-30T14:14:04
+C Still\smore\stest\scases\sin\swhere7.test.\s(CVS\s6080)
+D 2008-12-30T14:40:07
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
F Makefile.in 77635d0909c2067cee03889a1e04ce910d8fb809
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
F test/where4.test e9b9e2f2f98f00379e6031db6a6fca29bae782a2
F test/where5.test fdf66f96d29a064b63eb543e28da4dfdccd81ad2
F test/where6.test 42c4373595f4409d9c6a9987b4a60000ad664faf
-F test/where7.test 696b4849b246390541bbc7a72d6905477b6fae16
+F test/where7.test c56c34e84f2bf8d4c787cf8ee6ce8b705468b8cb
F test/where8.test 81036f3f79054309da744fcffc9ce7ed97b5b4a9
F test/where8m.test c1010d61826412ff66abd29bfb32e5d6b37d965c
F test/wherelimit.test 5e9fd41e79bb2b2d588ed999d641d9c965619b31
F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P 2df02b543edd77282aabff08327c3ab102139a24
-R aab27821bbed8dbda55db72bfa23225c
+P 174985831f9c8f5c393556d3248b01852573abc7
+R 17851a9df220a820ebc78b7af26f16ec
U drh
-Z b472d915834f5266f8a10ea615ae5e3a
+Z 43c0beeea443c43af52158e52be780a2
# This file implements regression tests for SQLite library. The
# focus of this file is testing the multi-index OR clause optimizer.
#
-# $Id: where7.test,v 1.4 2008/12/30 14:14:04 drh Exp $
+# $Id: where7.test,v 1.5 2008/12/30 14:40:07 drh Exp $
set testdir [file dirname $argv0]
source $testdir/tester.tcl
}
} {2 5 scan 0 sort 0}
do_test where7-1.12 {
-breakpoint
count_steps {
SELECT a FROM t1 WHERE (b BETWEEN 2 AND 4) OR c=100 ORDER BY a
}
} {1 2 3 5 scan 0 sort 0}
do_test where7-1.13 {
-breakpoint
count_steps {
SELECT a FROM t1 WHERE (b BETWEEN 0 AND 2) OR (c BETWEEN 9 AND 999)
ORDER BY a DESC
}
} {5 4 1 scan 0 sort 1}
+do_test where7-1.20 {
+ set sql "SELECT a FROM t1 WHERE a=11 OR b=11"
+ for {set i 12} {$i<400} {incr i} {
+ append sql " OR a=$i OR b=$i"
+ }
+ append sql " ORDER BY a"
+ count_steps $sql
+} {scan 0 sort 0}
+do_test where7-1.21 {
+ set sql "SELECT a FROM t1 WHERE b=11 OR c=11"
+ for {set i 12} {$i<400} {incr i} {
+ append sql " OR b=$i OR c=$i"
+ }
+ append sql " ORDER BY a"
+ count_steps $sql
+} {5 scan 0 sort 0}
+do_test where7-1.22 {
+ set sql "SELECT a FROM t1 WHERE (b=11 OR c=11"
+ for {set i 12} {$i<400} {incr i} {
+ append sql " OR b=$i OR c=$i"
+ }
+ append sql ") AND d>=0 AND d<9999 ORDER BY a"
+ count_steps $sql
+} {5 scan 0 sort 0}
+do_test where7-1.23 {
+ set sql "SELECT a FROM t1 WHERE (b=11 OR c=11"
+ for {set i 12} {$i<400} {incr i} {
+ append sql " OR (b=$i AND d!=0) OR (c=$i AND d IS NOT NULL)"
+ }
+ append sql ") AND d>=0 AND d<9999 ORDER BY a"
+ count_steps $sql
+} {5 scan 0 sort 0}
+
+do_test where7-1.31 {
+ set sql "SELECT a FROM t1 WHERE (a=11 AND b=11)"
+ for {set i 12} {$i<400} {incr i} {
+ append sql " OR (a=$i AND b=$i)"
+ }
+ append sql " ORDER BY a"
+ count_steps $sql
+} {scan 0 sort 0}
+do_test where7-1.32 {
+ set sql "SELECT a FROM t1 WHERE (b=11 AND c=11)"
+ for {set i 12} {$i<400} {incr i} {
+ append sql " OR (b=$i AND c=$i)"
+ }
+ append sql " ORDER BY a"
+ count_steps $sql
+} {scan 0 sort 0}
# Lots of randomly generated OR-clause processing tests.
#