aboutsummaryrefslogtreecommitdiff
path: root/src/sqliteInt.h
Commit message (Collapse)AuthorAge
...
| * Add a new optimizer disabling bit to disable just the UNION ALL branch of thedrh2022-04-25
| | | | | | | | | | query flattener. FossilOrigin-Name: c0f9ebab5455d8541a562122d3270b95ce571c3fd870b0048dda2b036c2b66c0
* | Fix minor problems with the new join table name resolution logic.drh2022-04-23
| | | | | | FossilOrigin-Name: 3a6b0db4519072dbd41b1c105bf1a0c6b4dd90380e94a5662645d8d41483c707
* | Add the ability to access the USING columns of the right or left tablesdrh2022-04-22
|/ | | | | | of an OUTER JOIN even if the OUTER JOIN is in parentheses. Prototype code only. FossilOrigin-Name: c3a427575fe71de3061495059e253c72c7213e2925ee2873e4f59fc73bfae103
* Improved tracking of nested SELECT objects used to implementdrh2022-04-20
| | | | | parenthensized FROM terms. FossilOrigin-Name: 0da2232624571f4020c05d775ea518514d748fba8dacd4caba2e2e6ed1ae399f
* Improved comment on the JF_LTORJ constant definition.drh2022-04-19
| | | FossilOrigin-Name: e0744da95fc010dc3a2e030ff491bcfa08a18691ee6ebc7d4e8aab3850f56eec
* Disable the unused EU4_EXPR mode for the IdList object.drh2022-04-18
| | | FossilOrigin-Name: 5bcf4aa3bf6b1b9f47142bc37683bb3bf0adeffd052d07449af7c9b415add052
* Since the query planner is unable to cope with a LEFT JOIN on the left-hand sidedrh2022-04-16
| | | | | | of a RIGHT JOIN, detect that situation early and raise a parsing error. This is a temporary measure that needs to be fixed. FossilOrigin-Name: 6d5d6e0403241c99ab4a47d7b6eedcd8ebc615a8ca8d66d7e81171f901b170d7
* When expanding "*" in the result set of a SELECT, do not attach a table namedrh2022-04-15
| | | | | to columns that are in subsequent USING clauses. FossilOrigin-Name: 91530990e018580ec5322ace6f0c369a32a3529a0bfb4defb25ca20223a2a80f
* Enhance the IdList object to exist in a single memory allocation (rather thandrh2022-04-15
| | | | | | a separate allocate for the base object and the array of IDs). Also permit an IdList object to store an Expr pointer together with each name. FossilOrigin-Name: 40f3c95871e6f40f287ef2756abafb8fc56dffdd0af69436e5c7d8e95022d94e
* Rerun the subroutines that compute row-values if necessary from withindrh2022-04-14
| | | | | the RIGHT JOIN body subroutine. FossilOrigin-Name: 9b9038bcd0ab5c4f01661456635526cef764f854ff24018a5e6e43825d07eb59
* Show LEFT and RIGHT JOIN processing in the EXPLAIN QUERY PLAN output.drh2022-04-11
| | | FossilOrigin-Name: d91faeffea5cf0585fb71e5311fdcc6b8be85c7e9c732050b4448e617c970101
* Make a distinction between (1) WHERE clause constraints, (2) ON/USINGdrh2022-04-11
| | | | | | | | constraints on outer joins, and (3) ON/USING clause constraints on inner joins. Formerly, there was no distinctionb between 1 and 3, but RIGHT JOIN needs to know the difference. Make RIGHT JOIN aware of this difference and add test cases. FossilOrigin-Name: 0f6f61c3664cc87209c2a6f9b6df3a750d1510723fcde209c33db8feaf48bcf3
* Merge the Expr.w.iJoin name change from trunk into the right-join branch.drh2022-04-11
|\ | | | | FossilOrigin-Name: 29927926eb32acd963e2c496ad67d55177615ec4150fd218afaf2f9a730cabec
| * Rename the Expr.w.iRightJoinTable to just Expr.w.iJoin, so that the wordsdrh2022-04-11
| | | | | | | | | | | | "RightJoin" in the former name do not lead readers to believe that this has something to do with RIGHT JOINs in particular. FossilOrigin-Name: e8c00442d2daedec079748d13147bf73b0ec3c3cf432bce2cdccb706bdff2853
* | Preliminary code to support RIGHT JOIN. Everything seems to work, except thatdrh2022-04-08
|/ | | | | | the code to compute the unmatched rows for the RIGHT JOIN has not yet been added, so the result of a RIGHT JOIN is currently the same as an INNER JOIN. FossilOrigin-Name: 415abd6731b8e8a605adabfa6066c8a852a8531c300df41325d5f7e75cae5a70
* Enhance the sqlite_dbpage fix at [/info/642a0b4752743216|check-in 642a0b4752743]drh2022-04-08
| | | | | | | from about a month ago such that it still takes a transaction on all attached databases, but it only starts a read transaction for read-only operations, rather than starting a write transaction for everything. FossilOrigin-Name: 8efd61e8518594e3e9c84681fc35796a78fe8885a97ad4dd19f1573ee8065b18
* The ".testctrl optimizations 0x400000" command disables the generation ofdrh2022-04-07
| | | | | | | | | OP_ReleaseReg opcodes. OP_ReleaseReg opcodes are usually only generated for SQLITE_DEBUG builds and are used to verify that registers are descoped propertly. But they can get in the way of code understanding when studying bytecode dumps. So this new optimization setting is provided to temporarily turn OP_ReleaseReg opcodes off. FossilOrigin-Name: fa5276725f246cef9d58b27c1e617ee3f873f7a9b88284a4e8fc453ebda338bc
* Improved technique for parsing the ON and USING clauses of a join is fasterdrh2022-04-07
| | | | | and uses less memory. FossilOrigin-Name: 158156a3e3d50042cafc75dea3aaaa68b1f2efb9c3d178518ea6e68e32e0d21c
* Improvements to the display of AST for DML statements.drh2022-04-06
| | | FossilOrigin-Name: 84c239a071cfaf8af107646f01ef269e2915fd2384e95927d484f2e408ba6bbf
* Attempt to show triggers in the TreeView output from DELETE, INSERT, anddrh2022-04-06
| | | | | UPDATE statements. FossilOrigin-Name: b0939d6f4d94b45dce53ace6295508a67d574cc72bd6977623bf77065b3c4e64
* Corrections and updates to the header comment describing thedrh2022-04-06
| | | | | TriggerStep object. No changes to code. FossilOrigin-Name: abb34c0830a49d4f4e277ddd17e710529e87cba7061f3546079dbba2f82b020e
* Add the sqlite3Show() family of debugging interfaces under SQLITE_DEBUG.drh2022-04-06
| | | | | | No changes to deliverable builds. Rename SQLITE_ENABLE_SELECTTRACE to SQLITE_ENABLE_TREETRACE in ctime.c. FossilOrigin-Name: bc33168cf1f48caf848c2dc5c3ae15e4efff8c0378f944eb5398a245139a2b35
* Rename debugging defines and variables from SELECTTRACE to TREETRACE (anddrh2022-04-06
| | | | | | similar) since the functionality has how expanded to include data structures beyond SELECT statements. Should not affect deliverable builds. FossilOrigin-Name: 393fa32e188a017f431372b54037cb31e885030542f00d0bfd59da9d9db5c014
* Add additional tree display routines for DELETE and UPDATE. No changesdrh2022-04-06
| | | | | to deliverable code. FossilOrigin-Name: fbd288ff3d4ea47cd324b5952e7754a465901844f2d950f0860d4488d5b6eb9f
* Add new diagnostic "sqlite3TreeView" routines for IdList, Upsert, and fordrh2022-04-06
| | | | | | INSERT statements. This is all debugging code. There are no changes to release builds. FossilOrigin-Name: f3084122039bcb30c8617f5f432009a49be8b488235850a1f10ef862c91560b2
* New macro ROUND8P() which works like ROUND8() but assumes that the input isdrh2022-04-01
| | | | | | already a multiple of the size of a pointer. It becomes a no-op for 64-bit machines, giving a small size reduction and speed boost. FossilOrigin-Name: d126f304cde66ebfe21a4967c22dcba0bac27cbce56318b14bd50051e49c978c
* Fix a harmless compiler warning.drh2022-03-11
| | | FossilOrigin-Name: 5d739aff96c47146dba72fd76fed62d4e43ded09b32246fdde13d5467f713135
* Refactor Window.pFunc into Window.pWFunc to disambiguate from other uses ofdrh2022-03-10
| | | | | the variable or field named "pFunc". FossilOrigin-Name: d9475ebcde169272ad7b1d3a82b2326df55dafc68217bfecd9fcd1f2b89efbd9
* Fix the sqlite_dbpage virtual table so that it starts a write transactiondrh2022-03-09
| | | | | on all attached schemas. FossilOrigin-Name: 642a0b4752743216271e4f855a465515ef7f6a985f280251e18d67e3d5fb694b
* Cache values of UnpackedRecord.aMem[0] into new fields of UnpackedRecord.drh2022-02-27
| | | | | This avoids extra indirections and saves about 750K cycles. FossilOrigin-Name: 7cf2d1f0396362aae7b93da75c2036d52ba86acba1cc90abca560bcf0314a22f
* Enhance SQLITE_TESTCTRL_LOCALTIME_FAULT so that is able to install andrh2022-02-10
| | | | | | alternative localtime() interface so that the localtime logic an be better tested. FossilOrigin-Name: 6e25cb0890e8cdc63c9a21e841844d066267fc32ad143527843f7c8d05612b53
* Enhance sqlite3_error_offset() to report the position of unresolveddrh2022-02-05
| | | | | identifiers. FossilOrigin-Name: 5b8d2577907abda10de29884716bacc10bff0df1451228a0ac40342dbea6d589
* Record the position of many identifiers in the parse using the newdrh2022-02-05
| | | | | | | Expr.w.iOfst field. This is done with the idea of providing offset results for sqlite3_error_offset() for a more kinds of errors, though that part is not yet implemented. FossilOrigin-Name: 32a3a53b62ab09ac2212905e7f42fe6f1b09d891e015203e5caf4cb16262f18e
* Add new interfaces to enable virtual table to process IN operator constraintsdrh2022-02-01
| | | | | all at once, rather than one element at a time. FossilOrigin-Name: eb84b80e1f6d8c32bf0c9e1731f0233de0160a13f714f766779ae01fdf504e7b
* Give the virtual table xBestIndex method access to (some) OFFSET and LIMITdrh2022-01-27
| | | | | clauses. FossilOrigin-Name: 74fa5757ee0a8499bcd6546dac1a3ecc6048ba9cff9e3e574e28e6e82e894a3d
* Make it so that any Parse object is always linked into the database conenctiondrh2022-01-24
| | | | | while it is active. Hence, an OOM will cause Parse.nErr to be set. FossilOrigin-Name: 6a45d8fe8bfbc11a5b86d25237e1f8bccfb0f22f3dcaf004ba797aeb57b365ec
* Make sure the sqlite3OomFault() routine sets an error in the Parse objectdrh2022-01-24
| | | | | if there is a Parse object active and linked to the database connection. FossilOrigin-Name: ad7aace761c6b21ba453eaf43c68d985be7cbd5a200fe0d2e27a0c7150f99874
* An attempt to integrate the JSON functions directly into the SQLite core,drh2022-01-06
| | | | | rather than holding them as an extension. FossilOrigin-Name: 583b47d865fb8d2c9ae4d3a4e70356a8a758978efb0a282f6b19775bf41fb748
* Clear the cache of triggers used to implement CASCADE foreign key constraintsdrh2022-01-02
| | | | | | whenever the schema changes. Fix for the problem identified by [forum:/forumpost/2831335356|forum post 2831335356]. FossilOrigin-Name: 5232c9777fe4fb13e1ecfe5b5d644e2c45d0514f95884dbed49a03fb9b67304c
* Simplify the sqlite3RunParser() routine by omitting the third parameter.drh2021-12-31
| | | | | Results in a binary that is about 100 bytes smaller and 1.4M cycles faster. FossilOrigin-Name: 6fb2a1bb0280d6e31291e3fd06bbcbbb28ef5fb27d3898e2327a50ac738ae1f3
* Move the pTriggerPrg and pCleanup elements of the Parse object up into thedrh2021-12-31
| | | | | | | section of that object that is persisted across calls to sqlite3NestedParse(). This fixes a memory leak [forum:/info/24bd1fef7e9323ef|reported in forum post 24bd1fef7e9323ef]. FossilOrigin-Name: 562805cf488a455cdc57adcb110fef9b5416d813d5eaeabacd28bccb76d7f39d
* When implementing a multi-way compound SELECT using merge, try to balancedrh2021-12-30
| | | | | the merge tree. FossilOrigin-Name: bb8522fe0dc54282ec13672eba9b44ee08f9cb55c1663f1699a61bf96ec1fd04
* Add the sqlite3_error_offset() interface. Use it in the CLI to providedrh2021-12-24
| | | | | better context for error messages. FossilOrigin-Name: b518ce77439852759bc0901071f36d622b1314c9bf3d29c279dfcc405188b975
* Factor out the logic that does quoting for the SQL quote() function, so thatdrh2021-12-10
| | | | | it might be reused for other purposes. FossilOrigin-Name: 8e98ba1eeb1a5a61b7cb2de337ef8bca3d07494266a50d62b9c6bc60ad0a955f
* Remove unused code and fix comments. Final cleanup before merging.drh2021-12-09
| | | FossilOrigin-Name: ce42039f5647b1f276acf5d9911528ecb47df1544a587def72c8cd6b2f664289
* Add SQLITE_TESTCTRL_LOGEST and enhance the LogEst utility program.drh2021-12-09
| | | | | Improvements to testability of bloom filters. FossilOrigin-Name: 88b43d798cc5aa59855e92d3e658aee9f0a5def6ffbc5db77af048d75ecdf8cc
* Omit the OP_FilterInit opcode. Use OP_Blob to initialize each Bloom filterdrh2021-12-06
| | | | | | instead. Size the Bloom filter based on sqlite_stat1 size estimates rather than a run-time measurement for improved testability. FossilOrigin-Name: 8a9036ee617a6ad93bfe827b0789773c49d3d45b085cb76fa4b9b20a41b79b97
* Attempt to vary the size of Bloom filters based on an estimate of how manydrh2021-12-06
| | | | | keys the filter will hold. FossilOrigin-Name: a7adcf69088cba4b86cc5731a45c9a5263af4355bc0a38f5225cab421c915f7f
* Run as many Bloom filters as possible before index lookups.drh2021-12-05
| | | FossilOrigin-Name: 06f6fefd67086896bc49272c6319545ff6c6792f18babe23aced27b60b032119
* Merge trunk fixes into the bloom-filter branch.drh2021-12-01
|\ | | | | FossilOrigin-Name: 0864bfbf079a98beaa484911edb17c3dc728e78eca231d4247b282fd824cc098