aboutsummaryrefslogtreecommitdiff
path: root/src/resolve.c
Commit message (Collapse)AuthorAge
...
* Remove unnecessary "#if SQLITE_MAX_COLUMN". SQLITE_MAX_COLUMN is alwaysdrh2017-10-21
| | | | | defined. FossilOrigin-Name: 6ec82acde81a46a75ed5931fc7dd813f2523753106ad7b8f0b544b9da9824d5a
* The EP_Resolved flag on the Expr object is not required for correctness nordrh2017-07-12
| | | | | performance, so remove it. FossilOrigin-Name: 54f55d3b7973e326541a81bfb2e752a2f6618e4fec9a3631b95f28e12e9c6e34
* More aggressive use of EP_Leaf on expression nodes, to help prune searches.drh2017-07-07
| | | FossilOrigin-Name: c1a1d68c8219c8072e60af5c46a30849ae9a04fa1a6b2a8b22b82fec069d691d
* Consider the values bound to SQL variables when determining whether or not adan2017-06-24
| | | | | partial index may be used. FossilOrigin-Name: 7b59c353b805c64689b4ae9df347705acbb5f116346ad77af8ce087da7893747
* Size and performance optimizations to sqlite3ResolveExprNames().drh2017-05-31
| | | FossilOrigin-Name: af8c0fed93c830c50641d95691bb507c31947a15529aba2a88bfaa66b3a3287a
* Optimizations to the Walker object and its methods to make the code a littledrh2017-05-29
| | | | | smaller and to help it run a little faster. FossilOrigin-Name: 6854a34ed708259f2280f7ee56cec09f7fc99810dc739dc2814ddeae286aa2c4
* More size and speed improvements in the expression name resolver.drh2017-03-07
| | | FossilOrigin-Name: e0a3d39f51a50420bae97e2bc9a8c01a5b0d3db8
* Small size reduction and performance increase in the name resolver routinedrh2017-03-07
| | | | | for expressions. FossilOrigin-Name: 1a3554e1d71b666325ff377fae5329d79ce5c05f
* If compiled with SQLITE_INLINE_MEMCPY, all memcpy() calls are replaced withdrh2017-01-19
| | | | | | | in-line code. With that change, cachegrind shows which memcpy() calls are taking the most time. This is a performance-measurement hack only and is not for production use. FossilOrigin-Name: 9ed38521617136223a667988aed40e25797faf84
* Handle some obscure "row value misused" cases that could cause segfaults ordan2016-11-11
| | | | | assertion failures. FossilOrigin-Name: fba5fddb1c40af75634b01c1f06d2610df697e01
* Fix harmless compiler warnings.drh2016-10-05
| | | FossilOrigin-Name: 2dde3375124198560c8ff15f87aadde2afd722c5
* Allow deterministic functions in the WHERE clause of a partial index.drh2016-10-03
| | | FossilOrigin-Name: c6e9b9421805c904b20900b711fa0e51773aef3e
* Fix SQLITE_OMIT_AUTHORIZATION so that it compiles cleanly.drh2016-09-16
| | | FossilOrigin-Name: a3e3b3e1c57178ccd38fc7375ec1de8e8ae45372
* Catch vector size mismatch problems during name resolution to avoid laterdrh2016-09-05
| | | | | problems. FossilOrigin-Name: 56562a0346170cf7b72445976864b058437a8ac3
* Rename the Db.zName field to Db.zDbSName to make it more descriptive and todrh2016-08-18
| | | | | | distinguish it from all of the other "zName" variables scattered throughout the code. FossilOrigin-Name: 92a22f01343a898455fd61c3b8e7d7c954f5b569
* Add the experimental SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION compile-time option.drh2016-08-04
| | | | | | | | | When enabled, the "unknown function" error is suppressed for EXPLAIN and a no-op function named "unknown()" is substituted. This facilitiates using the command-line shell to analyze queries from applications that contain many application-defined functions that are not normally available to the shell. FossilOrigin-Name: b7f30a9ff20d580fdaecdcf2b644d09ad6c2575e
* Only disable the one-pass DELETE optimization if the WHERE clause containsdrh2016-05-04
| | | | | | | a correlated subquery. Uncorrelated subqueries are allowed. This is a refinement of check-in [3f221f592a9a1] that is the fix for ticket [dc6ebeda9396087]. FossilOrigin-Name: aae389692a2ed2cc92151d51fb2cd5a16921c469
* Improvements to the application-defined function mechanism so that it isdrh2016-02-15
| | | | | | more compact and runs faster, especially when the application defines thousands of new SQL functions. FossilOrigin-Name: 3201fbcc5105d23132e6b8b7ac825e66af4f8a39
* Remove an unnecessary memset() from the symbol name resolver.drh2016-01-20
| | | FossilOrigin-Name: da527ddae06460ab4b706cdb871de2188ebaf5ac
* Combine the xFunc and xStep pointers of the FuncDef object into a singledrh2016-01-14
| | | | | pointer xSFunc. FossilOrigin-Name: 0d1b3d7d3ca66cb0b97493f1aeade1703af3c9f4
* Fix typos in requirements text and update requirements marks. No changesdrh2015-12-03
| | | | | to code. FossilOrigin-Name: 8534a46c06601ad35b97caee442371f24c718d0f
* Do not allow table-valued function syntax on ordinary tables and views as thosedrh2015-11-21
| | | | | | objects are not table-valued functions. Fix for ticket [73eba7ba5c7c0fc]. FossilOrigin-Name: ff5716b89f99d9c4568a39f1f52524528a631623
* Do not allow rowid in a UNIQUE or PRIMARY KEY constraint. (This restores thedrh2015-09-19
| | | | | same behavior exhibited by all prior releases.) FossilOrigin-Name: b1278301e37220a075c1bae88c0fcca2ef7a7d5c
* Omit all use of Expr nodes for TK_AS, as those nodes no longer served a usefuldrh2015-09-05
| | | | | purpose and in fact interferred with the query planner. FossilOrigin-Name: 7ab0b258eabfcfb7f1b0bd1b12e166d2f267823d
* Rename SQLITE_FUNC_VARYING to SQLITE_FUNC_SLOCHNG - a more descriptive namedrh2015-09-01
| | | | | for what that bit means. FossilOrigin-Name: ff5137a6dd8cb2a9b629b3a244f52665e9c9ebce
* Not only date/time functions, but also functions like sqlite_version() anddrh2015-08-31
| | | | | changes() need to be prohibited from use inside of indexes. FossilOrigin-Name: 487131303980f15dd5e1b6695b4f29efda229eb8
* Make the distinction between truly deterministic functions and date/timedrh2015-08-31
| | | | | | | functions which only return the same answer for a single query. Only truly deterministic functions are allowed in indexes. Add new expression index test cases. FossilOrigin-Name: c77554b5c42327106a7b90334e9cc3c07b007c76
* Merge enhancements from trunk.drh2015-08-26
|\ | | | | FossilOrigin-Name: ec6ddb3d481d005c304a26c948c9c808586750e9
| * Evaluate expressions only once when the same expression is used in both thedrh2015-08-26
| | | | | | | | | | result set and in the ORDER BY clause. FossilOrigin-Name: c2f3bbad778504681b39ab9399a1eb3c1a35ab3f
* | Add code to maintain indexes with expression arguments across DELETE, INSERT,drh2015-08-25
| | | | | | | | | | | | | | 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
* | Changes toward being abld to process indexes on expressions. Not there yet - drh2015-08-25
|/ | | | | this check-in is just movement in that direction. Some tests are failing. FossilOrigin-Name: 0ad0f8d77d8f95ca2ffb7745d18219f5e87dc89c
* Remove some redundant code: Call sqlite3ResolveExprListNames() rather thandrh2015-08-24
| | | | | calling sqlite3ResolveExprNames() in a loop - in two places. FossilOrigin-Name: bdaf66465b6b1bdad10c08d9527b98e7000a41e4
* Fix a couple C99-isms that cause compile errors on MSVC.drh2015-08-20
| | | FossilOrigin-Name: bc577fe6cbbe5385d81d6fa0f3c34bb1c833f0d6
* Fix corner-case memory management issues in table-valued functions. Changedrh2015-08-20
| | | | | | virtual table handling so that if xDestroy is missing the table is eponymous only even if xCreate is present. FossilOrigin-Name: 774e6a14b124bbae4da0e188b62aee9ffb8c3745
* Correctly handle empty function argument lists on table-valued functions.drh2015-08-20
| | | FossilOrigin-Name: a7acc7878b8bb8e27a0da67b2dbb7bd51df4859b
* A list of arguments following a table name translates into equalitydrh2015-08-19
| | | | | constraints against hidden columns in that table. FossilOrigin-Name: 40e12cfe4c29475417ba89fb637b4c763cf74016
* Minor refactor of the SrcList object so that it is able to hold the argumentdrh2015-08-19
| | | | | list to a table-valued-function in the FROM clause. FossilOrigin-Name: b919376147597c4b73421abe5788f893baf1560b
* Test that the left and right sides of a compound SELECT operator have the ↵dan2015-06-23
| | | | | same number of expressions in the expanded expression list before beginning to generate code. FossilOrigin-Name: 4df852ce26c95d5d23c83dbe9c59d2c3435acddf
* CTEs have never add working rowids. So disallow the use of the "rowid" columndrh2015-05-27
| | | | | within CTEs. FossilOrigin-Name: 0055df0445932a43e42b318ef88672dcbe312c3a
* Remove a faulty assert() statement.drh2015-05-07
| | | FossilOrigin-Name: 5f2539da8cb9df99029ab4ab7023804722697673
* Fix a faulty assert() in the "AS" alias resolution logic of the parser.drh2015-04-23
| | | FossilOrigin-Name: b5e43602833249aa4b73337bf85b7f308450dab6
* In the expression-tree comparison routine, do not compiler Expr.iColumndrh2015-04-17
| | | | | and Expr.iTable for TK_STRING expressions. FossilOrigin-Name: b67bb16c72c3e015ea82665ada9b5d3289ef6fb2
* Always resolve symbols in all ORDER BY clauses of a compound-SELECT, evendrh2015-04-17
| | | | | illegal ORDER BY clauses. FossilOrigin-Name: 6c39ef73d5899eabdb46db50c2b00c2d8381a41a
* Fix a faulty assert() statement in the name resolver associated with thedrh2015-04-15
| | | | | | optimization that converts compound selects with ORDER BY COLLATE into subqueries. FossilOrigin-Name: c72324ef9243946550ae3d974826502b1cc5eb10
* Correctly handle COLLATE operators applied to COLLATE operators in andrh2015-04-15
| | | | | ORDER BY clause. FossilOrigin-Name: 9e1f837b08facbc7a2b6196770599a58233e725c
* When doing the (dubious) conversion of double-quoted identifier into stringdrh2015-04-15
| | | | | | literal for MySQL compatibility, be sure to also clear the iTable value from the Expr entry to avoid an assert. FossilOrigin-Name: d7211b68107ea669de39e0aa81a1be40901e1487
* Fix a problem with resolving ORDER BY clauses that feature COLLATE clauses ↵dan2015-04-04
| | | | | attached to compound SELECT statements. FossilOrigin-Name: 427b50fba7362e5b447e79d39050f25ed2ef10af
* Rename the internal "EP_Constant" bitmask to a less misleading "EP_ConstFunc".drh2015-02-09
| | | FossilOrigin-Name: 4ef7ceced2b0000d21f7f8014384c04a0e4661d3
* Fix over-length source code lines in resolver.c. No logic changes.drh2015-02-09
| | | FossilOrigin-Name: c12edb85076d0832e3a0abbbba4d07f3cb5d7f0e
* If a table is the right operand of a LEFT JOIN, then any column of thatdrh2014-12-04
| | | | | | table can be NULL even if that column as a NOT NULL constraint. Fix for ticket [6f2222d550f5b0ee7ed]. FossilOrigin-Name: 6f6fcbe4736b9468a495c684d5eebc8bfe5c566a