Commit Graph

4009 Commits

Author SHA1 Message Date
drh
afcd522af8 More lenient handling of ORDER BY optimization in joins with mixed ASC/DESC.
This is a better and less restrictive fix for the problem addressed by
the previous check-in.

FossilOrigin-Name: abcf6a5d054559ee5a093ba39180c47b4958d9cd
2012-10-02 15:19:19 +00:00
drh
178eb61c6b Only continue an ORDER BY optimization into inner loops if the equality
constraints on the inner loop match terms of an outer ordered index that
are actually used by the ORDER BY clause.

FossilOrigin-Name: b0e7b4df6c2a8c479f8d210bde50c737eaa248f0
2012-10-02 14:11:29 +00:00
drh
60441af4f2 Improved ORDER BY optimization when outer loops of a join return a single row.
FossilOrigin-Name: 62225b4a4c4bfe1820ef54cb202edf2cd866429f
2012-09-29 19:10:29 +00:00
drh
befda46598 Disable the bigfile tests on Macs.
FossilOrigin-Name: d869eddaf208c4bf03f6bd1848f510392f9dba49
2012-09-29 15:45:12 +00:00
drh
f784c1ede9 Query planner enhancements to be more agressive about optimizing out ORDER BY
clauses - in particular the query planner now has the ability to omit ORDER BY
clauses that span multiple tables in a join.

FossilOrigin-Name: 1e874629d7cf568368b912b295bd3001147d0b52
2012-09-28 00:44:28 +00:00
drh
a9e3fc05f5 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.

FossilOrigin-Name: 98b633717a1c9a08f6a1d00bc6bc891564ae7e9b
2012-09-27 23:27:23 +00:00
drh
5343b2d4a8 More test cases an bug fixes for the ORDER BY optimization of joins. All
veryquick tests now pass.

FossilOrigin-Name: 0d573320057b0903a5589cabfb1b1ece1c57958e
2012-09-27 19:53:38 +00:00
drh
6b10a6a7ed Test cases and bug fixes applied to the ORDER BY optimization for joins.
Some test cases fail, but except for the new orderby1.test failures, all
failures appear to be issues with the tests, not with the core code.

FossilOrigin-Name: 75cda864ededb6dc0f84bd52ed3311753a58e351
2012-09-27 17:31:32 +00:00
drh
cec320fb0e Merge the "PRAGMA busy_timeout" change into trunk.
FossilOrigin-Name: 1a679a1ef3b4f2d898c8cd83432d2b4c12bd93fa
2012-09-27 12:11:25 +00:00
drh
078b1fda34 Command-line shell enhancements: Added the ".print" command. Enhanced
the ".width" command so that negative widths will right-justify.

FossilOrigin-Name: a1d8269da3868e41a6603c1a683e324fe21fb317
2012-09-21 13:40:02 +00:00
drh
053a128f55 Tighter VDBE code for the WHERE_DISTINCT_ORDERED case of DISTINCT keyword
handling.

FossilOrigin-Name: 94b48064db3cbb43e911fdf7183218b08146ec10
2012-09-19 21:15:46 +00:00
drh
c35dfbb677 Merge the covering-index-scan optimization into trunk.
FossilOrigin-Name: ddd5d789e7ae4a66cd7b7fa79e48d2777f95350b
2012-09-19 00:35:31 +00:00
drh
dbaee5e342 Enhance IN processing to allow efficient use of indices with numeric affinities.
Add test cases for IN processing that would have spotted the error in the
[2be661a48023f4] check-in.

FossilOrigin-Name: 5ded9b68388f4024425c11f09b03529ac89454ce
2012-09-18 19:29:06 +00:00
drh
de9a7b8a94 Add the ability to disable the covering-index-scan optimization at compile-time,
start-time, or at run-time.  Add test cases to check this configurability.

FossilOrigin-Name: ccb8ecc30c8e6c7760131250297c2e452bbac43b
2012-09-17 20:44:46 +00:00
drh
3f4d1d1b02 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.

FossilOrigin-Name: cfaa7bc12847a7006ccc93815f2395ad5259744a
2012-09-15 18:45:54 +00:00
mistachkin
66498ae871 Fix WAL capability checking in one of the test files.
FossilOrigin-Name: 0ebe7cc57408d6d85910cc976fb8af4436d6e594
2012-09-13 16:12:20 +00:00
mistachkin
c60941f814 Allow SQLite to work on Win32 with SQLITE_OS_WINNT=0 as long as WAL is disabled.
FossilOrigin-Name: c1a8557008e56aa9bcb4565e4178fc57295c563d
2012-09-13 01:51:02 +00:00
mistachkin
1c9ee26837 Correct two duplicated test names.
FossilOrigin-Name: ced49974a969f11e5ebe2280bd7eec20b059e501
2012-09-10 23:44:12 +00:00
mistachkin
50610df8ae Correct two test names to make them unique.
FossilOrigin-Name: 43e474d3e9364e6ed417db06e98faa3e5bc2eb26
2012-09-07 20:10:30 +00:00
drh
f360396c47 Add an experimental busy_timeout pragma to facilitate access to the
sqlite3_busy_timeout() interfaces for programmers that are working from
behind a language wrapper that does not expose that interface.

FossilOrigin-Name: 22ebc668516bc3dd5782d6d3d42dc7fd2eed7d79
2012-09-07 16:46:59 +00:00
drh
e0d058c6d8 In the spellfix phonehash() function, add letter W into the same character
class as V.

FossilOrigin-Name: 7536101317c00fbb5bf555120feb55b9bc40e8ba
2012-08-31 14:55:05 +00:00
drh
373cfbc760 Exclude the atof1.test test script from the valgrind permutations test since
valgrind sets up the floating point hardware in an unusual way that makes
atof1 fail.

FossilOrigin-Name: d3cf6832a59fe4c5723761abb4c89614406b03db
2012-08-30 20:24:39 +00:00
dan
67c70142d9 Fix a case where SQLite was failing to detect a syntax error in queries like "SELECT ... FROM (<select-1> UNION ALL <select-2>)" when <select-1> and <select-2> return different numbers of result columns.
FossilOrigin-Name: 200a81358c3117401d2258dd06bb8d2ea4f0ef51
2012-08-28 14:45:50 +00:00
mistachkin
d5578433ff Fix all known instances of 'repeated the' style typos in comments. No changes to code.
FossilOrigin-Name: 9b19b847533f944f289d93dcdba29c0d67bf251c
2012-08-25 10:01:29 +00:00
dan
606bb3a54e Another test for whereD.test.
FossilOrigin-Name: 29d586178dcfdb99eaf7ce768668ab0aa9898c83
2012-08-24 19:58:18 +00:00
dan
899339154e Add extra tests to whereD.test.
FossilOrigin-Name: 7e961eef6b7260dd8deb8b3812218a874c382885
2012-08-24 19:52:25 +00:00
drh
8fea5f3b97 More test cases for OR-optimization covering indices.
FossilOrigin-Name: e5c3190c27b69dc50f348c849a81b79031b2fb67
2012-08-24 17:52:54 +00:00
drh
2797c21639 Additional test cases for OR-optimization with covering indices, including
one test case that currently fails.

FossilOrigin-Name: d8b7ab37120ac20e60b6a600cd0e5b34a09cf97a
2012-08-24 15:29:03 +00:00
dan
bfca6a4066 Experimental change to support the covering index optimization for queries with OR terms in the WHERE clause that search a single index more than once.
FossilOrigin-Name: 1dc8c7c741a82bb98a07f3fdb8142d8bc8d8a98b
2012-08-24 10:52:35 +00:00
drh
ed551b95a4 Add test cases and fix bugs associated with the previous check-in
enhancements to nested aggregate subquery processing.

FossilOrigin-Name: 00b1dc71be4c3420730b5f7840af824ea86165e7
2012-08-23 19:46:11 +00:00
drh
030796df8d Further improvements to the processing of nested aggregate queries.
FossilOrigin-Name: 3c3ffa901f5ce8a523028ff15563ce3e0f55a641
2012-08-23 16:18:10 +00:00
dan
4dc3d73d69 Add the SQLITE_DISABLE_FTS4_DEFERRED compile time option.
FossilOrigin-Name: e799222f3b8246e65657a758437914ece7069ba9
2012-08-20 17:24:48 +00:00
drh
342ced4b92 Changes to the spellfix test script to make the results deterministic.
FossilOrigin-Name: 31c07db2560ee867723c41cdb634e2aa7993634d
2012-08-15 16:43:07 +00:00
drh
c16eb6934d Update the spellfix virtual table to the latest development code.
FossilOrigin-Name: 6954fef006431d153de6e63e362b8d260ebeb1c6
2012-08-14 17:29:27 +00:00
dan
acf239b589 Change to securedel2.test so that it works even if SQLITE_DEFAULT_AUTOVACUUM=1 is defined.
FossilOrigin-Name: 1e6f5ea48174e3cb59e6d9fe1293fd87bd9c78f5
2012-08-08 10:14:10 +00:00
dan
2aba5d96f4 Add extra tests for secure-delete mode.
FossilOrigin-Name: e380cd3ce34d509e184081ecccf27fda11ce1da7
2012-08-07 17:41:50 +00:00
dan
81f0740e59 Do not run test script spellfix.test if SQLITE_OMIT_VIRTUAL_TABLE is defined. Fix walro.test so that it works if DEFAULT_AUTOVACUUM is defined.
FossilOrigin-Name: 26428b459b45d0fa9fcad7eb5e58bd60b04a0f83
2012-08-07 14:18:18 +00:00
dan
809badc93a Fix a bug in walthread.test causing intermittent failures.
FossilOrigin-Name: a192a718d513002b58ad585fcb3d8b9b49b4b123
2012-08-07 13:55:41 +00:00
dan
09ac7ec544 Merge the sorter-coalesce-writes branch into the trunk. This improves CREATE INDEX performance on some platforms.
FossilOrigin-Name: e1e9cb08b011e67b767091e42225f22ec862fa64
2012-08-06 19:28:20 +00:00
dan
428c218c90 When reusing pages as part of creating a new index, allocate the leaves from each free-list trunk page in ascending order, instead of trying to maximize localization for each individual allocation. This increases the chance that pages will be written to disk in ascending order by a large CREATE INDEX statement, improving overall performance.
FossilOrigin-Name: d045f8b2d44e388d8c4549ff02d4ca7eff4e2038
2012-08-06 18:50:11 +00:00
dan
3b2c9b3250 Modify the code in vdbesort.c so that most reads and writes to temporary files are aligned page-sized blocks.
FossilOrigin-Name: 55e47ef338c42f95f0f071d6ec92cd2480f9f1fe
2012-07-23 19:25:39 +00:00
dan
5373b76bdc Ensure that there is always at least one aReadMark slot usable by an unprivileged reader while a checkpoint is running. Also, if one or more transactions are recovered from a log file, initialize one of the aReadMark slots to contain mxFrame as part of the recovery process.
FossilOrigin-Name: e4163596339c2166f9c4356ab824fff8bda8d0b0
2012-07-17 14:37:12 +00:00
dan
5ad17e5d03 Merge trunk changes.
FossilOrigin-Name: 90df64ab803001819b3ebbb41d596aedbd9961b1
2012-07-16 10:25:54 +00:00
dan
5885e76269 If a specific database is nominated as part of a "PRAGMA integrity_check" or "PRAGMA quick_check" command, search for problems in the nominated database only. i.e. "PRAGMA main.quick_check" now only scans the main database, not all attached databases as before.
FossilOrigin-Name: 4353e40b74f577f224f190c429bfe03cf6a5c6d6
2012-07-16 10:06:12 +00:00
dan
8512752407 Add the "matchlen" column to the spellfix1 virtual table.
FossilOrigin-Name: f24b9d87f6b0e8b4d26669d5c1191f9280ba14a3
2012-07-13 19:26:34 +00:00
drh
ed68801b20 Add the sqlite3_close_v2() interface (from the deferred-close branch) that
allows close operations to happen out-of-order in bindings to
garbage-collected langauges.

FossilOrigin-Name: fb8893abeefabe9de44e34dcf4327764481189f5
2012-06-21 15:51:42 +00:00
drh
567520226a Merge changes to trunk that ensure that floating point values are exactly
preserved on a round-trip through ".dump".

FossilOrigin-Name: 4cebd60704f92bb3689c126f46feadc3516d3d45
2012-06-21 15:22:04 +00:00
mistachkin
f1c6bc5cd3 Remove more references to OS/2.
FossilOrigin-Name: eebd594d6bd09c77727620a818d7dc0b091f55b4
2012-06-21 15:09:20 +00:00
drh
c722a2c2e4 Disable the atof1.test module when compiling on MSVC.
FossilOrigin-Name: 0f706acfc7181f2714a06b2c232677ebeede3a44
2012-06-21 15:02:26 +00:00
dan
3aaa4cd9ed Add tests to check that the "unicode61" and "icu" tokenizers both identify white-space codepoints outside the ASCII range.
FossilOrigin-Name: bfb2d4730cbbe18fb940e72f4fde9122d550734e
2012-06-19 06:35:39 +00:00