aboutsummaryrefslogtreecommitdiff
path: root/src/resolve.c
Commit message (Collapse)AuthorAge
...
* Merge changes from trunk.drh2018-04-16
|\ | | | | FossilOrigin-Name: 54d96772e78b7f57d5b590aebe34a139ade73629aebe16677372650b33513b1d
| * Reduce the size of the NameContext object by grouping seldom-used fieldsdrh2018-04-16
| | | | | | | | | | into a union. FossilOrigin-Name: dba3095feeeb55b5c0ebe33bdd4be8ba1f24478406685d3a042a69d9c380e742
* | Fix another typo in a comment.drh2018-04-12
|/ | | FossilOrigin-Name: 046bb6d25865041477f046f24c39a4791224f5b622ff70eda909d8ee3c097511
* Code simplifications. New test cases.drh2018-02-26
| | | FossilOrigin-Name: 57508518ef9d003d259ba98dcc32e5104aca26731a7161808741fe10bc0830d0
* Get the "DEFAULT true" and "DEFAULT false" phrases working correctly indrh2018-02-26
| | | | | CREATE TABLE. FossilOrigin-Name: 8002f87d96b3f885cd208e7d204907a33ba60c4057ce2338b71e2de41215b0e5
* Refactor for correct NULL handling in the IS TRUE, IS FALSE, IS NOT TRUE,drh2018-02-26
| | | | | and IS NOT FALSE operators. FossilOrigin-Name: cf2abd59be9971a55bd3d6c5df374c6aaa23bf81819482b42f01ee2484dcd739
* Experimental implementation of IS TRUE and IS FALSE operators. All TRUE anddrh2018-02-26
| | | | | FALSE to act like constants if the names do not resolve to a column name. FossilOrigin-Name: 40314bc999af08ab10e654241208842b4bb95b19858d11249444372250ea4160
* In the parse tree, combine LIMIT and OFFSET into a single expression rooteddrh2017-11-14
| | | | | | on a TK_LIMIT node, for a small code size reduction and performance increase, and a reduction in code complexity. FossilOrigin-Name: 3925facd942c9df663f9b29b1e6f94f6be14af8c2b99eb691bfc836b4c220826
* Omit some extra code from non-SQLITE_ENABLE_UPDATE_DELETE_LIMIT builds.dan2017-11-10
| | | FossilOrigin-Name: 72be33f9c84de3ec4afc40549482417456ca82c1d16b473dc034b144055271e5
* Disallow ORDER BY and LIMIT on UPDATE and DELETE of views and WITHOUT ROWIDdrh2017-11-09
| | | | | | tables. This is a temporary fix for ticket [d4beea1633f1b88f] until a better solution can be found. FossilOrigin-Name: 62fe56b59270d9d7372b1bb8a53788a40d20d0f111fe38c61dd6269848592c70
* 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