Commit Graph

22366 Commits

Author SHA1 Message Date
drh 71607c77c8 SQLite has long accepted some unadvertised and non-standard join syntax.
Add a test to ensure that future versions continue to accept this non-standard
syntax, to avoid breaking legacy applications that use the undefined syntax.

FossilOrigin-Name: 824dde7fc48dbca6d6c956c4eb79bbfa2d139ee5
2014-07-18 17:39:48 +00:00
drh 56f674c8a0 Improvements to the ".fullschema" command in the command-line shell.
FossilOrigin-Name: fa80c64caa573297bf43cb5b11d9e7db58567200
2014-07-18 14:43:29 +00:00
dan c5b44f3d90 Fix a problem with position list processing for OR queries.
FossilOrigin-Name: 5808f30fae0d844c52a785bf18872be371d4af68
2014-07-17 15:14:07 +00:00
dan 18689f1bd4 Fixes for tcl list generation in fts5_test().
FossilOrigin-Name: c1f9a4b76c0bbc1ef9f6cdb5d62aa5d536fdf38e
2014-07-16 20:07:59 +00:00
dan 9cfd51f587 Begin adding interface for auxiliary functions.
FossilOrigin-Name: 1e2a7ba0889093416455f488fca893eaeb195d45
2014-07-16 19:15:57 +00:00
dan 91d3a61f8a Add simple tests for new sqlite3BtreeCursorHint() functionality.
FossilOrigin-Name: 1efa6ed584172291edce78faf9021e577583d03b
2014-07-15 11:59:44 +00:00
dan 159c1a18db In the expression passed to sqlite3BtreeCursorHint() for the inner loops of joins, replace any TK_COLUMN references to columns in the outer loops with TK_REGISTER expressions (Expr.iTable indicates the specific register containing the value).
FossilOrigin-Name: f9dddd008c6ef7940a1d66363fbb456cff7207c1
2014-07-14 19:04:29 +00:00
dan 48eecfb8b9 Support "ORDER BY rowid ASC".
FossilOrigin-Name: b96b5e166990e4ec363b24f66e04cfa5f00f6342
2014-07-10 20:21:12 +00:00
dan a2b569f955 Add support for prefix queries to fts5.
FossilOrigin-Name: 75ebd3cd5904a4f89f7f3a9b25d32b2a42a31310
2014-07-08 16:27:37 +00:00
mistachkin 166c373779 Fix harmless compiler warnings in the fts3view utility program that can occur with MSVC.
FossilOrigin-Name: 1cec1e030035e5253fb7ebbdfe5c1a3029e4e29b
2014-07-07 18:03:38 +00:00
mistachkin de54527fb2 Add the fts3view utility program to the MSVC makefile.
FossilOrigin-Name: b04751bd59fed513ab615e7f368fe25c64b3607c
2014-07-07 17:57:50 +00:00
drh 42d3d37ad1 Fix a division-by-zero error in the fts3view utility program. Add the
fts3view utility program to the "main.mk" makefile.

FossilOrigin-Name: 64f02699b4bd747e4c2f0debf72d37ec275137d8
2014-07-07 16:07:43 +00:00
dan 103576dd75 Add support for AND, OR and NOT to fts5.
FossilOrigin-Name: 8682b87e794767cefcaa080fd53c8973c24c556a
2014-07-05 15:15:41 +00:00
dan c2642d7c1e Add support for the "colname : <nearset>" syntax to fts5.
FossilOrigin-Name: 004667106e552e832a564b77e242b86f183d4441
2014-07-05 07:54:01 +00:00
dan c18a8fe99c Add support for NEAR expressions to fts5.
FossilOrigin-Name: 250ae8d40115e2e47cc5a1e8a427fa8c0a89124d
2014-07-03 20:39:39 +00:00
dan 2eaf03d72b Change fts3/4 so that the "unicode61" is included in builds by default. It may now be excluded by defining SQLITE_DISABLE_FTS3_UNICODE.
FossilOrigin-Name: 0cc0230ae9cfc9760fd8ef2c25e82576b052dbeb
2014-07-03 12:18:22 +00:00
dan 1dfacb4675 Add support for phrase queries to fts5.
FossilOrigin-Name: 2e5652e6526b8fb3f5c163168d95bc0bb4c93686
2014-07-02 20:18:49 +00:00
dan acf6642819 Change the position list format so that its size in bytes is stored at the start of the list itself.
FossilOrigin-Name: 62f2ff20418702ed0fbf708369edf5638445b51b
2014-07-01 20:45:18 +00:00
dan 43fbe5e2c9 Add another test to verify that SQLite is using stat4 data for composite primary keys on WITHOUT ROWID tables.
FossilOrigin-Name: 0df1fe72f8271abc86cd552027d938c910f90967
2014-07-01 15:22:11 +00:00
dan 39caccf83d Ensure that all fields are loaded from the stat4 table for records that correspond to indexes on WITHOUT ROWID tables with composite primary keys.
FossilOrigin-Name: 21981e35062cc6b30e9576786cbf55265a7a4d41
2014-07-01 11:54:02 +00:00
drh 6614181610 Merge the latest trunk changes into the threads branch.
FossilOrigin-Name: ae23a65eb1547fbe8b86ab71477071990a22d31d
2014-06-30 20:25:03 +00:00
drh f257b4c613 Merge the latest trunk enhancements into the sessions branch.
FossilOrigin-Name: a5d94eaba6aa12ff16d2a0af2fc752bcdb461877
2014-06-30 20:02:55 +00:00
drh 49e77b1925 Bump the version number to 3.8.6.
FossilOrigin-Name: f925e9baafea625f63105f8013abb3807b418379
2014-06-30 19:28:57 +00:00
drh 855f63908f Attempt to use STAT4 information to estimate the selectivity of WHERE clause
terms when using the skip-scan optimization.

FossilOrigin-Name: d09ca6d5efad3e4cfa93a4dc711e6ba6079d4b4b
2014-06-30 19:07:58 +00:00
drh c7de8267a8 Fix for ticket [b2fa5424e6fcb15]: Better define the format of the sqlite_stat4
file for WITHOUT ROWID tables and make sure the ANALYZE command generates a
file in the appropriate format.  Use the sqlite_stat4 data to enable the use
of WHERE terms that cover all indexed columns plus some prefix of columns
in the primary key.

FossilOrigin-Name: bc2de8095fa9c385db0adf22ca55b0298a33c284
2014-06-30 18:57:53 +00:00
dan fd984b8114 Fix a problem in where.c with using the stat4 sample data of an index on a WITHOUT ROWID table.
FossilOrigin-Name: 053a210e3169732c58f84cb54c9b6f6df3a8f4ea
2014-06-30 18:02:20 +00:00
drh ec9e55d358 Fix the STAT4 information for WITHOUT ROWID tables.
FossilOrigin-Name: 5d8628fdffbcf837313958f0ee1ed8a2043d384e
2014-06-30 17:07:39 +00:00
dan 39129ce8d9 Fix where.c so that the primary key values appended to every index entry on a WITHOUT ROWID table may be used when useful.
FossilOrigin-Name: 6624a61d16e47ad691c4195ca8a1d68b7348118d
2014-06-30 15:23:57 +00:00
drh 971fd07135 Omit non-primary-key columns from the STAT4 samples for WITHOUT ROWID tables.
Indexes, both rowid and without-rowid, still hold an exact copy
of the index entry.

FossilOrigin-Name: de826c31589258f0906f87d65796944103e36d5b
2014-06-30 13:56:34 +00:00
drh 48be0c51d4 Generate complete samples for sqlite_stat4 on WITHOUT ROWID tables.
Ticket [b2fa5424e6fcb15b5]

FossilOrigin-Name: 8cb43eddab83c68b2163441df70e0e9496d5fa33
2014-06-30 13:32:39 +00:00
drh 4bb77ecaa8 Add makefile targets for various diagnostic tools, such as showstat4.
Fix harmless compiler warnings in diagnostic tools.

FossilOrigin-Name: 6f86d89b8800c50035da7809bff941d08a33a6a2
2014-06-30 11:14:26 +00:00
dan 6696ba3eab Add an OOM fault injection test for the new code on this branch.
FossilOrigin-Name: c96de490ac77dd23c108004b95152cce4922fe27
2014-06-28 19:06:49 +00:00
dan 8e9028d0f8 Add further tests to skipscan5.test.
FossilOrigin-Name: 4b8230e8fe93e73a615a46708aed5fa3557b6228
2014-06-28 17:35:15 +00:00
drh 0288b21e54 Add header comments on new routines. Rework the sqlite3Stat4Column() routine
so that is (in theory) able to deal with corrupt samples.

FossilOrigin-Name: ef5cdf949bb53a2958fa34e176b4b9eeda269de5
2014-06-28 16:06:44 +00:00
dan fa8874542c Fix a problem with using stat4 samples of type text when estimating the rows visited by a range-query/skip-scan loop.
FossilOrigin-Name: dfb09db6d412f3bc2a71bda393813783580dbad1
2014-06-28 15:26:10 +00:00
drh 3eddb23e31 Change the VDBE to export the sqlite3MemCompare() routine and thus free
where.c from the dependency on vdbeInt.h.

FossilOrigin-Name: d186d1ac3c47f0d814636c4b8386a6065a294750
2014-06-28 14:28:06 +00:00
dan 4364dc5ea6 Merge fixes from trunk with this branch.
FossilOrigin-Name: 6af219d1b83ec54b3fb4ad4e6216d9ad9ea0fc70
2014-06-28 14:25:32 +00:00
dan 4e42ba4a35 Fix a couple of problems in estimating the number of rows visited by a range query that uses a skip-scan.
FossilOrigin-Name: 219736f54dcd1448af3400e699f1c20755ac6876
2014-06-27 20:14:25 +00:00
mistachkin 5d24951865 Add some more IN operator tests.
FossilOrigin-Name: fb32e374b75b160e7b535e732ced6c34dbb513eb
2014-06-26 22:17:21 +00:00
mistachkin 2d84ac480b Fix compilation issue when STAT4 is not enabled.
FossilOrigin-Name: 74a5454a710e1b7d8575cec2f872e6110aefce17
2014-06-26 21:32:09 +00:00
mistachkin 9bec6fb3ef Revise the affinity returned for expressions flagged as 'generic'. Fix for [9a8b09f8e6].
FossilOrigin-Name: 92f7ad43dbfe4e02490df2f932c3c74fb89064d6
2014-06-26 21:28:21 +00:00
dan b0b8290ecb Attempt to use sqlite_stat4 data to estimate the number of rows visited by a range query that uses a skip-scan. This code is largely untested.
FossilOrigin-Name: 01dc8102592427b71a18c2cb82301d2266dd59c2
2014-06-26 20:21:46 +00:00
dan e369fe4352 Fix minor problems in term matching.
FossilOrigin-Name: 94eeb077d08a1d2607f3ff3a9fbf18229ba475bb
2014-06-26 12:31:41 +00:00
dan 22d43ec4e8 Begin adding query support to fts5.
FossilOrigin-Name: 47a9f3cc92deefe163108e3507bd4614bf1f5da7
2014-06-25 20:28:38 +00:00
drh a9bc3cf736 Fix showstat4.c so that it decodes typecodes 8 and 9 correctly.
FossilOrigin-Name: 9ca737c0b41f87998d842e7772c3e483bb291c50
2014-06-24 20:19:21 +00:00
dan d0bfb36a08 Add simple full-table-scan and rowid lookup support to fts5.
FossilOrigin-Name: 3515da85d09220c464979467b476c611da4a6a7a
2014-06-24 16:59:06 +00:00
drh f127814eae Add the showstat4.exe utility program for decoding and displaying the
content of the sqlite_stat4 table in a database.

FossilOrigin-Name: b4d9f6053d1d95fdc1eab8ce610b51e7df8d896d
2014-06-24 00:59:15 +00:00
drh c1971541e4 Add the .fullschema command to the sqlite3.exe utility. This command shows
the schema and the content of the sqlite_stat tables, all in one go.  Useful
when reporting problems with the query planner.

FossilOrigin-Name: ebec48921c092e20c9d7608242b63db40b40be5e
2014-06-23 23:28:13 +00:00
dan e0fa4107c2 Add some code for an experimental fts5 module. Does not work yet.
FossilOrigin-Name: 1e0648dcf283d4f1f6159db4d2433b6cc635992e
2014-06-23 11:33:22 +00:00
dan 685ffb134a Fix a problem with SQLITE_OMIT_WSD builds.
FossilOrigin-Name: 07dda49c1bf8997a18c3368acb81b6d863ea38d6
2014-06-23 10:18:50 +00:00