aboutsummaryrefslogtreecommitdiff
path: root/src/resolve.c
Commit message (Collapse)AuthorAge
...
| | * New test-only SQL functions: implies_nonnull_row(), expr_compare(), anddrh2020-01-01
| | | | | | | | | | | | | | | | | | | | | expr_implies_expr(). The SQLITE_TESTCTRL_INTERNAL_FUNCTIONS test-control is modified to toggle internal function access on and off for a single database connection. FossilOrigin-Name: 473892a8eceacf24d57fd0c72ff2a0b8be4e0d75e0af7a30bdb24fbc3b453601
| * | Merge recent enhancements from trunk.drh2019-12-31
| |\| | | | | | | FossilOrigin-Name: 39d55579376906f212271ce9b2d367e3ad029fb173f22c7253312b467970208a
| * | Merge fixes from trunk.drh2019-12-13
| |\ \ | | | | | | | | FossilOrigin-Name: 9c471195f6d3e4b00e2d0f909b306a4036352082dca5f016a8eece226e82163d
| * | | Tie up the loose ends in the ExprList size reduction.drh2019-12-13
| | | | | | | | | | | | FossilOrigin-Name: 59d0f3afe5249a2a6453fe7bc810c2c7beb896d3800174c7c90f9304c0b1ad88
| * | | Work toward reducing the incremental size of an ExprList object to 24-bytedrh2019-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | per entry, from 32-bytes (on a 64-bit machine). This helps the new mini-lookaside allocator to run better by avoiding excessive reallocs. The current change mostly works, but still has a few loose ends to tie up. This check-in is merely a snapshot to save my work. FossilOrigin-Name: fdda76cfb01bf2b19522ac4558b443634d28a69b0828677c42682b645eae1f3b
| * | | Change the name of the Expr.a.zName field to zEName, so that it has a namedrh2019-12-12
| | | | | | | | | | | | | | | | | | | | | | | | that is distinct from other fields and variables and is hence easier to grep for. FossilOrigin-Name: d3783357f8fa76c42a86f12b214522f0388c37773c36ab8c5ce0623abbc4436a
* | | | Experimental branch with new sqlite3_db_config() options that could possibledrh2019-12-31
| |_|/ |/| | | | | | | | | | | | | | enhance security for applications reading potentially compromised database files. FossilOrigin-Name: 96a2db2612f2e47bbec0e374a242820c88f03c42ccbf8467abccaef41469bae2
* | | Fix a problem involving window function aliases being referenced from ↵dan2019-12-27
| |/ |/| | | | | | | sub-selects. FossilOrigin-Name: e3b5fc05c00fc58be7a7c94ce1d97a5b05113f39aba03df64aab08364f85616b
* | Ensure that there is a containing SELECT statement when processing adrh2019-12-13
|/ | | | | normal aggregate function as if it were a window function. FossilOrigin-Name: c1014e80b26131200a115beb86929a8f0ded2dd65b075e47373346c0f170576a
* Factor out the conditional (which is only true for rare errors) from thedrh2019-12-12
| | | | | | | | notValid() function in resolve.c, for a performance improvement and size reduction. Also cause failures to set the Expr node to a NULL operator so that it does not cause problems later in case PRAGMA writable_schema=ON has been set. Test cases in TH3. FossilOrigin-Name: c6af9f655b73200ecc0c4189698e421af6ca584babdc76e73a36d468b2eea1f9
* Rename a local variable to avoid masking a function parameter and thusdrh2019-12-09
| | | | | causing a harmless compiler warning. FossilOrigin-Name: f065cf003bd2a3a580cb5b9fa2eacd8be075fe8c2bbc5688e9a9406abbfb3804
* The previous check-in was not quite correct, and introduced a new problemdrh2019-12-09
| | | | | with the USING clause. Use this version instead. FossilOrigin-Name: ed28aaa4851202111a502f883ca06359d89b25bba4055c29d7bce2b501cfcc68
* Ensure that the SrcList_item.colUsed field is set correctly (set to have adrh2019-12-09
| | | | | | 1 for all columns of the table) when a generated column appears in the USING clause of a join. FossilOrigin-Name: 1923efb283e8840fa7436eb20b9d2174ef7cace1690d3b97b572a0db2048b8e3
* Fix incorrect column-usage accounting associated with generated columnsdrh2019-12-08
| | | | | and added by check-in [6601da58032d18ae]. Fix for ticket [b92e5e8ec2cdbaa1]. FossilOrigin-Name: 9d75e1ccc72e9f536f45df3b24e9ecd25076cc1f7cf16b806b19e0e1b68e8326
* Fix a harmless compiler warning.drh2019-11-22
| | | FossilOrigin-Name: 34343c4b0657767f2676a2a9feb670cf000824e3eadfb1a6d87b57404191d8f9
* Whenever a generated column is used, assume that all columns are used.drh2019-11-21
| | | FossilOrigin-Name: 6601da58032d18ae00b466c0f2077fb2b1ecd84225b56e1787724bea478eedc9
* Always disallow the use of non-deterministic functions in CHECK constraints,drh2019-10-30
| | | | | | | even date/time functions that use the 'now' or similar keywords. Provide improved error messages when this requirement is not met. Ticket [830277d9db6c3ba1] FossilOrigin-Name: 2978b65ebe25eeabe543b67cb266308cceb20082a4ae71565d6d083d7c08bc9f
* Minor adjustments for clarity and test coverage.drh2019-10-23
| | | FossilOrigin-Name: 30065716878d4058e75eb510b0b27b68e5193d04625eb173210de8061f20f499
* Initial experimental code for generated column support. Non-functional.drh2019-10-16
| | | FossilOrigin-Name: 11d472c1df707b8d03ec57d8fc582a34f5eb89a9d02a154a9871650c65065b45
* Test for an OOM condition in resolveAlias().drh2019-09-26
| | | FossilOrigin-Name: 322eca7f6ad2234059669015aabb773a790e8bc3da95431c9c851ff5342c969b
* Fix a window-functions problem that could occur if an ORDER BY clause ↵dan2019-09-26
| | | | | contains an alias for a window-function that is not a top-level expression. FossilOrigin-Name: 1cc6cf6407c6e25aeafeca379a93d0ad2614839c07fb3644e46926fce5f1cfab
* Fix the likely(), unlikely(), and likelihood() functions so that they havedrh2019-08-22
| | | | | | no affinity, just like any other function. Ticket [7e07a3dbf5a8cd26] FossilOrigin-Name: 44578865fa7baf9760e355691ca9ce753295aaba7a4ee0bba29d4f85d9335bab
* Provide the SQLITE_DIRECTONLY flag for app-defined functions that prohibitsdrh2019-08-15
| | | | | the use of those functions within triggers or views. FossilOrigin-Name: fc745845d8d76adc165575e2192f4176e3c28e614c72571d56f4011560499fe1
* Ensure that SQLite does not attempt to process incompatible window functions ↵dan2019-08-15
| | | | | in a single scan. Fix for [256741a1]. FossilOrigin-Name: 4f5b2d938194fab7627486e2ced633def2c90d9d3328e3700612feb9dbfa3d9a
* Fix harmless compiler warnings.drh2019-08-08
| | | FossilOrigin-Name: 1eef4ddea9a2a8c97b97183402c774caa40ef906ea9cccade307381b29a9785d
* Fix a case of the Expr.affinity to Expr.affExpr refactor that was misseddrh2019-08-08
| | | | | in the [a29f2a7d07beff64] check-in. FossilOrigin-Name: 83450d10707e2c7c075f3930a8c231c49c593b9cdf0e6097b0187eb877755d2d
* Refactor field Expr.affinity into Expr.affExpr to avoid confusion with otherdrh2019-08-05
| | | | | | fields and variables named "affinity" and display affExpr it in sqlite3TreeViewExpr() output. FossilOrigin-Name: a29f2a7d07beff64e489e8f824babc6228c4a499fadc0ee701caa60a63baadcd
* Fix a problem with renaming a table when a view or trigger within the schema ↵dan2019-08-05
| | | | | uses a FILTER with an aggregate function that is not currently registered with the database. FossilOrigin-Name: 2ac0e42f8ab7a9184c2a2efd13bd50ab51bc01f9f34e9e63591fd18db02dff54
* Fix a problem in ALTER TABLE triggered by views or triggers that include the ↵dan2019-08-01
| | | | | construction "ORDER BY true" or "ORDER BY false". FossilOrigin-Name: 8168021f9ab5fb8b4888257963c9ec68fd1dfeedaf6bba4b8e07438001d0be0f
* Consolidate the removal of Window objects from the Select.pWin list intodrh2019-07-22
| | | | | a single subroutine. FossilOrigin-Name: e46b2afc99329c43de08d4a2e6ade4d2239d7409c5d5626bf272a3e0dd24d1b4
* Remove Window objects from the corresponding Select.pWin list when they are ↵dan2019-07-22
|\ | | | | | | | | deleted, as they are, for example, when the ORDER BY clause is optimized out. FossilOrigin-Name: fd7316cda0fdfe86985f41a97dff3beba188606ec9bc6fef38a686a6976a6e01
| * Remove Window objects from the corresponding Select.pWin list when they are ↵dan2019-07-22
| | | | | | | | | | deleted. FossilOrigin-Name: d23f33168222dfa40a67dc7de58057418151989e81429e4af47617e86db04667
| * Make sure any window definitions in an ORDER BY clause are removed fromdrh2019-07-20
| | | | | | | | | | the SELECT statement if the ORDER BY clause gets optimized out. FossilOrigin-Name: 23b119671f0be3c6b72cf2dc5f7707a0626766db7aa56529ab00d33d1a0a1bee
* | Fix a problem with renaming tables when the schema contains an invocation of ↵dan2019-07-22
|/ | | | | a currently unregistered aggregate with a FILTER clause. FossilOrigin-Name: bd37ce3fb8dee8d538f6afc0bfc13cdc3ebdd504e6461f0130c6ecc8af585f68
* Fix a problem with renaming a table when the schema contains an invocation ↵dan2019-07-19
| | | | | of a window function that is not currently registered. FossilOrigin-Name: ff290feb97f689cf6ce4162d6aa36f9f9dcf1bff3096847d53a85f39f728d2de
* Fix error handling for the case where a window function is passed the wrong ↵dan2019-07-13
| | | | | number of arguments. FossilOrigin-Name: 871796bb19e61c1282d8ac97a82d8b57bde50f2a2a08004ab53136d77c138df4
* Rework the FILTER clause implementation to share more code with window ↵dan2019-07-13
| | | | | functions. FossilOrigin-Name: 5dac8c38dfc3f41c5c8fb49ca35de7fd1b21f269d72e8ba6ba59ed0a4030a54d
* Minor performance improvement in sqlite3ExprDeleteNN().dan2019-07-10
| | | FossilOrigin-Name: bcc8b38ac75b731a4cd2873ab83f423be036467a511b617c779869de9bbb5383
* Add tests for the FILTER clause. And a bugfix.dan2019-07-03
| | | FossilOrigin-Name: 28aa1702f7f0334abd1b30e7aa48ea3679539b11bfbba32bc9f0d6049cf18a7b
* Experimental implementation of FILTER clause for aggregate functions.dan2019-07-02
| | | FossilOrigin-Name: 1f1ae2d6ac8dcbb62e5aa3dc17bc67d559cb565fc0d0a8c00a596075d35f8130
* Improved interface to double-quoted string literal enabling/disabling.drh2019-06-17
| | | FossilOrigin-Name: 923cfd53fcff2fcb91530bf819d2ecb0eda3f6a27dae29c7460f9ce3a3ffce7b
* Add SQLITE_DBCONFIG options LEGACY_ALTER_TABLE, NO_DQS_SCHEMA, and NO_DQS.drh2019-06-14
| | | FossilOrigin-Name: 1fad20925efa70d0c242e9cba8fa55456fb07a81229c1068da84c6e27d0c0be8
* Handle expressions like "expr IS TRUE COLLATE xyz" in the same way as "expr ↵dan2019-06-12
| | | | | IS TRUE". Fix for [4d01eda8115b10d1]. FossilOrigin-Name: 5c6146b56a75a94f4baa10e95407c54dd0b9314a57a8702a4b96b15c4d7ac48c
* The affinity of the unlikely() function and its cousins should be "none".drh2019-06-11
| | | | | Ticket [0c620df60bffd9ef] FossilOrigin-Name: 614ecb0af47038848e8ba2aed6b92db6f33ddc4aea6361795dbde440380f5a35
* A minor variation on check-in [1685610ef8e0dc] which (hopefully) makes thedrh2019-05-20
| | | | | | | | logic a little easier to follow. Also disallows the use of the double-quoted string hack in the query expression used for VACUUM INTO, which is not strictly required, but moves us toward the goal of disallowing the double-quoted string hack everywhere. FossilOrigin-Name: 3e1b55f3ab85710ed81574904718205c7370b5f0b5a41029e961486d2e3f37c7
* Disallow string constants enclosed in double-quotes within new CREATE TABLE ↵dan2019-05-20
| | | | | and CREATE INDEX statements. It is still possible to enclose column names in double-quotes, and existing database schemas that use double-quotes for strings can still be loaded. This addresses ticket [9b78184b]. FossilOrigin-Name: 1685610ef8e0dc9218b02461ceab14dc6114f4f5ef7fcda0da395094aff443e1
* Fix a stack overflow that could occur when renaming a table that has a ↵dan2019-04-29
| | | | | trigger containing a window function invocation that itself contains a specific syntax error. FossilOrigin-Name: c621fc668c6538f9f5bdac204f012c64998679a61aa8e224d212503820224c09
* Recover a some of the performance lost by window function alias fix twodrh2019-03-29
| | | | | check-ins back. FossilOrigin-Name: 965cbcea117835d2c6d2ec58c8025b227f491c35805e282cb31228436bc6bec1
* Prevent aliases of window functions expressions from being used as arguments ↵dan2019-03-28
| | | | | to aggregate or other window functions. FossilOrigin-Name: 1e16d3e8fc60d39ca3899759ff15d355fdd7d3e23b325d8d2b0f954e11ce8dce
* Fix a problem with a window function in a correlated sub-query where at ↵dan2019-03-22
| | | | | least one reference to the outer SELECT appears in a FROM clause sub-select. FossilOrigin-Name: 9aca86f98388ff66b2bccb3fbfc486a3931398d2a8da139f905826ae2cdbb205