/ File History
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of test/where.test

2019-08-22
00:53
[19c709c9] part of check-in [81b9f0f5] Fix the OP_SeekGE, OP_SeekGT, OP_SeekLE, and OP_SeekLT opcodes so that they preserve the datatype of the value in the register used as the key. Ticket [d9f584e936c7a8d0] (check-in: [81b9f0f5] user: drh branch: trunk, size: 40900)
2019-08-08
15:24
[d640c16d] part of check-in [1e17ea2f] Remove support for STAT3. The sqlite_stat3 tables are ignored, if they exist. STAT4 continues to work as it always has, and as it is a superset of STAT3 is the recommended replacement. (check-in: [1e17ea2f] user: drh branch: omit-stat3, size: 39955)
2019-04-05
20:47
[0607caa5] part of check-in [cbc67de5] Add further tests so that veryquick.test covers all vdbe branches. (check-in: [cbc67de5] user: dan branch: trunk, size: 39956)
2019-02-22
21:33
[93738e22] part of check-in [0d456456] Check-in [fa792714ae62fa980] is not a valid fix for ticket [df46dfb631f75694], as the new test case in this check-in demonstrates. The fix here causes test cases for the [df46dfb631f75694] bug to fail again, so this check-in is on a branch. A new fix is needed for [df46dfb631f75694]. (check-in: [0d456456] user: drh branch: tkt-df46dfb631, size: 36965)
2018-11-05
07:53
[8215d220] part of check-in [af39661e] Disable the IS NOT NULL optimization when the IS NOT NULL operator is part of the ON clause of a LEFT JOIN. Fix for ticket [65eb38f6e46de8c75e188a17ec]. (check-in: [af39661e] user: drh branch: trunk, size: 36567)
2018-07-28
21:01
[480cfc17] part of check-in [85b9beb4] Add a small cost penalty to sorting to bias the query planner in favor of plans that do not require a final sorting pass. (check-in: [85b9beb4] user: drh branch: trunk, size: 36170)
2018-06-07
16:07
[6bfcd29d] part of check-in [085e8637] Test cases. (check-in: [085e8637] user: drh branch: multikey-opt-idea, size: 36168)
2018-04-24
18:59
[f19ea3fa] part of check-in [2aa21003] Remove a recently added NEVER() macro from a branch that can be taken in obscure circumstances. (check-in: [2aa21003] user: dan branch: trunk, size: 36168)
17:34
[b8951995] part of check-in [aeb694e3] Do not attempt to use terms from the WHERE clause to drive indexes on the right table of a LEFT JOIN. Fix for ticket [4ba5abf65c5b0f9a96a7a40cd18b] (check-in: [aeb694e3] user: drh branch: trunk, size: 35653)
16:41
[ad770ad7] part of check-in [e252c654] All the OR optimization to proceed even if the OR is also converted into an IN operator. (check-in: [e252c654] user: drh branch: trunk, size: 35230)
2016-02-26
04:04
[f0c32556] part of check-in [beda0b8c] Remove a debugging "exit" command mistakenly left in the "where.test" module. (check-in: [beda0b8c] user: drh branch: trunk, size: 34810)
2016-02-25
23:21
[c33bf57e] part of check-in [2459d323] Fix an incorrect cost computation for sorting (introduced just a few check-ins ago). Should be NlogN, not NloglogN. (check-in: [2459d323] user: drh branch: trunk, size: 34815)
2015-11-05
22:30
[9902a3d8] part of check-in [997ce6c9] Improvements and simplifications to the equality seek logic. Tests are adjusted so that they all pass now. (check-in: [997ce6c9] user: drh branch: seekeq-experiment, size: 34698)
2015-09-04
12:54
[66d4c107] part of check-in [3d3df79b] Continue to support the (broken) legacy syntax of allowing strings for column names in CREATE INDEX statements and in UNIQUE and PRIMARY KEY constraints. (check-in: [3d3df79b] user: drh branch: trunk, size: 34699)
2015-05-13
17:54
[1ff3d9f8] part of check-in [24263d08] Add testcase() macros and comments and a few test-cases. (check-in: [24263d08] user: drh branch: index-is-operator, size: 34627)
2014-02-14
23:49
[28b64e93] part of check-in [e07a32f3] Seek past NULLs in a top-constrained search. Avoid checking for NULLs in the body of the search. (check-in: [e07a32f3] user: drh branch: trunk, size: 33694)
2013-10-04
15:58
[701a633e] part of check-in [2f394de8] Fix test cases so that they work when the query planner uses index size estimates to determine whether or not to try an covering index scan. (check-in: [2f394de8] user: drh branch: index-scan-rate, size: 33694)
2013-09-03
14:03
[8d66dfbf] part of check-in [0303d6bc] Make sure the omit-noop-left-join optimization is not applied if columns of the LEFT JOIN are used in the ORDER BY clause. Ticket [be84e357c035] (check-in: [0303d6bc] user: drh branch: trunk, size: 33671)
2013-06-12
17:08
[da54153a] part of check-in [addd7f46] "make test" now passing. (check-in: [addd7f46] user: drh branch: nextgen-query-plan-exp, size: 32713)
2013-06-11
02:32
[cd13d480] part of check-in [36373b85] Fixes to EXPLAIN QUERY PLAN output. Change weights back to something closer to what they are in legacy. More test case fixes. (check-in: [36373b85] user: drh branch: nextgen-query-plan-logcost, size: 32711)
2013-05-30
19:29
[054a6b6f] part of check-in [ae985db4] Futher simplifications to the NGQP. Fix some test cases to use EXPLAIN QUERY PLAN rather than the (now obsolete) sqlite_query_plan global variable. (check-in: [ae985db4] user: drh branch: nextgen-query-plan-exp, size: 32719)
2013-02-08
18:48
[15ac8611] part of check-in [f78395c8] Loop through the elements on the RHS of an IN operator in reverse order when the ORDER BY clauses specifies DESC. (check-in: [f78395c8] user: drh branch: IN-with-ORDERBY, size: 32295)
2013-02-07
21:15
[55f6780f] part of check-in [98bf668a] Allow an index to be used for sorting even if prior terms of the index are constrained by IN operators. (check-in: [98bf668a] user: drh branch: IN-with-ORDERBY, size: 31581)
2012-12-05
19:04
[9714e6f2] part of check-in [5e961e37] Disable a couple of tests in where.test when running the "no_optimization" permutation. (check-in: [5e961e37] user: dan branch: trunk, size: 31040)
2012-10-03
12:38
[41b65069] part of check-in [0f9bb901] Fix a query planner problem that only occurs when covering-index-scan is disabled. Fix to tests whose output changed due to the new and more aggressive ORDER BY optimization. (check-in: [0f9bb901] user: drh branch: qp-enhancements, size: 30958)
2012-09-27
23:27
[a6bfb5a2] part of check-in [98b63371] Fix some corner case behavior in the new ORDER BY optimization logic. Remove the SQLITE_OrderByIdx bit from the SQLITE_TESTCTRL_OPTIMIZATIONS mask, since enabling it caused many TH3 tests to fail when the NO_OPT configuration parameter was engaged, and since there really isn't any need to turn that optimization off. The SQLITE_OrderByIdxJoin bit remains. (check-in: [98b63371] user: drh branch: qp-enhancements, size: 30954)
19:53
[ea9659ff] part of check-in [0d573320] More test cases an bug fixes for the ORDER BY optimization of joins. All veryquick tests now pass. (check-in: [0d573320] user: drh branch: qp-enhancements, size: 30954)
2012-09-15
18:45
[59cf231e] part of check-in [cfaa7bc1] Attempt to use a covering index even on a full table scan, under the theory that the index will be smaller and require less disk I/O and thus be faster. (check-in: [cfaa7bc1] user: drh branch: fullscan-covering-index, size: 30926)
2012-04-20
15:24
[4c9f6998] part of check-in [9870e4c4] Fix for [2a5629202f]. When considering whether or not a UNIQUE index may be used to optimize an ORDER BY clause, do not assume that all index entries are distinct unless there is some reason to believe that the index contains no NULL values. (check-in: [9870e4c4] user: dan branch: trunk, size: 30926)
2008-11-03
09:06
[de337a3f] part of check-in [6c918c4e] Fix a bug reported on the mailing list triggered by the pattern "SELECT , (SELECT ... FROM tbl WHERE rowid > ) FROM ...". (CVS 5855) (check-in: [6c918c4e] user: danielk1977 branch: trunk, size: 30780)
2008-10-07
23:46
[12396f15] part of check-in [de473efb] Add the experimental sqlite3_stmt_status() interface. (CVS 5781) (check-in: [de473efb] user: drh branch: trunk, size: 29799)
2008-10-01
08:43
[7dcfe573] part of check-in [59d2e89e] Fix a bug in where.c where a non-temp register was being incorrectly deallocated. Ticket #3408. (CVS 5758) (check-in: [59d2e89e] user: danielk1977 branch: trunk, size: 29565)
2008-09-01
15:52
[ea8e56f3] part of check-in [d04d7033] Defer deleting Table objects associated with flattened subqueries until all code has been generated, in case some expression node still references the Table object. Ticket #3346. (CVS 5650) (check-in: [d04d7033] user: drh branch: trunk, size: 28323)
2008-07-15
00:27
[4f1b9a40] part of check-in [7cf91e08] Increased test coverage. (CVS 5414) (check-in: [7cf91e08] user: drh branch: trunk, size: 28325)
2008-07-12
14:52
[a2b6b45a] part of check-in [dcb16024] Remove leftover debugging commands (breakpoint and btree_breakpoint) from test scripts. (CVS 5400) (check-in: [dcb16024] user: drh branch: trunk, size: 28242)
2007-11-29
17:43
[5ff4a1bd] part of check-in [061608c7] When using an index to scan a database table, read column data from the index in preference to the table. This increases the likelihood that the table will not be required at all. (CVS 4580) (check-in: [061608c7] user: danielk1977 branch: trunk, size: 28267)
2007-06-25
16:29
[1bcde898] part of check-in [044ca1c7] Fix for #2445. A bug in the lookupName() logic that could cause a crash when a WHERE clause used an alias to refer to an expression in the result-set of the SELECT, and that expression was itself a reference to a table column. (CVS 4122) (check-in: [044ca1c7] user: danielk1977 branch: trunk, size: 28265)
2007-05-14
11:34
[5c342d6a] part of check-in [5627ff74] Remove terms with operator TK_AS from the expression tree. Ticket #2356. (CVS 3991) (check-in: [5627ff74] user: drh branch: trunk, size: 27868)
2007-02-06
23:41
[1d020f50] part of check-in [ecb1f2fd] Additional tests to give full coverage testing to ticket #2211. (CVS 3630) (check-in: [ecb1f2fd] user: drh branch: trunk, size: 27346)
13:26
[1c28457a] part of check-in [912faf18] When optimizing out an ORDER BY clause due to uniqueness constraints, make sure unused terms to the right in the ORDER BY clause to not reference other tables in a join. Ticket #2211. Additional test cases needed before closing this ticket. (CVS 3629) (check-in: [912faf18] user: drh branch: trunk, size: 27070)
2006-12-20
03:24
[8dcc1b1a] part of check-in [f245f5c2] The query optimizer does a better job of optimizing out ORDER BY clauses that contain the rowid or which use indices that contain the rowid. Ticket #2116. (CVS 3536) (check-in: [f245f5c2] user: drh branch: trunk, size: 25168)
2005-11-14
22:29
[ee7c9a66] part of check-in [ce06c123] Create separate affinities for INTEGER and REAL. (CVS 2766) (check-in: [ce06c123] user: drh branch: trunk, size: 22327)
2005-10-06
16:53
[75272841] part of check-in [edca8913] More efficient handling of the LIMIT clause. Scalar subqueries and EXISTS on compound SELECT statements now working properly. Ticket #1473. (CVS 2747) (check-in: [edca8913] user: drh branch: trunk, size: 22344)
2005-09-08
10:37
[ce21f491] part of check-in [21adf4bd] The SUM() aggregate function returns an integer result if all inputs are integers. Any single non-integer input causes the result to be a floating point value. (CVS 2669) (check-in: [21adf4bd] user: drh branch: trunk, size: 22344)
2005-09-01
17:47
[1e9b990d] part of check-in [efbb4bc8] Fix over-aggressive optimization of ORDER BY as reported on the mailing list. (CVS 2655) (check-in: [efbb4bc8] user: drh branch: trunk, size: 22350)
12:16
[9a5d0aaf] part of check-in [81259a01] All regression tests now pass with the new bounded-memory sort code. There is still lots of opportunity for optimization, however. (CVS 2654) (check-in: [81259a01] user: drh branch: trunk, size: 22368)
2005-08-24
03:52
[8fcdf3e7] part of check-in [9f9a2571] After calling realloc() on an array to resize it, be sure not to use pointers into the old array. Ticket #1376. (CVS 2617) (check-in: [9f9a2571] user: drh branch: trunk, size: 22368)
2005-07-28
16:51
[b6ab0f64] part of check-in [a2121284] The new optimizer now passes all regression tests. (CVS 2566) (check-in: [a2121284] user: drh branch: trunk, size: 20481)
2005-07-21
03:48
[996cd12c] part of check-in [ef3a157f] Add comments to test cases. Improvements to the query plan test variable. (CVS 2555) (check-in: [ef3a157f] user: drh branch: trunk, size: 20349)
2005-07-15
23:24
[2d6e6ebe] part of check-in [578490c9] Fix bugs in the new query plan instrumention logic. (CVS 2549) (check-in: [578490c9] user: drh branch: trunk, size: 20350)
2005-06-06
17:27
[9de2426d] part of check-in [0f7af623] Any non-zero value is considered TRUE in a WHERE clause. Ticket #1211. (CVS 2496) (check-in: [0f7af623] user: drh branch: trunk, size: 20012)
2005-01-21
03:12
[ffb790df] part of check-in [bb0254ab] Modify test scripts to work when SQLITE_OMIT_SUBQUERY (along with other OMIT macros) is defined. (CVS 2251) (check-in: [bb0254ab] user: danielk1977 branch: trunk, size: 19888)
2005-01-11
18:13
[0d7c9dad] part of check-in [1bee1bb9] Fix for ticket #1062: Correctly handle redundant terms in a WHERE clause. (CVS 2198) (check-in: [1bee1bb9] user: drh branch: trunk, size: 19416)
2004-12-19
00:11
[cbe22fb2] part of check-in [e5aa4894] The optimizer now uses only the index and ignores the table if it can get away with doing so, thus saving a single BTree search per row of result. This could potentially double the speed of certain queries. The code passes all regression tests but new tests to exercise the new functionality are yet to be added. (CVS 2170) (check-in: [e5aa4894] user: drh branch: trunk, size: 18759)
2004-12-18
18:40
[e092b5c2] part of check-in [9b86993f] Improvements to the query optimizer. This is a work in progress. (CVS 2169) (check-in: [9b86993f] user: drh branch: trunk, size: 18758)
2004-11-22
19:12
[6914a446] part of check-in [fc8c1393] Add initial infrastructure for cursors. In where.c, optimize out clauses of the form "ORDER BY rowid" if a table scan is being performed. Do a reverse table scan if "ORDER BY rowid DESC" is present. (CVS 2141) (check-in: [fc8c1393] user: drh branch: trunk, size: 18756)
2004-11-03
16:27
[8a016d44] part of check-in [b11fc9b3] Update tests to work even if some features of the library are disabled. (CVS 2050) (check-in: [b11fc9b3] user: drh branch: trunk, size: 17305)
2004-08-20
18:34
[40dcffcb] part of check-in [e97c3313] Tcl interface transfers values directly between SQLite and Tcl_Objs, without at translation to strings. (CVS 1898) (check-in: [e97c3313] user: drh branch: trunk, size: 17523)
2004-05-21
03:01
[9c5752b8] part of check-in [25643a01] Eliminate the OP_SortMakeRec and OP_SortCallback opcodes. Sort using the standard record format. (CVS 1426) (check-in: [25643a01] user: drh branch: trunk, size: 17517)
02:14
[c69c5080] part of check-in [3b55095e] Most sorting problems are fixed. Dead code has been removed. 3 test failures remain but will be fixed by the new function API once it gets implemented. (CVS 1425) (check-in: [3b55095e] user: drh branch: trunk, size: 17525)
2004-05-19
14:56
[32135ef3] part of check-in [8f249c45] Change opcode names and comments to better describe the operation of the incrKey flag. OP_MoveTo becomes OP_MoveGe. (CVS 1407) (check-in: [8f249c45] user: drh branch: trunk, size: 17476)
13:13
[45a816fc] part of check-in [7c31e257] Bug fixes in where.c. The where.test test works again. (CVS 1406) (check-in: [7c31e257] user: drh branch: trunk, size: 17475)
2003-06-15
23:42
[cb3a2ed0] part of check-in [c9734c27] Enhance the "PRAGMA integrity_check" command to verify that all indices are correctly constructed. New calls to integrity_check are made in the test suite. These changes are intended to prevent any future problems such as seen in ticket #334. (CVS 1024) (check-in: [c9734c27] user: drh branch: trunk, size: 17475)
2003-04-19
17:27
[d719129a] part of check-in [767f1af2] Modify the optimizer so that it does not assume that functions are constant. (CVS 920) (check-in: [767f1af2] user: drh branch: trunk, size: 17446)
16:34
[94adbfe5] part of check-in [9b619c98] Bug in WHERE clause processing fixed. Ticket #298. (CVS 919) (check-in: [9b619c98] user: drh branch: trunk, size: 16954)
2003-04-17
12:44
[c473910a] part of check-in [98ef6110] Make sure the min() and max() optimizations work on empty indexed tables. Ticket #296. (CVS 914) (check-in: [98ef6110] user: drh branch: trunk, size: 16878)
2002-12-04
22:29
[ffaa9161] part of check-in [0051c87d] Fix a bug in the reverse scan logic that comes up when the table being scanned is empty. Add additional tests for the reverse scan. (CVS 797) (check-in: [0051c87d] user: drh branch: trunk, size: 16539)
21:50
[9e6e7e0a] part of check-in [bfb9a2aa] Fixes to the logic that decides if the ORDER BY can be ignored due to the use of an index. Tests updated. (CVS 796) (check-in: [bfb9a2aa] user: drh branch: trunk, size: 14509)
2002-10-22
23:38
[9c1c2c13] part of check-in [3b68aa25] Correctly handle column names and string constants in parentheses. Fix for ticket #179. (CVS 770) (check-in: [3b68aa25] user: drh branch: trunk, size: 11692)
2002-08-14
03:03
[c7aba40a] part of check-in [2438da79] Disable sorting by indices if there is a COLLATE subclause in the ORDER BY clause. (CVS 713) (check-in: [2438da79] user: drh branch: trunk, size: 11368)
2002-06-19
14:27
[1f87bec6] part of check-in [f09e19b4] The query optimizer now attempts to satisfy an ORDER BY clause using an index. Sorting is still used if there are no suitable indices. (CVS 628) (check-in: [f09e19b4] user: drh branch: trunk, size: 11051)
2002-06-14
22:38
[367d7911] part of check-in [699cf362] Make the LIMIT clause work even if the destination of the SELECT is something other than a callback. (Ticket #66) (CVS 619) (check-in: [699cf362] user: drh branch: trunk, size: 8395)
2002-06-09
01:55
[fe33c2f9] part of check-in [2a710e18] Added tests for the new IN operator optimizer and fixed a bug that the new tests found. This completes the implementation of enhancement #63. (CVS 612) (check-in: [2a710e18] user: drh branch: trunk, size: 8395)
2002-04-30
19:20
[1d85a7eb] part of check-in [24e4cf73] Fix for ticket #31: Do not attempt the flattening optimization if the subselect does not contain a FROM clause. Handle the special case where a WHERE clause is constant. (CVS 548) (check-in: [24e4cf73] user: drh branch: trunk, size: 6514)
2001-12-22
14:49
[032d581c] part of check-in [29cab124] Bug fixing in the new integer primary key code. (CVS 334) (check-in: [29cab124] user: drh branch: trunk, size: 6153)
2001-11-08
00:45
[20b19475] part of check-in [262bcd17] The new code for taking advantage of inequalities in WHERE clauses is in place. It appears to work. (CVS 305) (check-in: [262bcd17] user: drh branch: trunk, size: 6142)
2001-09-16
00:13
[43d5ac94] part of check-in [4e926efe] Disclaimed copyright. Preparing for release 2.0. (CVS 250) (check-in: [4e926efe] user: drh branch: trunk, size: 4085)
2001-08-19
18:19
[75595782] part of check-in [c15f6ffc] Add index access methods to the DBBE in preparation for adding a new DBBE for the btree.c module. (CVS 236) (check-in: [c15f6ffc] user: drh branch: trunk, size: 4628)
2000-06-12
12:20
[bbab5a30] part of check-in [3c0540e6] :-) (CVS 93) (check-in: [3c0540e6] user: drh branch: trunk, size: 4628) Added