drh
325eff58d6
Update the query planner to recognize more cases where ORDER BY clauses
...
can be optimized out. Add test cases to verify correct behavior of the
ORDER BY optimization when the covering-index-scan optimization is disabled.
Fix a harmless compiler warning in the TCL interface.
FossilOrigin-Name: 956e4d7f8958e7065ff2d61cd71519d6f4113d4a
2012-10-03 12:56:18 +00:00
drh
6f0e400cba
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.
FossilOrigin-Name: 0f9bb90100aa304a7f28023ca4173e68b445e8bd
2012-10-03 12:38:19 +00:00
drh
c45e67162d
Fix the TCL interface so that SQL functions implemented in TCL honor the
...
"nullvalue" setting. Also remove from the TCL interface some unused
legacy UTF8 translation code left over from SQLite2.
FossilOrigin-Name: c1f10a2643179ec58f3879764e9e89676d4b5f91
2012-10-03 11:02:33 +00:00
drh
d663b5bdef
Further attempts to optimize out unnecessary ORDER BY clauses.
...
FossilOrigin-Name: 6744d9a37faffed59b4d5cb96c8671ec46a87ea7
2012-10-03 00:25:54 +00:00
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