aboutsummaryrefslogtreecommitdiff
path: root/src/sqliteInt.h
Commit message (Collapse)AuthorAge
...
* Fix typos in comments. Provided ".wheretrace" debugging output for thedrh2024-04-02
| | | | | | interstage heuristic module. Do omit automatic index loops in the interstage heuristic. FossilOrigin-Name: 186dcae19e249db36de15f295999cff25063b54ee3d5d481cd2ba99b6d13148e
* Return the error "ambiguous column name: rowid", instead of "no such column: ↵drh2024-03-19
|\ | | | | | | | | rowid", when a "rowid" reference is ambiguous. FossilOrigin-Name: 0615bdae2dfc70c7e0416a28e89ffde31fa44ed4b3dac46e5ef20eed0d89e58c
| * Fix another problem from [c63e26e705f5e967] involving infinities and thedrh2024-03-19
| | | | | | | | | | | | Kahan-Babushka-Neumaier summation algorithm. Problem reported by [forum:/forumpost/23b8688ef4|forum post 23b8688ef4]. FossilOrigin-Name: 45d272ef38d5ee6189f81369aefb8e3ac35868a67687012d93c84f2bbc42520a
* | When compiled with SQLITE_ALLOW_ROWID_IN_VIEW, rowid-in-view is on by defaultdrh2024-03-19
|/ | | | | | but can now be turned off using SQLITE_TESTCTRL_ROWID_IN_VIEW. Without the compile-time option, rowid-in-view is always off. FossilOrigin-Name: 8a6196ab29052071be753c5c77ac945c2d62ecc8019c6160f954eafe34ab05a8
* Add assert() statements to validate access to the SrcItem.u1.nRow union member.drh2024-03-18
| | | FossilOrigin-Name: 21f616d9b948efca441f8d45d0a95f4c052ce8b6daec7fa582ad9a00b82ca570
* Improvements to EXPLAIN QUERY PLAN output for multi-row VALUES claues.drh2024-03-18
| | | FossilOrigin-Name: ac6f095e13e43d66c06552c8b01f6bec3407c9d41a34c4cdb0be57b0b828ad0d
* Further expand the scope of usage for the enhacement to expr-is-constant.drh2024-03-16
| | | FossilOrigin-Name: d7eadcf7dd089f0f4aa963c58f0df32edd951368c9906375fd62b0a61cd393b8
* Enhance the sqlite3ExprIsConstant() function so that it recognizesdrh2024-03-16
| | | | | | constant functions. So far the enhancement only applies to the multi-row VALUES clause, but it could possibly be applied in many other places. FossilOrigin-Name: c9e0488c6c0135932b6e76b0f3f3acd69ef65327e0a54daa59777f35da1aef26
* Attempt to reduce the memory used by VALUES clauses in as many statements as ↵dan2024-03-11
| | | | | possible, not just INSERT. This branch still has problems. FossilOrigin-Name: 17d1f7cfabc7593d0725051b0c7c9619a23a482265f30f15ab9493fef5caeeb0
* The NOT NULL strength reduction optimization from [de9c86c9e4cdb34f] shoulddrh2024-03-08
| | | | | | | | be applied to the WHERE clause only. Otherwise, the operand of the IS NULL or IS NOT NULL operator might be a reference to a bare column of an aggregate table, and we can't tell if it is NULL or not based only on its NOT NULL attribute. [forum:/forumpost/440f2a2f17|Forum post 440f2a2f17]. FossilOrigin-Name: 51704feae224eff601db5607f8651da11b3c2ed8a58ffe5b6ee8260cab50695b
* Silently ignore redundant ON CONFLICT clauses in an UPSERT. Only the firstdrh2024-03-08
| | | | | | | ON CONFLICT for each index is active. Do not issue an error, since that might break legacy queries. But ignore the redundant ON CONFLICT clauses to prevent problems such as described in [forum:/forumpost/919c6579c8|forum post 919c6579c8]. FossilOrigin-Name: d0ea6b6ba64dba9d68c2b391ccf1171ea96fcdd7409dafdb2b697accb00246b8
* Allow "_" characters to appear between any two digits in an integer, real or ↵dan2024-02-27
|\ | | | | | | | | hexadecimal SQL literal. FossilOrigin-Name: 0e6700f43f133510c8049b2c5a2610cb3be29da7ed4d39b1fa65dc22c4cf529b
| * Add extra checks for the validity of a numeric literal to ↵dan2024-01-23
| | | | | | | | | | sqlite3DequoteNumber(). FossilOrigin-Name: d57407ef59baf699b72c8c4859abfaa7977dd41f6f16eb8fe1d53a68806eb966
| * Allow "_" characters to appear following any digit in an integer or real SQL ↵dan2024-01-20
| | | | | | | | | | literal. FossilOrigin-Name: 401650aaccbc99246bd4e1ff37a28b78f528178aee2f294d87b9f7fecd7432bb
* | Rename the TF_StatsUsed flag to TF_MaybeReanalyze, to more accuratelydrh2024-02-16
| | | | | | | | | | reflect its usage. No logic changes. FossilOrigin-Name: b4790da5e0d6f0f617e6c3a17fc2606842e41cab14339392abd335410fec0aa3
* | Use __ppc__ instead of __POWERPC__ to identify 32-bit PowerPC processors.drh2024-01-28
| | | | | | | | | | [forum:/forumpost/34794846ce|Forum post 34794846ce]. FossilOrigin-Name: c974d9313b60591bcd554c3ec652a8040d382930e30778e6be8a875145b0b3da
* | Fix userauth so that it works together with SQLITE_OMIT_SHARED_CACHE.drh2024-01-22
|/ | | | | | | ([forum:/forumpost/0bfc5888a384d430|Forum post 0bfc5888a384d430]). However, also change to code to issue a deprecation warning whenever SQLITE_USER_AUTHENTICATION is used. FossilOrigin-Name: 249048b0cbc37058c229a785182e07b46029584aff9c385269b0b93503153476
* Extra steps taken to avoid using low-quality indexes in a query plan.drh2024-01-01
| | | | | | This branch accomplishes the same end as the nearby enhanced-stat1 branch, but with much less change and hence less risk. FossilOrigin-Name: c030e646262fee43a59b45fdc1630d972f8bf88ac3c142b6bdaf4cbb36695a4f
* Enable SQLITE_DIRECT_OVERFLOW_READ unless it is specifically disabled usingdrh2023-12-28
| | | | | the -DSQLITE_DIRECT_OVERFLOW_READ=0 compile-time option. FossilOrigin-Name: 630604a4e604bfb36c31602917bfa8d42c10c82966d0819932bf8f827b9158b8
* Pass subtype information through the aggregate ORDER BY sorter fordrh2023-12-14
| | | | | aggregate functions that use subtype information. FossilOrigin-Name: 3536f4030eab6d650b7ed729d2f71eb6cc3b5fbe16b4e96b99008d66522aaccb
* Improvements to UTF8 handling, and especially the handling of invalid UTF8,drh2023-12-13
| | | | | in the JSON routines. FossilOrigin-Name: 1b229c1101d6c384a30f343c5e47b471ab084b2d8e81170eb8f642afc1c67e3b
* Rename the new test-control to SQLITE_TESTCTRL_JSON_SELFCHECK. Make it sodrh2023-12-11
| | | | | that the current value of the setting can be interrogated. FossilOrigin-Name: 7aff1d9a4cb17ecd5abab21ab032f35a78741dd641ddd8cbcc85fc4a81a0707d
* Add SQLITE_TESTCTRL_VALIDATE_JSONB, which if enabled under SQLITE_DEBUG causesdrh2023-12-11
| | | | | cross-checking of generate JSONB. FossilOrigin-Name: b410a4db74a650003539ffaaea18519d5159b504daac47db6a4874b730f40ac8
* Work around LLVM's newfound hatred of function pointer casts.drh2023-12-06
| | | | | [forum:/forumpost/1a7d257346636292|Forum post 1a7d257346636292]. FossilOrigin-Name: ec0ae4030968c782af48d1c776351c14b2ada21d40aeb97915f33df30706e18f
* First attempt to get the JSON text-to-binary cache working. All test casesdrh2023-12-01
| | | | | pass, but the cache seems not to help much. FossilOrigin-Name: 25ed295f300fea6185104a73721076bccd2b2a6e411c78564266fa6dca4ff70c
* Merge recent trunk enhancements and fixes into the jsonb branch.drh2023-11-10
|\ | | | | FossilOrigin-Name: 091a5f058dfe2115fb9213655b34f00bcec80aebb299b571975cfe4ecd5ec206
| * Do not replace expressions that return subtypes with values taken from andrh2023-11-09
| |\ | | | | | | | | | | | | index. FossilOrigin-Name: a35d13db09e32ee339f3983fe36b073714753ee3d39f577ae8d20596d7adc3eb
| * | Omit the new SQLITE_VALUE_SUBTYPE name. Stay with legacy SQLTIE_SUBTYPE.drh2023-11-09
| | | | | | | | | | | | | | | | | | | | | Add extra documentation to sqlite3_value_subtype() and sqlite3_result_subtype() indicating that the SQLITE_SUBTYPE and SQLITE_RESULT_SUBTYPE properties are required on functions that use those interfaces. FossilOrigin-Name: 563ad3be60d22c45f1c5b9a3e67738593f8b38f137147c56514166fbabf95365
| * | Make a distinction between functions that consume subtypes and functionsdrh2023-11-08
| |/ | | | | | | | | that generate subtypes. FossilOrigin-Name: 48a92e3ad855227188a4c5afe4abbb7171761cf6fc930660084d9abeecfd91d9
* | Merge recent trunk enhancements into the jsonb branch, and especially thedrh2023-11-08
|\| | | | | | | | | finer-grain characterization of JSON function properties. FossilOrigin-Name: 72393b003f9f8675e4a124dddd09607b5b34ddefe56716b283c68c0982fb3d96
| * More precise characterization of JSON functions. Indicate when functions mightdrh2023-11-08
| | | | | | | | | | return JSON (subtype 'J') and when they make use of the function argument cache. FossilOrigin-Name: b2b62546c4a5e9dccb8aa0cb8eda228d662c69159e320b01a377317bc909e89f
| * Update the documentation to the sqlite3_set_auxdata() and sqlite3_get_auxdata()drh2023-11-07
|/ | | | | | | | | routines to make it clear that they do not work as one might expect when they are called during query planning, instead of during query execution. The JSON routines misuse those interfaces, so add a special flag to JSON routines that prevents them from being invoked during query planning. Fix for the problem in [forum:/forumpost/a655ee159eca1ea5|forum post a655ee159eca1ea5]. FossilOrigin-Name: 796a23f9ee33da0803844a2f40c1733db894cc4ef7fbaa1fa94af6af2d3b873b
* In the previous check-in, use a u32 instead of an int, to make it easier todrh2023-11-02
| | | | | prove that the integer will never overflow. FossilOrigin-Name: 51002079e0b499e116415189a913a238e95ed9766a8af9d042928f4263861a87
* Fix a spurious "misuse of aggregate function" error that could occur when an ↵dan2023-11-02
| | | | | aggregate function was used within the FROM clause of a sub-select of the select that owns the aggregate. e.g. "SELECT (SELECT x FROM (SELECT sum(t1.a) AS x)) FROM t1". [forum:/forumpost/c9970a37ed | Forum post c9970a37ed]. FossilOrigin-Name: 4470f657d2069972d02a00983252dec1f814d90c0d8d0906e320e955111e8c11
* Handle the case where a virtual table xBestIndex method called while coding ↵dan2023-10-26
| | | | | a trigger fired by a top-level statement with a RETURNING clause prepares a statement that also contains a RETURNING clause. FossilOrigin-Name: ec6bffa3b0fbf7cdee852cb0208de1f5869dafd88e2ee64c23cec89634219adc
* Add the SQLITE_CHANGESETAPPLY_FKNOACTION flag to sqlite3session.h, for ↵dan2023-10-20
| | | | | passing to sqlite3changeset_apply_v2() to cause all foreign key constraints to behave as if they were declared NO ACTION. FossilOrigin-Name: fc9f82ea084159eaf3dd1757b96d17d1201b00c4e06455a7dcd8067172b25f28
* Simplify the Expr compression logic slightly by adding the new EP_FullSizedrh2023-10-19
| | | | | | property to expressions that are exceptions to the rule and should not be compressed. FossilOrigin-Name: d5ae82ec52eafed5e3dc8c9d99685f6523fce7d973ef7e8d9d75ed9b8912426a
* Make sure all terms of the ORDER BY within an aggregate go through aggregatedrh2023-10-18
| | | | | analysis. Do not attach an aggregate ORDER BY to a window function. FossilOrigin-Name: 16f3805514a741405f70e0ee3b5a6b67720bc75719372e82daa4136fe411ea2b
* ORDER BY on aggregates seem to work, at least for simple smoke tests. Lotsdrh2023-10-18
| | | | | more testing is needed though. Surely there are many bugs. FossilOrigin-Name: 64c12a835b6f1df8f2f5f4a41de083f6b3fc7f8030042c6aac0082382cd9cc4d
* Enhance the parser so that it can accept an ORDER BY clause on a functiondrh2023-10-18
| | | | | | invocation. For this incremental check-in, the ORDER BY clause is currently ignored. FossilOrigin-Name: 3a98ff24bf468ed42d410a9a12d9f9b2ca154c7babe99fd6bc6f7b0565e0d132
* Fix a harmless compiler warning about variant types for a pointer function.drh2023-10-17
| | | FossilOrigin-Name: 37ff0d8e7f91c32e8c53bb015280be47c66bf599281b640a8d3fd41335b55289
* Fix a compiler warning caused by the previous check-in.drh2023-10-09
| | | FossilOrigin-Name: 7e8768bf8b4002b1c287f2bc95262548e2ae81b437936154f2bb1ea1f739a904
* Turn on SEH by default when building using MSVC.drh2023-10-09
| | | FossilOrigin-Name: f57e8275cf1ab3ad8027044cda0893282d1c403a5aa9fabbb1c7de280597b5cd
* Avoid an error when parsing a schema that contains indexes with WHERE ↵dan2023-09-23
| | | | | clauses containing unknown collation sequences. FossilOrigin-Name: d5dd39e37ab994ce5d75688a40c6494c17807431529e85eb2b11d58f367fe232
* In partial index scans, if the WHERE clause implies a constant value for a ↵dan2023-09-22
| | | | | table column, replace occurences of that table column with the constant. This increases the likelihood of the partial index being a covering index. FossilOrigin-Name: 66ed7abdfa228abde2052e3988589371f0e49b11582b1b4a83255d2df3a0aefa
* Fix resolution of unqualified "rowid" identifiers in queries with nested joins.dan2023-09-15
| | | FossilOrigin-Name: bbcbd3d537d6790373d97f59386b8ce7fa2177db572af0f1babe058a76e25cc3
* Allow expressions like "<tbl>.rowid" to refer to implicit rowid columns of ↵dan2023-09-15
| | | | | tables in nested FROM clauses. FossilOrigin-Name: 59a1bbc69f5dbb33418fa4b383393fb13a46bc1e531577da8ad54ae2fad5a10e
* Add support for the sqlite3_get_clientdata() and sqlite3_set_clientdata()drh2023-09-11
|\ | | | | | | | | interfaces, to better support JNI. FossilOrigin-Name: 9806c0dd2802d68b67c25c4f3347ed532f9a98b051e775d34e9182dd2f099891
| * New experimental API for attaching client data to a database connection.drh2023-08-30
| | | | | | FossilOrigin-Name: d542837fdb42ebe810fc99225860d2cc7e6dd829a635bde820a09beff6bcb481
* | Do not make assumptions about the byteorder of PowerPC processors.drh2023-09-04
|/ | | FossilOrigin-Name: 4a2498fed4c5436fbcd4179db85e2741fdab37d42b0eebf12f41ec4573ce2c61