drh
a04a8be2c2
When the [ https://www.sqlite.org/queryplanner.html#partialsort |block sorting optimization]
...
is used in a scalar subquery, be sure to exit the loop as soon as the first
valid output row is received. Fix for ticket [cb3aa0641d9a4].
FossilOrigin-Name: cdbb0947f9ce18d6d7e29ffab5ea6a2ee5365fbb
2016-01-13 17:50:10 +00:00
drh
9ca33fa4c2
Fix an uninitialized field in the Select object when SELECTTRACE is enabled.
...
FossilOrigin-Name: fc62851667d9120f98a2641c87bbc5a2485482b2
2016-01-12 02:00:24 +00:00
drh
ca3862dc6e
Reduce the number of calls to memset() in sqlite3DbMallocZero().
...
FossilOrigin-Name: cede2bf8e42ac140a8cc75a1d173083f543ba467
2016-01-08 12:46:39 +00:00
drh
9802947fd8
Improved OOM recovery in the SELECT code generator logic.
...
FossilOrigin-Name: e6521a436d464a42b87a7d5ba5cc98235b92440a
2015-12-03 21:47:30 +00:00
drh
f7ce4291a9
Remove unreachable branches from the decltype computation logic in the query
...
planner.
FossilOrigin-Name: 4f2bcff94c672312805be1400050a7026f93a9d7
2015-12-02 19:46:12 +00:00
dan
9a8941fc83
Have the sqlite3_column_decltype() API report the declared types for the left-most SELECT statement in a compound SELECT.
...
FossilOrigin-Name: 3e1d71fcaf57c0223ab9a7366c8607f8f66bb21c
2015-12-02 18:59:44 +00:00
dan
8836cbbcb4
Fix an obscure memory leak found by libfuzzer that may occur under some circumstances if expanding a "*" expression causes a SELECT to return more than 32767 columns.
...
FossilOrigin-Name: 60de5f23424552c98aa760ac89149a3d51f895be
2015-11-21 19:43:29 +00:00
drh
202923107d
Do not allow table-valued function syntax on ordinary tables and views as those
...
objects are not table-valued functions.
Fix for ticket [73eba7ba5c7c0fc].
FossilOrigin-Name: ff5716b89f99d9c4568a39f1f52524528a631623
2015-11-21 13:24:46 +00:00
drh
80090f9221
When manifesting a view as part of an DELETE or UPDATE, be sure to include
...
the hidden columns in the manifestation.
FossilOrigin-Name: 28df5dc4a9569f388af2ee0d1f016afbea132277
2015-11-19 17:55:11 +00:00
dan
ba68f8f3f5
Fix problems with INSERT INTO ... SELECT ... statements that write to tables with __hidden__ columns.
...
FossilOrigin-Name: 59bd0ec7d4327852ee8c0206b2c59d0a12484db8
2015-11-19 16:46:46 +00:00
drh
1a1d3cd2f3
Create the new TK_ASTERISK token to represent the "*" in "SELECT *". Formerly
...
that operator was TK_ALL, which was also used for UNION ALL. Less confusion if
they operator symbols are distinct.
FossilOrigin-Name: 201ac6d449431dadc6b29faecd68b559bd64bc9f
2015-11-19 16:33:31 +00:00
drh
03d69a6826
Only support the magic "__hidden__" column name prefix interpretation when
...
compiled with SQLITE_ENABLE_HIDDEN_COLUMNS.
FossilOrigin-Name: 5490646b2eb74ea8bd5ab2690f69b9c707a0165f
2015-11-19 13:53:57 +00:00
drh
6aed239acc
Honor the "__hidden__" prefix on the columns of views.
...
FossilOrigin-Name: 3071ba2bdbda7018d0a285eceb04b8527209ec1e
2015-11-18 20:57:50 +00:00
drh
f0c9145a36
If a table column name begins with "__hidden__" then do not include that
...
column in "*" expansions in SELECT statements, nor fill in that column in
an INSERT INTO that omits the column list. <b>This branch is a
proof-of-concept only and is not intended to ever be merged into trunk.</b>
FossilOrigin-Name: 2dbffb3a3b20dba7d7d86c8ad2e34633f616c78a
2015-11-18 18:43:15 +00:00
drh
f7ee8965a5
Fix the column name uniquifier so that it works with zero-length column names.
...
FossilOrigin-Name: 791761ebac26c82ab67bdf867117ec5b5d8b20b0
2015-11-15 11:13:49 +00:00
drh
96ceaf8680
Code simplification in sqlite3ColumnsFromExprList(). Update the %z format
...
code so that it works with buffers obtained from sqlite3DbMalloc(). Add a
testcase for the slow column name uniquifier.
FossilOrigin-Name: 9272426057b6cb2d913519ff4c97aa6e211f7d51
2015-11-14 22:04:22 +00:00
drh
0315e3cc14
Use a hash table to improve the preformance of column name uniqueness checking.
...
FossilOrigin-Name: 5b08f29f458c600401860c7d70d8174cf61e69f8
2015-11-14 20:52:43 +00:00
drh
ebed3fa3e1
Use randomness to prevent showness in the generated-column-name uniqueness
...
checking.
FossilOrigin-Name: 6266712968a2cdcd6f5a3007d60c2cf1b3faf912
2015-11-14 16:47:23 +00:00
drh
6e7722669e
Proposed fix for an infinite loop bug in the WITH clause semantic analysis
...
logic.
FossilOrigin-Name: 028475cb17a4b50baf0e9aba9bd3403d0a5d03b0
2015-11-07 17:48:21 +00:00
drh
2476a6f2cb
Enhance TreeView to show WITH clauses. Add an assert to detect the
...
infinite loop behavior when certain kinds of errors occur on a nested
WITH clause.
FossilOrigin-Name: 2040d88e877bdb69de125a047cefb4a1558e89e8
2015-11-07 15:19:59 +00:00
drh
0030aaad67
Merge recent enhancements from trunk. Version now 3.9.1.
...
FossilOrigin-Name: 26fa091d68e89a0b6af61ba706d23a9f37e8025a
2015-10-16 20:53:57 +00:00
drh
ce78bc6e7e
Enhance the use of the column cache for UPDATE statements, making them
...
more efficient for the case where a column is modified to be an expression
of other unmodified columns.
FossilOrigin-Name: 871e091df651b2275a672c35ff938bd4b6db0d7f
2015-10-15 19:21:51 +00:00
drh
99f4647ef5
Merge in all the 3.9.0 updates from trunk.
...
FossilOrigin-Name: 29444149342fc6b1ea8cd34c2c8e1fcb06eaa7ed
2015-10-14 20:09:54 +00:00
drh
bfad7be78a
Detect and report circularly defined views even if the views have the
...
columns defined in the CREATE VIEW statement.
FossilOrigin-Name: 9ab9c8c6d747647f8ade58c2c4812fc69a813368
2015-10-11 20:39:46 +00:00
drh
2906490b71
Remove an unreachable branch in the query flattener substitution logic.
...
FossilOrigin-Name: 46ee3453a31b5e793d5aaad471cec1b1a11ab2cf
2015-10-11 20:08:31 +00:00
drh
d12b636330
Improved substitution logic in the query flattener. Saves code space, and
...
(more importantly) works correctly with table-valued functions.
FossilOrigin-Name: 3d0bd95e977db50c314d33ec292f99e0539d7b4a
2015-10-11 19:46:59 +00:00
drh
728e0f91bb
Compiler warning fixes: Rename some local variables from "j1" to avoid a
...
name collision with the j1() bessel function in the math library. Omit a
dummy initializer that gcc 4.6.3 does not like.
FossilOrigin-Name: 9ddef84d432813f3ece8012047d08441caa3315d
2015-10-10 14:41:28 +00:00
drh
8b0cf38a12
Simplifications to the VDBE bytecode that handles LIMIT and OFFSET.
...
FossilOrigin-Name: 041df7c2f14b95868a08090354ebb3308050790e
2015-10-06 21:07:06 +00:00
drh
9f1ef45f6a
Fix the LIMIT and OFFSET handling for UNION ALL queries that contain a
...
subquery with ORDER BY on the right-hand side. Fix for ticket
[b65cb2c8d91f668584].
FossilOrigin-Name: 4b631364354068af95a01630469cb6fbfe8b52fd
2015-10-06 17:27:18 +00:00
drh
e2b7d7a0a1
Remove dead code, replacing with assert() statements that make sure the
...
code really was dead.
FossilOrigin-Name: 0e317dda5dfd35b742afd70dacb5bfb39aa3fc4a
2015-09-29 15:50:04 +00:00
drh
2679f14fd9
Report an error if the number of named columns in a VIEW is different
...
from the number of result columns in the SELECT statement that implements
the VIEW.
FossilOrigin-Name: 6e4ac0be2de1a16fcbb2a314504122ad95aa257e
2015-09-25 13:42:55 +00:00
drh
ae1a015c87
Merge trunk changes into the cursor-hints branch.
...
FossilOrigin-Name: fbe637620fb7f2c9395c9ddac77d26746d6d4178
2015-09-24 15:06:30 +00:00
drh
6230212f4a
Do not allow table-valued function syntax to be used on a view.
...
FossilOrigin-Name: 97cfe346e140e42a604375551f8168276bdbea11
2015-09-19 20:27:08 +00:00
drh
163c29c5f3
Merge enhancements from trunk.
...
FossilOrigin-Name: 25ee3000e94d60d8c1d7b980f416dcc33eb11105
2015-09-03 14:39:33 +00:00
drh
076e85f59c
Add the sqlite3VdbeLoadString() and sqlite3VdbeMultiLoad() routines to help
...
with code generation, especially on PRAGMAs. Rename sqlite3VdbeAddGoto()
to just sqlite3VdbeGoto().
FossilOrigin-Name: 847387ec8e6fef283899578fb232b2c23b00ee5b
2015-09-03 13:46:12 +00:00
drh
0ff287fb01
Add and use the sqlite3VdbeChangeOpcode() routine. Simplify the implementation
...
of the other sqlite3VdbeChange*() routines.
FossilOrigin-Name: 0a5b00e493efae58252f9fc7bde5a469645942d5
2015-09-02 18:40:33 +00:00
drh
2991ba050b
Add the sqlite3VdbeAddGoto(v,i) routine as a shorthand for
...
sqlite3VdbeAddOp2(v,OP_Goto,0,i).
FossilOrigin-Name: be78f413df1b0d874b44a866ef6bf17543d7e8a2
2015-09-02 18:19:00 +00:00
drh
4970d4032e
Merge enhancements from trunk.
...
FossilOrigin-Name: 29570a604806e2a60a8eef7eaf1dce022d2a7004
2015-09-01 18:31:19 +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
0576bc59a7
Refactor With.a.zErr into With.a.zCteErr. No logic changes.
...
FossilOrigin-Name: 58ba73630ecc4bc58b03a7962dd45b305ef605ef
2015-08-26 11:40:11 +00:00
drh
8981b904b5
Enhance the CREATE VIEW syntax so that the names of columns of the view can
...
be specified after the view name.
FossilOrigin-Name: d794b34da6f9c77dfe17773b0b17b22de72cce7f
2015-08-24 17:42:49 +00:00
drh
38978dd4ed
Do not apply the WHERE-clause pushdown optimization to terms that originate
...
in the ON or USING clause of a LEFT JOIN. Fix for ticket
[6df18e949d3676290].
FossilOrigin-Name: 351bc22fa9b5a2e50da3583a882c5aa390bda19f
2015-08-22 01:32: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
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
mistachkin
89b31d73a6
Fix compilation issues with SQLITE_OMIT_COMPOUND_SELECT defined.
...
FossilOrigin-Name: 9c39d4644530ccc532f4ff26464106c6da43269a
2015-07-16 17:29:27 +00:00
drh
b63ce02f57
Do not allow recursive CTEs that use aggregate queries in the recursive part.
...
FossilOrigin-Name: 6d2999afbc25b9c238e4028f637c10eaaf0ec75e
2015-07-05 22:15:10 +00:00
mistachkin
c29cbb0bec
Fix harmless compiler warnings and one macro VVA_ONLY macro usage issue.
...
FossilOrigin-Name: bcc8a75509aafda61feb6dcc074668c79611a662
2015-07-02 16:52:01 +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
2ec18a3cce
Mark some branches as unreachable after the recent change that recognizes
...
mismatch result set sizes on compound SELECT statements sooner.
FossilOrigin-Name: c8d1f305b6e9dfc36b8e3f4ab92de4457884d903
2015-06-23 23:31:52 +00:00