drh
4970d4032e
Merge enhancements from trunk.
...
FossilOrigin-Name: 29570a604806e2a60a8eef7eaf1dce022d2a7004
2015-09-01 18:31:19 +00:00
drh
390b88a448
Case should not be significant when comparing function names.
...
FossilOrigin-Name: e2f1caf117b0a9632d52246717ab202852982339
2015-08-31 18:13:01 +00:00
drh
e14796085a
Merge enhancements from trunk.
...
FossilOrigin-Name: ec6ddb3d481d005c304a26c948c9c808586750e9
2015-08-26 18:04:23 +00:00
drh
5579d59fb3
Evaluate expressions only once when the same expression is used in both the
...
result set and in the ORDER BY clause.
FossilOrigin-Name: c2f3bbad778504681b39ab9399a1eb3c1a35ab3f
2015-08-26 14:01:41 +00:00
drh
1f9ca2c84c
Add code to maintain indexes with expression arguments across DELETE, INSERT,
...
and UPDATE statements. Legacy tests pass, but the new code paths are still
largely untested. The query planner currently makes no effort to use
expression indexes.
FossilOrigin-Name: efaabdb71626bdc03768e87e186c72f6f3da75b2
2015-08-25 16:57:52 +00:00
drh
108aa00a87
Enhances the parser so that it accepts arbitrary expressions for the arguments
...
of an index, though the code generator still rejects everything other than
simple column names. The sqlite3RestrictColumnListSyntax() routine is removed
since that feature is now handled by the parser.
FossilOrigin-Name: bed42116addabcf3dfdc2e2d51ae183965704988
2015-08-24 20:21:20 +00:00
drh
bc622bc045
Disallow the use of COLLATE clauses and the ASC and DESC keywords within
...
foreign key constraints and in the argument list to common table expressions.
FossilOrigin-Name: 83cbc4d8761498647794affffa961a4fca311be7
2015-08-24 15:39:42 +00:00
drh
e792b5b420
Fix a comment typo on sqlite3ExprAlloc(). No code changes.
...
FossilOrigin-Name: 518d6220a12fb1289f699ef0821e6adfcd286ed0
2015-08-23 20:48:29 +00:00
drh
c1bd84124b
Merge recent enhancements from trunk, including table-valued expressions.
...
FossilOrigin-Name: b9927c876c1d4e146cb6a603d82cd2489594084d
2015-08-20 23:45:59 +00:00
drh
8a48b9c0b1
Minor refactor of the SrcList object so that it is able to hold the argument
...
list to a table-valued-function in the FROM clause.
FossilOrigin-Name: b919376147597c4b73421abe5788f893baf1560b
2015-08-19 15:20:00 +00:00
drh
07194bff0e
Fix a bug in sqlite3ExprContainsSubquery().
...
FossilOrigin-Name: be254715b5f56900e57ed57a179ca8d7bb68685d
2015-08-13 20:34:41 +00:00
drh
bec2476afc
Merge in all the trunk changes from the previous year. This breaks the
...
cursor-hint mechanism, but provides a baseline for trouble-shooting.
FossilOrigin-Name: 82a7a61bc0883b1e7432548e4890791717aa1bb3
2015-08-13 20:07:13 +00:00
drh
9c7c913cd6
Cache the sqlite3_context structure in the P4 operand of VDBE programs
...
for faster SQL function dispatch.
FossilOrigin-Name: 2abc44eb3b9d489321baa50bc25e17dafbda3687
2015-06-26 18:16:52 +00:00
drh
5f02ab0976
Make sure that the likelihood() function does not mess up generation of
...
result-set code when it is used (inappropropriately) in a result-set
expression.
FossilOrigin-Name: 7cdbae625eb029538a693d2bebec465a6f65fb90
2015-06-20 13:18:34 +00:00
drh
36b80349b7
Add the OP_ColumnsUsed opcode (when compiled with
...
SQLITE_ENABLE_COLUMN_USED_MASK) as a hint to the b-tree layer as to which
columns of a btree cursor will be used.
FossilOrigin-Name: 711a176cbfad5dde6defa9648fba6d0d663af134
2015-06-12 12:54:15 +00:00
drh
72bc8208f0
When generating code for partial indexes, be sure not to modify the
...
index condition expression in the schema.
FossilOrigin-Name: e63d01c69c3e50f49ee3022a519c4f3e91f00520
2015-06-11 13:58:35 +00:00
drh
38b4149ca1
Factor out the TreeView parse tree printing module into a separate file.
...
FossilOrigin-Name: c32ce54ca46a4be4373983be6fd44b1f3a0250d1
2015-06-08 15:08:15 +00:00
drh
4490c40b90
Split FROM-clause subquery flattening and code generation into separate loops.
...
FossilOrigin-Name: be8e3fc70e4c13b28b07985df3457960f58ffddd
2015-06-05 22:33:39 +00:00
drh
97bae794c2
Add a new opcode to the VDBE that gives the b-tree a hint about the set
...
of columns in a table or index that are actually used by the query.
FossilOrigin-Name: f167bba446b78dd7538d0b2bae3e6678f3b1ba28
2015-06-05 15:59:57 +00:00
drh
d62fbb50e6
Change the name of SrcList.a[].zIndex to the more descriptive
...
SrcList.a[0].zIndexedBy.
FossilOrigin-Name: 6a9cf063379118dbb95c6cdc6d60af50e9867177
2015-06-04 12:08:53 +00:00
drh
05883a3409
Rename SQLITE_AFF_NONE to SQLITE_AFF_BLOB.
...
FossilOrigin-Name: bce3f04186cd2d69414a5a98b5b77dc8f060554a
2015-06-02 15:32:08 +00:00
drh
fcb9f4f3ca
Corrections to comments in expr.c. No code changes.
...
FossilOrigin-Name: f925389eaf5bf8962a28fcaa652b75caa606efba
2015-06-01 18:13:16 +00:00
drh
0a96931b76
Fix a minor coding inefficiency found during pre-release inspection.
...
FossilOrigin-Name: cc50883d67334507227e1384fef6cc7c93fd7de1
2015-05-05 16:57:52 +00:00
drh
00808deed0
Improvement to "ID" formatting on the ".selecttrace 0x1ff" debugging function.
...
FossilOrigin-Name: 01c50cee37bfaddfecdda014728c35a1be1d991a
2015-04-23 13:00:42 +00:00
drh
b496a8f547
Add an ALWAYS() around a new branch that was made unreachable by an even
...
newer change.
FossilOrigin-Name: 592c010478fba7410424f011a62e019c826f1ac3
2015-04-20 01:13:33 +00:00
drh
d0c7305313
Fix a potential NULL pointer deference on a corrupt database schema.
...
FossilOrigin-Name: dc61b292d8eaf422ca8a2b18f1caccef1a5389fd
2015-04-19 19:21:19 +00:00
drh
7693c42f1a
In the expression-tree comparison routine, do not compiler Expr.iColumn
...
and Expr.iTable for TK_STRING expressions.
FossilOrigin-Name: b67bb16c72c3e015ea82665ada9b5d3289ef6fb2
2015-04-17 19:41:37 +00:00
drh
772460fd4c
Improvements to the way VALUES clauses are parsed.
...
FossilOrigin-Name: ec5a493ad27593ca78899b3001630c1898b940ff
2015-04-16 14:13:12 +00:00
drh
1978d171cb
When adding the implied "LIMIT 1" to the end of a scalar subquery, make sure
...
that subquery is not a VALUES-only query as such queries cannot deal with
LIMIT clauses.
FossilOrigin-Name: 7c27310bdf6b4af44a0811a2787ed64966d720d2
2015-04-15 05:20:44 +00:00
drh
311efc70a7
Add a test case for what was formerly thought to be an unreachable condition:
...
when the LHS of an OR operator contains an error and the RHS contains an IN
operator.
FossilOrigin-Name: 3872742591add4e94033484c2844e7d7ab69674b
2015-04-15 04:20:58 +00:00
drh
74893a4cdb
Fix a potential NULL pointer dereference following a syntax error.
...
FossilOrigin-Name: 8d27e3e16a9be79fe227e833f4770ebe09a9d90b
2015-03-22 10:23:17 +00:00
dan
80103fc614
Fix a problem causing collation sequence names to be dequoted multiple times under some circumstances.
...
FossilOrigin-Name: eddc05e7bb31fae74daa86e0504a3478b99fa0f2
2015-03-20 08:43:59 +00:00
drh
6728cd9180
Propagate COLLATE operators upward through function calls and CASE operations.
...
And do not flatten an aggregate subquery into a query that uses other
subqueries. Fixes for tickets [ca0d20b6cdddec5] and
[2f7170d73bf9], respectively.
FossilOrigin-Name: 24e78b8d65734a6a8ae21a20542cd1839e756fb1
2015-02-09 18:28:03 +00:00
drh
2308ed3854
Propagate the COLLATE operator upward through function calls.
...
Initial fix for ticket [ca0d20b6cdddec5e8].
FossilOrigin-Name: c053448a55f9d030e8ffe88cf4fc14ada7f6ec19
2015-02-09 16:09:34 +00:00
drh
885a5b030e
Disable the query flattener for aggregate subqueries if the parent query
...
uses other subqueries in its result set or WHERE clause or ORDER BY clause.
Preliminary fix for ticket [2f7170d73bf9abf8]. However it still contains
a defect similar to the COLLATE problem of [ca0d20b6cddd].
FossilOrigin-Name: 0b7d65e3fda676d193347cb782854c28a48252af
2015-02-09 15:21:36 +00:00
drh
63f845734e
Rename the internal "EP_Constant" bitmask to a less misleading "EP_ConstFunc".
...
FossilOrigin-Name: 4ef7ceced2b0000d21f7f8014384c04a0e4661d3
2015-02-09 14:07:07 +00:00
drh
a58d4a9612
Fix a (almost always harmless) read past the end of a memory allocation
...
that comes about because the Expr.pTab field is checked on an
EXPR_REDUCEDSIZE Expr object before checking the Expr.op field to
know that the Expr.pTab field is meaningless.
FossilOrigin-Name: e098de691002a78270540430b0df1e120582b53f
2015-01-27 13:17:05 +00:00
dan
ce8f53d447
Fix an assert() that may fail following an OOM error.
...
FossilOrigin-Name: 5f592359d6d41708da3b3ac9d987a1631bfa3d88
2015-01-21 17:00:57 +00:00
drh
655814d2bd
Fix three crash problems discovered by afl-fuzz.
...
Ticket [a59ae93ee990a55].
FossilOrigin-Name: fe5788633131281a0f27c5b75993ce2ff958bfeb
2015-01-09 01:27:29 +00:00
drh
72673a24e2
If a table is the right operand of a LEFT JOIN, then any column of that
...
table can be NULL even if that column as a NOT NULL constraint.
Fix for ticket [6f2222d550f5b0ee7ed].
FossilOrigin-Name: 6f6fcbe4736b9468a495c684d5eebc8bfe5c566a
2014-12-04 16:27:17 +00:00
drh
113762a284
Add new requirements marks associated with the file format documentation.
...
No changes to code.
FossilOrigin-Name: 6d00bcca6ed1903fb17275752cab71c14392355b
2014-11-19 16:36:25 +00:00
dan
dd715f7c57
Do not automatically remove the DISTINCT keyword from "a IN (SELECT DISTINCT ...)" expressions. Fix for [db87229497].
...
FossilOrigin-Name: 55e453aadbb676dda07f0fa537d39ce184ef636c
2014-11-14 15:28:33 +00:00
drh
059b2d50e1
Enhance the automatic index logic so that it creates a partial index when
...
doing so gives the same answer for less work.
FossilOrigin-Name: d95d0313c447f5baeabdb17284d8606331ab7d49
2014-10-24 19:28:09 +00:00
drh
ccaba81e26
Show the TK_DOT operator in the TreeView debugging output.
...
No changes to production code.
FossilOrigin-Name: 07c89940c49a5dca3205a4b6fa8290f23bcb6e10
2014-10-01 13:17:34 +00:00
drh
4fa4a54f7e
Remove the SQLITE_ENABLE_TREE_EXPLAIN compile-time option. Add alternative
...
debugging display routines: sqlite3TreeViewExpr(), sqlite3TreeViewExprList(),
and sqlite3TreeViewSelect().
FossilOrigin-Name: 4ff51325d6b41d0c59e303b573700ec80c51d216
2014-09-30 12:33:33 +00:00
drh
feada2df39
Do not allow parameters in a DEFAULT clause of a CREATE TABLE statement.
...
Ticket [78c0c8c3c9f7c1].
FossilOrigin-Name: 1ad2bc1ed4c4ac81ac67a9660761f0eeb47c7fef
2014-09-24 13:20:22 +00:00
drh
eb9b884c2d
Improved ".selecttrace" output.
...
FossilOrigin-Name: c0b61f7092a7fd2c5f51db26ce7a7a5c75c227fe
2014-09-21 00:27:26 +00:00
drh
9300adbc79
Fix the SELECTTRACE_ENABLE macro so that it doesn't cause problems for
...
testfixture. Add new SELECTTRACE() calls.
FossilOrigin-Name: f1ba68f131d2f03e4a7bc50cde23a7609d384279
2014-09-20 20:24:49 +00:00
drh
236241aeb0
Simplify the way the column cache is managed around OP_Move instructions.
...
FossilOrigin-Name: 320556233e19cdd9d590a09655c3465754700d39
2014-09-12 17:41:30 +00:00
peter.d.reid
60ec914c74
Fix typos in comments. No code changes.
...
FossilOrigin-Name: e62aab5e9290503869e1f4d5e0fefd2b4dee0a69
2014-09-06 16:39:46 +00:00