SQLite

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

86 events for the month beginning 2024-04-01 by user drh

Following month ↑
2024-04-29
17:44 New ticket [accfef33] Unicode output from the CLI subprocess not displayed correctly on Windows.. (artifact: 385fc2cf user: drh)
2024-04-26
19:10
Fix issues in LIMIT/OFFSET support for virtual tables. The first problem was reported by forum post c243b8f856. That report prompted an enhancement to the generate_series() (also included in this merge) which in turn identified other similar issues. (check-in: 5f6c079d user: drh tags: trunk)
17:09
Further fixes and improvements to the generate_series() enhancements on this branch. (check-in: b7d9bd7e user: drh tags: vtab-limit-fix)
14:36
Use hex flag masks rather than decimals in ext/misc/series.c. (check-in: a94e2cd0 user: drh tags: vtab-limit-fix)
13:38
Fix handling of LIMIT and OFFSET in virtual tables that are part of a compound SELECT. (check-in: 40421c1c user: drh tags: vtab-limit-fix)
13:30
Enhance the generated_series() table-valued-function to respond to LIMIT and OFFSET. Use this to add new test cases for LIMIT and OFFSET on virtual tables in a compound SELECT. (check-in: 408d47ec user: drh tags: vtab-limit-fix)
11:32
Fix the TreeView display of a LIMIT clause on a compound query. Debugging code only - not part of production builds. (check-in: 38f1e5ce user: drh tags: trunk)
2024-04-25
23:27 Edit [bbdf22e3d989f42b|bbdf22e3]: Mark "Closed". (artifact: 9bfd173e user: drh)
23:26
Improvement to the way that affinity is determined for columns of a compound subquery. The affinity is the affinity of the left-most arm of the compound subquery that has an affinity other than NONE, adjusted to accommodate the data types coming out of the other arms. (check-in: e6df846f user: drh tags: trunk)
17:52
Further improvements to the computation of affinity for compound subqueries: make sure that the selected affinity is compatible with a literal values in arms to the left of the arm that is used to determine affinity. (Closed-Leaf check-in: bbdf22e3 user: drh tags: compound-subquery-affinity)
16:55
Back out the previous change on this branch. In its place: Determine the affinity of a subquery by the left-most arm of the subquery that has an affinity other than NONE. In other words, scan from left to right looking for an arm of the compound subquery with an affinity of BLOB, TEXT, INTEGER, or REAL and pick the first one found. Or stay with NONE if no arm has a defined affinity. Test cases added. (check-in: b8ec8511 user: drh tags: compound-subquery-affinity)
09:53 Edit [9ea6bcc8fdf6aadb|9ea6bcc8]: Edit check-in comment. (artifact: 139ff538 user: drh)
2024-04-24
19:49
An experimental minor tweak to the way affinities are computed for compound subqueries, when the actual affinity is ambiguous. (check-in: 779723ad user: drh tags: compound-subquery-affinity)
16:36
If a RETURNING clause contains a subquery that references the table that is being updated in the statement that includes the RETURNING clause, then mark the subquery as correlated so that it is recomputed for each result and not just computed once and reused. See forum post 2c83569ce8945d39. (check-in: 9ea6bcc8 user: drh tags: trunk)
11:51
Add comments linking the assert() added in [cef4d9e3ba586735] to the places where the precondition that the assert() tests are actually required. (check-in: 6f0e7e19 user: drh tags: trunk)
11:21
Ensure that temporary SrcItem objects created by trigger processing have either SrcItem.zName or SrcItem.pSelect defined. Every SrcItem should have one or the other. (check-in: cef4d9e3 user: drh tags: trunk)
2024-04-23
12:02
Fix a problem with vector IN operators used with an index where the affinities and collations for the various vector terms are different. (check-in: 86e8c782 user: drh tags: trunk)
2024-04-22
13:31
Extra robustness in the code that causes cursors to return NULL when they are participating in an OUTER JOIN. (check-in: 672c2869 user: drh tags: trunk)
00:42
Continuation of the fix at [8c0f69e0e4ae0a44]: If a viaCoroutine FROM clause term is participating in a RIGHT or FULL JOIN, we have to create an always-NULL pseudo-cursor for that term when processing the RIGHT join. dbsqlfuzz 6fd1ff3a64bef4a6c092e8d757548e95698b0df5. (check-in: e1040e51 user: drh tags: trunk)
2024-04-21
23:35
Fix an indentation problem in debugging routine sqlite3ShowSrcList(). No changes to production code. (check-in: 5560df27 user: drh tags: trunk)
2024-04-18
16:11
Correct handling of OUTER JOIN when on or the other operand is a subquery implemented using the VALUES-as-coroutine optimization. dbsqlfuzz bde3bf80aedf25afa56e2997a0545a314765d3f8. (check-in: 8c0f69e0 user: drh tags: trunk)
2024-04-16
15:10 Edit [2e74a938f771a889|2e74a938]: Mark "Closed". Edit check-in comment. (artifact: 35585af6 user: drh)
2024-04-15
20:43
The first assert() added in [0ebc65481f4a3e79] is not necessarily true in a corrupt database file. So add a term to make it true. (check-in: 6b21cccd user: drh tags: trunk)
14:59
Merge version 3.45.3 patches into the reuse-schema-3.45 sub-branch. (Leaf check-in: a1ff4153 user: drh tags: reuse-schema-3.45)
14:45
Merge all of the latest trunk enhancements into the bedrock branch. (Leaf check-in: 16dac180 user: drh tags: bedrock)
14:40 Edit [4c23cad98d22e987|4c23cad9]: Move to branch mistake. Mark "Closed". Edit check-in comment. (artifact: 8952ec52 user: drh)
14:39
Merge the latest trunk enhancements into the wal2 branch. (Leaf check-in: 4a72acbc user: drh tags: wal2)
14:36
Merge the latest trunk enhancements into the begin-concurrent branch. (Leaf check-in: eedf6bed user: drh tags: begin-concurrent)
14:29
Merge from wrong branch. Bedrock should be updated from wal2, not from trunk. (Closed-Leaf check-in: 4c23cad9 user: drh tags: mistake)
14:21
Merge all 3.45.3 changes into the wal2-3.45 branch. (Leaf check-in: 2ccc0185 user: drh tags: wal2-3.45)
14:18
Merge all 3.45.3 changes into the begin-concurrent-3.45 subbranch. (Leaf check-in: 3dda82e0 user: drh tags: begin-concurrent-3.45)
13:34
Version 3.45.3 (Leaf check-in: 8653b758 user: drh tags: release, branch-3.45, version-3.45.3)
2024-04-12
18:46
If a build fails in testrunner.tcl, do not attempt to run the jobs that depend on that build. Instead, report those jobs as having been skipped. (check-in: b40580be user: drh tags: trunk)
16:52
Adjustment to EQP output in one test case. (check-in: 08dd2b92 user: drh tags: branch-3.45)
15:15
Mark the BTree cell overflow cache as invalid whenever the rowid goes invalid. (Leaf check-in: 0ec6669c user: drh tags: branch-3.44)
15:10
Increase the version number to 3.45.3. (check-in: 119b3b3c user: drh tags: branch-3.45)
15:06
Mark the BTree cell overflow cache as invalid whenever the rowid goes invalid. (check-in: 5266bb6d user: drh tags: branch-3.45)
15:02
Fixes and new tests logic to ensure that the btree overflow page cache is only used when it is consistent. This resolves the malfunction observed in forum post 284955a3cd454a15. (check-in: 5dede50d user: drh tags: trunk)
13:05
Add assert() statements to help verify the overflow page cache. (Closed-Leaf check-in: 0ebc6548 user: drh tags: btree-ovfl-cache)
12:32
New assert() statements to verify the correctness of the BTCF_AtLast flag on btree cursors. (check-in: 4efecd61 user: drh tags: btree-ovfl-cache)
11:28
Test case for the fix in the previous check-in. (check-in: 0cf4d835 user: drh tags: btree-ovfl-cache)
02:57
Mark the BTree cell overflow cache as invalid whenever the rowid goes invalid. (check-in: 74c9e19c user: drh tags: btree-ovfl-cache)
2024-04-09
14:09 Edit [bb6f9908098baa84|bb6f9908]: Edit check-in comment. (artifact: 93bfe01f user: drh)
14:08
Ignore CHECK constraints when qualifying the xfer optimization while running VACUUM. (check-in: 944d1b6e user: drh tags: branch-3.44)
14:07
Ignore CHECK constraints when qualifying the xfer optimization while running VACUUM. (check-in: bb6f9908 user: drh tags: branch-3.45)
13:57
The read-only CHECK-constraint optimization of [34ddf02d3d21151b] inhibits the xfer optimization for tables with CHECK constraints. However, the xfer optimization is required for correct operation of VACUUM INTO on tables that contain generated columns. Fix this by ignoring CHECK constraints when qualifying the xfer optimization while running VACUUM. Problem reported by forum post 3ec177d68fe7fa2c. (check-in: a6e26e77 user: drh tags: trunk)
2024-04-08
12:02
Merge the latest trunk enhancements, and especially the enhancement to the WHERE-clause push-down optimization, into the bedrock branch. (check-in: 0f93b52c user: drh tags: bedrock)
11:57
Merge the latest trunk enhancements into the wal2 branch. (check-in: 59ccea7d user: drh tags: wal2)
11:50
Enhance the WHERE-clause push-down optimization so that it is able to push down WHERE clause terms that contain uncorrelated subqueries. (check-in: 69ec714b user: drh tags: trunk)
11:45
Fix a harmless compiler warning in the ICU extension due to [acddbc489d5231da]. (check-in: 3d8750e8 user: drh tags: trunk)
06:37
Enhancements to the fuzzer invariant checker to turn optimizations on and off. (Closed-Leaf check-in: 67594481 user: drh tags: pushdown-subquery)
2024-04-07
18:55
Merge trunk testing enhancements into the pushdown-subquery branch. (check-in: 287ff24b user: drh tags: pushdown-subquery)
18:36
Omit all rowid-in-view restrictions from the fuzzinvariant.c test module as they are no longer necessary, as of the previous check-in. (check-in: 6431538f user: drh tags: trunk)
18:23
If SQLITE_ALLOW_ROWID_IN_VIEW is set to 2, then all rowids for views return a value of NULL. (check-in: 0a53dde2 user: drh tags: trunk)
10:30
Merge trunk enhancements into the pushdown-subquery branch. (check-in: 27865e31 user: drh tags: pushdown-subquery)
10:27
Add comments to note the name abiguity between the MySQL push-down optimization and the WHERE-clause push-down optimization. (check-in: 3d5fb1ec user: drh tags: trunk)
10:22 Edit [681dfe2dd60714da|681dfe2d]: Move to branch wrong-branch. (artifact: 75f1b85e user: drh)
2024-04-06
23:09
Add comments to note the name abiguity between the MySQL push-down optimization and the WHERE-clause push-down optimization. (Leaf check-in: 681dfe2d user: drh tags: wrong-branch)
20:18 Edit [6df18e949d367629|6df18e94]: Edit check-in comment. (artifact: 1f13d0ae user: drh)
20:16 Edit [d7bb79ed3a40419d|d7bb79ed]: Edit check-in comment. (artifact: dcc8c677 user: drh)
18:33 Edit [4120bc740a3ef068|4120bc74]: Mark "Closed". (artifact: 80a5c4d4 user: drh)
18:30
Do not allow changes to sqlite3ExprIsTableConstant() that support pushdown of subqueries interfere with the hash-join logic. (check-in: 8682931f user: drh tags: pushdown-subquery)
17:42
Merge testing logic fixes on trunk into the pushdown-subquery branch. (check-in: a4e1f03d user: drh tags: pushdown-subquery)
17:37
Improvements to the accurancy of the fuzzinvariants.c testing module when SQLITE_ALLOW_ROWID_IN_VIEW is defined and the test query involves rowids. (check-in: c6e873d4 user: drh tags: trunk)
12:19
Generalize pushdown to allow any uncorrelated subquery to be pushed down. (check-in: 87c45fb0 user: drh tags: pushdown-subquery)
11:59
Generalize the pushdown of IN right-hand sides to cover more SELECTs. (Closed-Leaf check-in: 4120bc74 user: drh tags: pushdown-IN-table)
2024-04-05
20:01
Experimental enhancement in which expressions of the form "expr IN table" can be pushed down into subexpressions. (check-in: 2cbd7838 user: drh tags: pushdown-IN-table)
15:04
Merge all recent trunk enhancements into the reuse-schema branch. (Leaf check-in: e556f3d3 user: drh tags: reuse-schema)
14:54
Merge the latest trunk enhancements into the bedrock branch. (check-in: 7a2a64b6 user: drh tags: bedrock)
14:50
Merge the latest trunk enhancements into the wal2 branch. (check-in: a8a8a2db user: drh tags: wal2)
14:46
Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 4ff83342 user: drh tags: begin-concurrent)
14:13
Check-in a9657c87c53c1922 is wrong: the IndexedExpr.bMaybeNullRow flag is required for virtual columns if they are part of an outer join. Add a test case to prove it. (check-in: 083b0f7e user: drh tags: branch-3.44)
14:06
Fix obscure issues associated with SQLITE_ALLOW_ROWID_IN_VIEW and indexes on virtual columns in a RIGHT JOIN. (check-in: 4b3a253f user: drh tags: branch-3.45)
13:56
Check-in [a9657c87c53c1922] is wrong: the IndexedExpr.bMaybeNullRow flag is required for virtual columns if they are part of an outer join. Add a test case (derived from dbsqlfuzz b9e65e2f110df998f1306571fae7af6c01e4d92b) to prove it. (check-in: 4484ec6d user: drh tags: trunk)
11:28
When compiling with SQLITE_ALLOW_ROWID_IN_VIEW, if the RETURNING clause of an UPDATE of a view specifies a rowid, then return NULL for the value of that rowid. (check-in: d38cfa60 user: drh tags: branch-3.44)
11:23
When compiling with SQLITE_ALLOW_ROWID_IN_VIEW, if the RETURNING clause of an UPDATE of a view specifies a rowid, then return NULL for the value of that rowid. dbsqlfuzz 7863696e9e5ec10b29bcf5ab2681cd6c82a78a4a. (check-in: c7896e88 user: drh tags: trunk)
2024-04-04
14:26
Add the "interstage-heuristic" that attempts to avoid wildly inefficient queries that use table scans instead of index lookups because the output row estimates are inaccurate. (check-in: 7bf49e2c user: drh tags: trunk)
13:36
Fix an ASAN problem in part of the test harness. No changes to SQLite itself. (check-in: 797cda7d user: drh tags: trunk)
13:07
Fix test cases due to an error message change. (check-in: c49ec239 user: drh tags: trunk)
2024-04-02
21:55
Add an optional 3rd argument to the icu_load_collation() function that specifies the "strength" of the comparison. (check-in: acddbc48 user: drh tags: trunk)
18:48
Fix typos in comments. Provided ".wheretrace" debugging output for the interstage heuristic module. Do omit automatic index loops in the interstage heuristic. (Leaf check-in: 357d9513 user: drh tags: branch-3.28)
18:31
Fix table-valued functions so that they will work as the right table in a LEFT JOIN. Ticket [2ae0c599b735d59e] (check-in: 1f97086d user: drh tags: branch-3.28)
14:12
Fix typos in comments. Provided ".wheretrace" debugging output for the interstage heuristic module. Do omit automatic index loops in the interstage heuristic. (Closed-Leaf check-in: 186dcae1 user: drh tags: interstage-heuristic)
11:54
Add a heuristic in between the two solver() passes of the query planner that tries to prevent a very slow query plan in cases where the output row count estimate is imprecise. (check-in: 74b247d9 user: drh tags: branch-3.28)
11:44
Add a heuristic in between the two solver() passes of the query planner that tries to prevent a very slow query plan in cases where the output row count estimate is imprecise. (check-in: 8018417b user: drh tags: interstage-heuristic)
2024-04-01
15:38
Improved comments in the query planner logic that computes the cost for a particular step in a query plan. No code changes. (check-in: 0b2ac2cd user: drh tags: trunk)
Previous month ↓