Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
381 check-ins using file src/os_unix.c version 2df2b33db8
2022-09-01
| ||
14:33 | Defer deleting a transient SELECT statement associated with a flattening of one arm of a compound SELECT until after the parse has completed. (check-in: 8403c0d5d6 user: drh tags: branch-3.39) | |
2022-08-31
| ||
14:40 | Do not attempt the OP_Count optimization on queries with HAVING clauses. This fixes a problem exposed by [2cf373b10c9bc4cb]. (check-in: 5f93239a8c user: drh tags: branch-3.39) | |
2022-08-30
| ||
14:13 | Any function call can abort. Take this into account when deciding if a DML statement needs a statement journal. See forum thread 9b9e4716c0d7bbd1 for more information. (check-in: 5bf4c5fd0a user: drh tags: branch-3.39) | |
2022-08-12
| ||
18:07 | Updated fiddle deps to ensure that sqlite3.c is built first. (check-in: f0ca026114 user: stephan tags: fiddle-opfs) | |
17:57 | Build fiddle with WASMFS OPFS support and attempt to use it if available. It does not work because of an inexplicable exception in Emscripten-generated code and perpetually-locked db, but it's not yet clear why. (check-in: a16f0a46ec user: stephan tags: fiddle-opfs) | |
17:55 | Minor wasm-related doc clarification and remove an obsolete code comment. (check-in: 1b1f650a08 user: stephan tags: trunk) | |
13:07 | wasm: document the role of sqlite3-wasm.c. Other minor doc updates. (check-in: 4c10b9b18f user: stephan tags: trunk) | |
09:32 | wasm: corrected (in as-yet unused code) a flags check. (check-in: 06b6113783 user: stephan tags: trunk) | |
2022-08-11
| ||
15:45 | Wasm-related doc additions and tweaks. (check-in: ec55a3aa44 user: stephan tags: trunk) | |
09:18 | Merge in wasm-cleanups branch, reorganizing and updating the wasm-related components. (check-in: c072594d3d user: stephan tags: trunk) | |
2022-08-10
| ||
18:40 | Fix another harmless comment typo that causes a typo in the documentation. (check-in: bb084adb53 user: drh tags: trunk) | |
18:33 | Remove (harmless) duplicate words in comments used to generate parts of the documentation. forum post 54abbe9ccd (check-in: b5e4f0db09 user: drh tags: trunk) | |
15:29 | Fix handling of columns with names that are SQL keywords in the ".expert" command. (check-in: 5e1b8221c3 user: dan tags: trunk) | |
13:22 | wasm opfs: error handling fix for an impossible-to-reach error case. Minor cosmetic tweaks in the wasm JSON enum. (Closed-Leaf check-in: 683a3b937e user: stephan tags: wasm-cleanups) | |
11:26 | wasm refactoring part 2 of (apparently) 2: moved ext/fiddle/... into ext/wasm and restructured the core API-related parts of the JS/WASM considerably. (check-in: 27f9da4eaa user: stephan tags: wasm-cleanups) | |
09:36 | wasm/fiddle refactoring part 1 of N: move fiddle app from ext/fiddle to ext/wasm/fiddle, which only contains files intended to be pushed to the live site. Disabled build of the non-fiddle wasm parts, pending a later step of the refactoring. (check-in: fb4eb93080 user: stephan tags: wasm-cleanups) | |
07:58 | Merged in trunk for pending tree refactoring. (check-in: c3a3cb0103 user: stephan tags: wasm-cleanups) | |
2022-08-09
| ||
16:13 | Allow the name of an index to collide with a table in a different schema. (check-in: f963c25238 user: drh tags: trunk) | |
14:28 | Omit the (undocumented) SQLITE_PCACHE_SEPARATE_HEADER compile-time option. (check-in: 60947da687 user: drh tags: trunk) | |
2022-08-08
| ||
19:29 | Avoid some cases of signed integer overflow in fts5 by casting to unsigned values. (check-in: 46a78c8c0e user: dan tags: trunk) | |
16:25 | Avoid trying to cast an over-sized floating point value into an integer. (check-in: 3518cd7cb1 user: drh tags: trunk) | |
13:04 | Remove an unreachable branch in the numericType() helper routine. (check-in: a99cc008e4 user: drh tags: trunk) | |
12:19 | Do not attempt to convert an oversized floating point value into an integer. (check-in: 6c4fc8385e user: drh tags: trunk) | |
2022-08-06
| ||
15:28 | Fix a rounding error caused by scalar->logarithm->scalar conversion when using stat4 data to estimate some range scans. (check-in: 86e30d7c4b user: dan tags: trunk) | |
2022-08-05
| ||
19:37 | Avoid having fts3 read uninitialized values when processing deferred tokens. (check-in: 8e2bfe5803 user: drh tags: branch-3.39) | |
17:16 | Avoid having fts3 read uninitialized values when processing deferred tokens. (check-in: 98729c5fa6 user: dan tags: trunk) | |
05:30 | Fix harmless compiler warning seen with MSVC. (check-in: e36217f253 user: mistachkin tags: trunk) | |
2022-08-04
| ||
17:17 | Fix a problem with the query optimizer for LIMIT/OFFSET queries when underlying query is a UNION ALL and both arms of the UNION ALL are subqueries with an ORDER BY clause. (check-in: 5e1db87cfa user: drh tags: branch-3.39) | |
17:15 | Fix a problem with the query optimizer for LIMIT/OFFSET queries when underlying query is a UNION ALL and both arms of the UNION ALL are subqueries with an ORDER BY clause. This bug was reported at forum post 6b5e9188f0657616. The problem was introduced in 2015 (SQLite version 3.9.0) by check-in [4b631364354068af]. See also ticket [b65cb2c8d91f6685]. (check-in: 6c806f64bb user: drh tags: trunk) | |
14:02 | Fix a typo on a comment used to generate bytecode documentation. (check-in: 64348d0b66 user: drh tags: trunk) | |
2022-08-03
| ||
19:53 | Performance optimization to the math opcodes of the bytecode engine. (check-in: 597347d9c3 user: drh tags: trunk) | |
19:37 | Small performance increase on the binding interfaces. (check-in: aab24c37fb user: drh tags: trunk) | |
17:27 | Improvement on the previous check-in. (check-in: 0d0c31117a user: drh tags: branch-3.39) | |
17:26 | Improvement on the previous check-in. (check-in: c1ab0ea295 user: drh tags: trunk) | |
16:04 | For an IN operator used with a RIGHT JOIN, use the number of terms in the vector, not the number of equality terms, to size the column map. dbsqlfuzz 14cfdad6ca45e607163f54049ddf5065183dc657. (check-in: 003e4eee6b user: drh tags: branch-3.39) | |
15:58 | For an IN operator used with a RIGHT JOIN, use the number of terms in the vector, not the number of equality terms, to size the column map. dbsqlfuzz 14cfdad6ca45e607163f54049ddf5065183dc657, CVE-2022-3195. This problem was injected by [a193749730d6cfba] which was part of the RIGHT JOIN enhancement for version 3.39.0. (check-in: b184c8d922 user: drh tags: trunk) | |
2022-08-01
| ||
13:17 | Bump the version number up to 3.39.3. (check-in: d0f7f22a8f user: drh tags: branch-3.39) | |
13:15 | In the xUpdate method of the GeoPoly virtual table, make sure that the number of updated columns does not exceed the underlying implementation, even if the virtual table object records an excess number of column in the nAux field due to table constraints in the table definition. Fix for the problem reported by forum post a096ab7d96bb057a. (check-in: a8ae721617 user: drh tags: branch-3.39) | |
13:14 | In the xUpdate method of the GeoPoly virtual table, make sure that the number of updated columns does not exceed the underlying implementation, even if the virtual table object records an excess number of column in the nAux field due to table constraints in the table definition. Fix for the problem reported by forum post a096ab7d96bb057a. A test case for this problem is in dbsqlfuzz. (check-in: a04dd475c2 user: drh tags: trunk) | |
2022-07-26
| ||
19:10 | Restore a VDBE coverage macro that is mistakenly deleted for check-in [92ac01d41d46ab73]. (check-in: 01de7ec44f user: drh tags: trunk) | |
18:43 | Fix another problem related to aggregate query LEFT JOIN flattening. (check-in: 8e12c6f59b user: dan tags: trunk) | |
15:41 | Omit a unused variable initialization in order to suppress a harmless compiler warning. (check-in: 2d703c5e94 user: drh tags: trunk) | |
15:39 | Add test cases related to fix [e717e029]. (Closed-Leaf check-in: 2909f36bfb user: dan tags: flatten-left-join) | |
15:32 | Make sure IF_NULL_ROW expressions receive a separate slot in the sorter used to implement GROUP BY. (check-in: 2bda4fca06 user: drh tags: flatten-left-join) | |
14:37 | Improved AggInfo.aCol debugging output, intended to debug a problem with LEFT JOIN flattening into an aggregate query with GROUP BY. (check-in: e717e029bd user: drh tags: flatten-left-join) | |
10:16 | Add a OOM term to a single assert() statement. (check-in: 217fc3ebd4 user: drh tags: trunk) | |
01:20 | Performance optimization: avoid unnecessary calls to computeLimitRegisters(). (check-in: f48bd8f85d user: drh tags: trunk) | |
2022-07-25
| ||
23:34 | Fix an assert() that was made out-of-date by [b52393ac28debe98]. (check-in: db8230e80e user: drh tags: trunk) | |
23:01 | Performance optimization by only invoking sqlite3FkCheck() when it is actually needed. (check-in: 98b0e830bc user: drh tags: trunk) | |
22:31 | Performance optimization in sqlite3ViewGetColumnNames(). (check-in: 390717e688 user: drh tags: trunk) | |
22:02 | Fix a harmless compiler warning. (check-in: 9aba7417c6 user: drh tags: trunk) | |
21:37 | In-line a call to sqlite3ExprCode() in insert.c, for a size reduction and performance increase. (check-in: 35066b1446 user: drh tags: trunk) | |
20:21 | Performance optimization in computing the Expr.nHeight field. (check-in: 1798ce97c8 user: drh tags: trunk) | |
19:05 | Small performance increase and size reduction by splitting out the sqlite3VdbeGetLastOp() from sqlite3VdbeGetOp(). (check-in: 92ac01d41d user: drh tags: trunk) | |
16:06 | Fix an error in the aggregate query LEFT JOIN flattening optimization from [2cf373b10c9bc4cb] and further enhance that optimization so that it works even if there is a GROUP BY clause. (check-in: b52393ac28 user: drh tags: trunk) | |
15:54 | Allow subqueries on the right-hand side of a LEFT JOIN to be flattened even if they contain a GROUP BY clause. (Closed-Leaf check-in: 816da9a893 user: drh tags: flatten-left-join) | |
14:05 | TK_IF_NULL_ROW expressions must be accumulated in the same way as TK_COLUMN expressions in an aggregate query. Proposed fix for the problem identifyed by dbsqlfuzz 8e17857db2c5a9294c975123ac807156a6559f13. (check-in: 40d0880720 user: drh tags: flatten-left-join) | |
11:19 | If the LHS of a LEFT JOIN is flattened into an aggregate parent query, avoid executing OP_IfNullRow on an unopened cursor by disallowing the index-only optimization. (Later:) Does not work if automatic indexes are disabled. (Closed-Leaf check-in: dbe522b011 user: dan tags: nonworking-flatten-left-join) | |
11:04 | Reduce a timeout in walsetlk.test from 2000ms to 1100ms so that the test runs a bit faster. (check-in: 836fa09706 user: dan tags: trunk) | |
2022-07-23
| ||
12:51 | Simplifications to sqlite3FinishCoding() for a small size reduction and performance increase. (check-in: a995614b9a user: drh tags: trunk) | |
00:53 | Remove a branch that is no longer reachable due to the previous check-in. (check-in: 8b4d1b9317 user: drh tags: trunk) | |
00:44 | Use sqlite3ParserAddCleanup() rather than pParse->pConstExpr to implement sqlite3ExprDeferredDelete(). This is a better solution than check-in [c538d07535092722]. (check-in: 2a6f6971fa user: drh tags: trunk) | |
2022-07-22
| ||
20:48 | Updates to the 'vtshim' extension. (Leaf check-in: 163c6cdf93 user: mistachkin tags: xShadowName2) | |
20:24 | Add experimental 'xShadowName2' method for virtual table modules. (check-in: 57beb700c0 user: mistachkin tags: xShadowName2) | |
19:28 | Omit the EP_MemToken flag that was made obsolete by [e1f1cfe7f4387b60], for a size reduction and performance increase. (check-in: 28934a9d92 user: drh tags: trunk) | |
18:25 | In a TK_BLOB Expr node, the Expr.zToken might not be a well-formed BLOB literal if there has been a prior OOM. dbsqlfuzz 23871e5805d6c45b392f9b7aa1e8a2b98f3c27cd. (check-in: c538d07535 user: drh tags: trunk) | |
14:52 | Update the documentation for SQLITE_OPEN_NOFOLLOW to state more clearly that nothing in the database path is allowed to be a symbolic link. (check-in: de9222697b user: drh tags: trunk) | |
2022-07-21
| ||
18:37 | Fix harmless compiler warning seen with MSVC. (check-in: 648172de20 user: mistachkin tags: trunk) | |
16:07 | Merge the fixes from branch-3.39 into the reuse-schema branch. (check-in: 578538baf2 user: drh tags: reuse-schema-3.39) | |
15:24 | Version 3.39.2 (check-in: 698edb7753 user: drh tags: release, branch-3.39, version-3.39.2) | |
12:26 | In the query planner, restore the former aggressiveness in reordering of FROM clause terms that existed prior to version 3.39.0 for queries that contain no RIGHT or FULL JOINs. (check-in: 9141e873c5 user: drh tags: branch-3.39) | |
2022-07-20
| ||
20:36 | Make use of the sqlite3ExprDeferredDelete() interface in the previous check-in, and in another place where it might be helpful. (check-in: 22f90e9683 user: drh tags: trunk) | |
17:01 | Simplify the logic that converts the "1" expression in "ORDER BY 1" into a copy of the expression that defines the first output column. (check-in: 449935914c user: drh tags: branch-3.39) | |
16:42 | Simplify the logic that converts the "1" expression in "ORDER BY 1" into a copy of the expression that defines the first output column. Fix for CVE-2022-3034. Test case in TH3. (check-in: e1f1cfe7f4 user: drh tags: trunk) | |
10:09 | Merged in trunk. (check-in: d662796c65 user: stephan tags: wasm-cleanups) | |
2022-07-19
| ||
21:12 | Improve accuracy of julian day milliseconds calculation. (check-in: e5e9311863 user: larrybr tags: trunk) | |
2022-07-18
| ||
19:32 | Remove a few unsuitable scripts from the "veryquick" test suite. Also have every second testrunner.tcl process favour running test scripts that contain text like "testrunner: slow" before any others. (check-in: 22d280a5cd user: dan tags: trunk) | |
18:13 | Add the "testrunner" makefile target. (check-in: 954c659315 user: drh tags: trunk) | |
15:27 | Increase the size of loop variables in the printf() implementation to avoid integer overflow on multi-gigabyte string arguments. CVE-2022-35737. (check-in: 26db4fc22f user: drh tags: branch-3.39) | |
15:02 | Increase the size of loop variables in the printf() implementation to avoid integer overflow on multi-gigabyte string arguments. CVE-2022-35737. (check-in: aab790a16e user: drh tags: trunk) | |
13:55 | Enhance the REGEXP extension so that it will accept the start-of-input mark ("^") in the middle of parentheses. Forum post 0d6a9160f81ef1a8. (check-in: ed8a8ebd62 user: drh tags: trunk) | |
13:10 | Fix a problem in the REGEXP extension for the {M,N} construct where M is zero. See forum post 8694e55a2c29963c for more information. (check-in: af15bb7530 user: drh tags: trunk) | |
11:44 | Enhance the ext/misc/regexp.c code so that when it is compiled with SQLITE_DEBUG, a new function named regexp_bytecode() is available that prints out the compiled NFA as human-readable text, for debugging purposes. (check-in: cb5c08978f user: drh tags: trunk) | |
2022-07-16
| ||
18:08 | Fixes for the generated "mallocs.tcl" and "leaks.tcl" scripts generated by running tcl tests with the --malloctrace=1 option. (check-in: 449799e2d5 user: dan tags: trunk) | |
2022-07-15
| ||
20:39 | In the query planner, restore the former aggressiveness in reordering of FROM clause terms that existed prior to version 3.39.0 for queries that contain no RIGHT or FULL JOINs. (check-in: 92d60b64eb user: drh tags: trunk) | |
15:24 | Fix harmless compiler warnings seen with MSVC. (check-in: 2be8fa158e user: mistachkin tags: branch-3.39) | |
15:11 | Fix a memory leak in fts3 that could occur when processing a corrupt database. (check-in: 48f323b956 user: dan tags: branch-3.39) | |
15:08 | Fix a memory leak in fts3 that could occur when processing a corrupt database. (check-in: d74f6f6d51 user: dan tags: trunk) | |
12:34 | Fix the whereKeyStats() routine (part of STAT4 processing only) so that it is able to cope with row-value comparisons against the primary key index of a WITHOUT ROWID table. Forum post 3607259d3c. (check-in: 2a6f761864 user: drh tags: branch-3.39) | |
12:16 | Fix the whereKeyStats() routine (part of STAT4 processing only) so that it is able to cope with row-value comparisons against the primary key index of a WITHOUT ROWID table. Forum post 3607259d3c. (check-in: 0620e419a9 user: drh tags: trunk) | |
12:07 | Update some faulty assert() statements in fts3. (check-in: 958d104bcf user: dan tags: branch-3.39) | |
11:34 | Update some faulty assert() statements in fts3. (check-in: b072851be1 user: dan tags: trunk) | |
2022-07-14
| ||
21:17 | Ensure all testrunner.tcl processes use the same pending-byte value when accessing testrunner.db. Otherwise locking doesn't work and the db is corrupted. (check-in: b65225653e user: dan tags: trunk) | |
18:09 | Update testrunner.tcl so that it can run the test suites defined in permutation.test. (check-in: 15ce937ef4 user: dan tags: trunk) | |
01:54 | Bump the version number up to 3.39.2. (check-in: c4dbcb282d user: drh tags: branch-3.39) | |
01:49 | When applying the omit-ORDER-BY optimization, defer deleting the AST of the deleted ORDER BY clause until after code generation ends. (check-in: b88d6c4b81 user: drh tags: branch-3.39) | |
01:48 | When applying the omit-ORDER-BY optimization [85ddaf1b59a19cbd], defer deleting the AST of the deleted ORDER BY clause until after code generation ends. Fix for CVE-2022-3039. Test case in TH3. (check-in: f22f95b838 user: drh tags: trunk) | |
2022-07-13
| ||
21:28 | Fix testrunner.tcl so that it can detect the number of logical cores on osx. (check-in: 14918f2822 user: dan tags: trunk) | |
21:10 | Minor change to help message in testrunner.tcl. (check-in: e4f9cb01d7 user: dan tags: trunk) | |
21:02 | Add new script test/testrunner.tcl. For running a set of test scripts using multiple processes. (check-in: 0122e93dc1 user: dan tags: trunk) | |
20:26 | Fix a problem preventing "testrunnter.tcl all" from working. (Closed-Leaf check-in: 0ed1e83c6f user: dan tags: testrunner) | |
19:57 | Update testrunner.tcl to allow the user to specify which tests to run on the command line. (check-in: 900febcf36 user: dan tags: testrunner) | |
19:41 | Version 3.39.1 (check-in: 7c16541a0e user: drh tags: release, branch-3.39, version-3.39.1) | |
17:46 | Fix testrunner.tcl so that it checks for memory leaks. (check-in: 106f6724d5 user: dan tags: testrunner) | |
16:06 | The query flattener should not run if the subquery is a compound that contains a RIGHT JOIN in any arm and the subquery is not the first element of the outer query. Otherwise, prior elements of the outer query will not have the JT_LTORJ flag set. Fix for the problem reported in forum post 174afeae5734d42d. (check-in: cf9ed7f2e1 user: drh tags: branch-3.39) | |
15:52 | The query flattener should not run if the subquery is a compound that contains a RIGHT JOIN in any arm and the subquery is not the first element of the outer query. Otherwise, prior elements of the outer query will not have the JT_LTORJ flag set. Fix for the problem reported in forum post 174afeae5734d42d. (check-in: 274e244c85 user: drh tags: trunk) | |
11:27 | Fix test case error messages so that they work with after the removal of the unnecessary zErrMsg clearing from [44d77a7f807f5dc3]. (check-in: 7b167b87d6 user: drh tags: branch-3.39) | |
2022-07-12
| ||
20:31 | Add test/testrunner.tcl, an experimental script for distributing the work of veryquick.test between multiple processes. (check-in: ef229cbb7f user: dan tags: testrunner) | |
15:53 | Renamed the SQLITE_SHELL_WASM_WEB_MODE to SQLITE_SHELL_FIDDLE, which seems to be more in line with project convensions and indicates that that flag is only intended for /fiddle mode, as opposed to arbitrary wasm-on-the-web use. (check-in: d1d019bfa2 user: stephan tags: trunk) | |
15:17 | Fix another test case error message similar to those fixed in [b3d6b3c3]. (check-in: 6d0f677291 user: dan tags: trunk) | |
15:12 | Update makefiles to fix building the non-amalgamation testfixture with SQLITE_DEBUG. (check-in: 1ca7056417 user: dan tags: branch-3.39) | |
15:10 | Update makefiles to fix building the non-amalgamation testfixture with SQLITE_DEBUG. (check-in: d9c4a9d09b user: dan tags: trunk) | |
10:46 | Fix a bug in wapptest.tcl introduced by [51255bad4c1fb607]. (check-in: b26d097e09 user: drh tags: trunk) | |
09:40 | Renamed SQLITE_SHELL_WASM_MODE to SQLITE_SHELL_WASM_WEB_MODE and no longer automatically enable it if __EMSCRIPTEN__ is defined, in order to facilitate using Emscripten to build the shell for CLI-based WASM runtimes (which cannot make use of the web-specific user input changes). The fiddle build now explicitly passes the new flag on at compile-time. (check-in: ee059ad5a8 user: stephan tags: trunk) | |
07:13 | Back out the pager performance enhancement at [a1c090e08139f99d3], because it turns out we should never allow a zero key into the pcache interface according to the design specs, even if that page is immediately released without ever being used. (check-in: ec96293ead user: drh tags: trunk) | |
2022-07-11
| ||
22:20 | Add the --config option to wapptest.tcl. The argument is a glob pattern. All configurations must match the glob pattern in order to run. The default value is "*". (check-in: 51255bad4c user: drh tags: trunk) | |
21:40 | Update the expected error messages in some OOM test cases to account for [44d77a7f807]. (check-in: b3d6b3c3fc user: dan tags: trunk) | |
19:48 | Use 64-bit memory allocation APIs in the sqlite_stmt virtual table, to avoid harmless compiler warnings. (check-in: 4c40b38cbe user: drh tags: branch-3.39) | |
19:47 | Use 64-bit memory allocation APIs in the sqlite_stmt virtual table, to avoid harmless compiler warnings. (check-in: afb9e60ee3 user: drh tags: trunk) | |
19:29 | Fix harmless compiler warnings. (check-in: 9931bb202e user: drh tags: branch-3.39) | |
19:12 | In the sqlite_stmt extension, store the result of strlen() in a 64-bit integer to avoid a compiler warning, even though we know that the length will always fit comfortably in 32 bits. (check-in: 3fe1945249 user: drh tags: trunk) | |
18:26 | Fix harmless compiler warnings about unused debugging functions in treeview.c. (check-in: 4d6f907712 user: drh tags: trunk) | |
18:11 | Back out the optimization at [1a8c2e54375ee2cf7] because there are some cases where it does not work. (check-in: fe39c8d5fd user: drh tags: trunk) | |
14:44 | Increase the version number to 3.39.1. (check-in: 88b1b0327f user: drh tags: branch-3.39) | |
14:43 | Ensure that the Parse.nErr flag is set following an SQLITE_TOOBIG error on a nested parse. Fix for the problem identified by forum post d5a82ba9eedee30c. Also, remove unnecessary clearing of the Parse.zErrMsg field following a nested parse. (check-in: eaef7b7190 user: drh tags: branch-3.39) | |
14:39 | Fix a problem in fts3 to do with deferred tokens and OR expressions. (check-in: bbe999e345 user: drh tags: branch-3.39) | |
14:36 | Ensure that the Parse.nErr flag is set following an SQLITE_TOOBIG error on a nested parse. Fix for the problem identified by forum post d5a82ba9eedee30c. Also, remove unnecessary clearing of the Parse.zErrMsg field following a nested parse. (check-in: 44d77a7f80 user: drh tags: trunk) | |
14:26 | Fix a problem in fts3 to do with deferred tokens and OR expressions. (check-in: d0bfe5c574 user: dan tags: trunk) | |
2022-07-10
| ||
21:12 | When an OOM occurs and sets the Parse.nErr value, also set the Parse.nErr value for all outer Parse objects. dbsqlfuzz d33f60aaa67733aa700cd69dacf8e0e23a327a29 (check-in: 9a494d2594 user: drh tags: trunk) | |
2022-07-08
| ||
20:03 | Performance optimizations in the WHERE clause processing of the query planner. (check-in: 50c8e8de52 user: drh tags: trunk) | |
18:23 | Omit an unnecessary structure initialization in whereLoopAddAll(), replacing it with an assert() to show that the initialization has already occurred, for a small performance increase and size reduction. (check-in: 27be9e9634 user: drh tags: trunk) | |
17:57 | Size reduction and performance optimization in whereLoopAddBtreeIndex(). (check-in: 64d2312c12 user: drh tags: trunk) | |
16:56 | In wherePathSolver(), defer initializing variables until they are actually needed, in case they are not needed. This gives a small performance increase. (check-in: 6f28a9652a user: drh tags: trunk) | |
15:06 | Upgrade the TEA build system used to build the Tcl package. (check-in: ace65da8fa user: dan tags: trunk) | |
13:57 | Fix typo in autoconf/tea/win/makefile.vc. (Closed-Leaf check-in: 094b2aadd5 user: dan tags: tea-upgrade) | |
11:55 | Remove an obsolete statement from a comment. No changes to code. (check-in: 99afb3f41b user: drh tags: trunk) | |
11:21 | Update options in the TEA package msvc makefile to match other builds. (check-in: d72e12b99d user: dan tags: tea-upgrade) | |
11:14 | Update the build options used for the TEA package to match those used to build the binaries at download.html. (check-in: 9d6d9dba66 user: dan tags: tea-upgrade) | |
2022-07-07
| ||
22:59 | Very small size reduction and performance increase in btree.c. (check-in: 9a7c031a82 user: drh tags: trunk) | |
21:04 | Size reduction and performance increase in defragementPage() of btree.c. (check-in: 1b03f197b5 user: drh tags: trunk) | |
20:49 | Upgrade the TEA build system in autoconf/tea/. To match tclconfig commit 20fe9e6f59 and Tcl Sample Extension be47fb0446. (check-in: 1531f73918 user: dan tags: tea-upgrade) | |
20:29 | Size reduction and performance increase in the pageFindSlot() routine of btree.c. (check-in: 5d247e3856 user: drh tags: trunk) | |
20:11 | Size reduction and performance increase in the freeSpace() routine of btree.c. (check-in: 7d7aed053f user: drh tags: trunk) | |
2022-07-06
| ||
23:50 | Fix harmless compiler warnings seen with MSVC. (check-in: 61e2094afb user: mistachkin tags: trunk) | |
15:44 | Avoid ignoring the last line of a csv file if the final field is empty and there is no trailing CFLS. Also have the csv extension treat the last line of a file in the same way as any other line if it is short fields. (check-in: 587795d47f user: dan tags: trunk) | |
13:59 | Avoid dropping error codes in the xBegin() method of virtual table sqlite_dbpage. (check-in: 570e2bce59 user: dan tags: trunk) | |
2022-07-05
| ||
19:56 | Fix for builds with both SQLITE_DEBUG and SQLITE_OMIT_WINDOWFUNC defined. (check-in: dfe46de2d4 user: dan tags: branch-3.39) | |
19:53 | Fix for builds with both SQLITE_DEBUG and SQLITE_OMIT_WINDOWFUNC defined. (check-in: 77916947ce user: dan tags: trunk) | |
17:49 | Fix a problem in the csv extension that was triggered when the very first field in the csv file is zero bytes in size. (check-in: b12ddabf07 user: dan tags: trunk) | |
10:40 | Fix an assert() in btree to be more precise, as the previous form of that asser might fail due to recent performance optimizations. (check-in: 4774938134 user: drh tags: trunk) | |
2022-07-04
| ||
15:14 | Size reduction and performance optimization in sqlite3WalFindFrame(). (check-in: 1a8c2e5437 user: drh tags: trunk) | |
09:41 | In the getNormalPage() routine of pager.c, consolidate pgno error checking into a single spot for small size reduction and performance increase. (check-in: a1c090e081 user: drh tags: trunk) | |
2022-07-03
| ||
18:12 | Enhance the REGEXP extension so that the end-of-input indicate ("$") is allowed to occur on one branch of an OR ("|"). Forum post 0107d5d40dd273e2, second issue. (check-in: 3c04d21e6c user: drh tags: trunk) | |
14:32 | Fix the initial-prefix optimization for the REGEXP extension such that it works even if the prefix contains characters that require a 3-byte UTF8 encoding. This should fix the problem reported by forum post 96692f8ba5. (check-in: 7a32ccccef user: drh tags: branch-3.39) | |
14:25 | Fix the initial-prefix optimization for the REGEXP extension such that it works even if the prefix contains characters that require a 3-byte UTF8 encoding. This should fix the problem reported by forum post 96692f8ba5. (check-in: c94595a6e1 user: drh tags: trunk) | |
11:16 | Improved comment on sqlite3VdbeSwap(). No changes to code. (check-in: 6a8e4fb72a user: drh tags: trunk) | |
11:12 | Remove debugging code that has always been commented out. Cosmetic change. (check-in: b54064170c user: drh tags: trunk) | |
2022-07-01
| ||
21:03 | Do not attempt the OP_Count optimization on queries with HAVING clauses. This fixes a problem exposed by [2cf373b10c9bc4cb]. (check-in: 566b7842ee user: dan tags: trunk) | |
19:42 | Performance improvement in resolveP2Values(). Save over 1 million CPU cycles by omitting the loop termination condition and exiting when the OP_Init (always the first opcode in any VDBE program) is encountered. (check-in: bb179140c8 user: drh tags: trunk) | |
12:09 | In the sqlite_stmt virtual table, add two ALWAYS() macros on branches that have been come always true due to the [84a91c255e3d7772] optimization. REVISED: Dbsqlfuzz found a case where the ALWAYS() is false. (Closed-Leaf check-in: bf34eddb66 user: drh tags: mistake) | |
2022-06-30
| ||
22:46 | Small performance improvement to sqlite3_finalize(). (check-in: 8a6913b66c user: drh tags: trunk) | |
14:19 | Fix documentation and test-script typos and a dependency problem on a Makefile. Fix the sqlite_stmt extension virtual table so that it shows the state of all prepared statements for a single instant in time. (check-in: 0a9e08be6d user: drh tags: branch-3.39) | |
11:01 | Add missing "finish_test" command to the end of test script merge1.test. (check-in: 13cb3f1e63 user: dan tags: trunk) | |
2022-06-29
| ||
15:16 | Have the sqlite_stmt table buffer all data for the current scan within the xFilter method. (check-in: 84a91c255e user: dan tags: trunk) | |
2022-06-27
| ||
21:42 | Fix a problem causing false corruption reports following recovery of a *-wal file that contains one or more transactions and a *-wal2 file that contains a valid header but no valid transactions. (check-in: f6eafb65a4 user: dan tags: wal2) | |
11:28 | Fix a missing dependency for json.lo in Makefile.in (check-in: 65930a5c06 user: drh tags: trunk) | |
2022-06-25
| ||
21:41 | wasm: corrected the isInt32() check to account for negative values. (check-in: 7223f4bb58 user: stephan tags: wasm-cleanups) | |
20:32 | Put an ALWAYS() on an unreachable branch. (check-in: 58caa50a41 user: drh tags: trunk) | |
19:43 | Allow flattening of a subquery that is the right operand of a LEFT JOIN in an aggregate query as long as there is no GROUP BY clause. (The GROUP BY clause will interfere with the operation of the TK_IF_NULL_ROW expression nodes.) (check-in: 2cf373b10c user: drh tags: trunk) | |
19:30 | Increase the version number to 3.40.0 so as to begin the next development cycle. (check-in: 4542e32302 user: drh tags: trunk) | |
19:07 | wasm: added bindings for sqlite3_extended_result_codes(), sqlite3_open_v2(), and the SQLITE_OPEN_... flags. (check-in: ac876ab991 user: stephan tags: wasm-cleanups) | |
18:55 | Fix documentation type. forum post 8d900996ed. (check-in: 869061f18d user: drh tags: trunk) | |
18:18 | wasm: lots of doc additions and refactoring. Refactored the WASM memory heap usage to hopefully eventually account for a runtime-growable heap. Differentiate between supported TypedArray types for input SQL strings vs binding/fetching blobs. Might (untested) have implemented the ability to bind UtfNNArray values as blobs, where NN is one of 16 or 32. (check-in: e10d57dfba user: stephan tags: wasm-cleanups) | |
17:20 | Merge version 3.39.0 into the reuse-schema branch. (check-in: bee9903df5 user: drh tags: reuse-schema) | |
16:53 | Merge version 3.39.0 into the wal2 branch. (check-in: ad3a7005e7 user: drh tags: wal2) | |
14:57 | Version 3.39.0 (check-in: 14e166f40d user: drh tags: trunk, release, major-release, version-3.39.0) | |
10:30 | wasm: added utility C code to generate a JSON-format "enum" of the numerous SQLITE_xyz constants so that we do not risk those getting out of sync in the JS code. Renamed initSqlite3Module to sqlite3InitModule. Cleanups in the TypedArray handling. (check-in: 778062e3b4 user: stephan tags: wasm-cleanups) | |
07:42 | wasm: eliminated the need for Stmt objects to keep ahold of memory allocated for bound strings and blobs. Added alternate string/blob bind impls which are hypothetically more efficient but not yet proven to be so. (check-in: da1d3151a4 user: stephan tags: wasm-cleanups) | |
06:46 | wasm: eliminated the dependency on the deprecated emcc-provided allocate() function. Adjacent cleanups in blob binding. (check-in: 140618b212 user: stephan tags: wasm-cleanups) | |
03:53 | wasm: corrected the propagation of text/blob values via UDFs. DB.exec()'s sql may now be an array of strings which get concatenated together before passing it on to sqlite3_prepare_v2(). DB.exec()'s callback now applies to the first statement which has result columns instead of only the first statement. Fixed a precedence but which caused isInt32() to report false positives. (check-in: 37a8fecb56 user: stephan tags: wasm-cleanups) | |
02:54 | Minor wasm doc tweaks. (check-in: 42dc500819 user: stephan tags: wasm-cleanups) | |
02:39 | Change a harmless assert() into a testcase(). The actually test case code is in TH3. Fix for the problem described at forum post ed29e196d5c4f3d5. (check-in: cd6254fcd3 user: drh tags: trunk) | |
02:37 | wasm binding: consolidated the two sqlite3_prepare_v2() bindings behind a single dispathcer. Various internal cleanups and refactoring. Branched because trunk is in pencils-down mode for pending 3.39 release. (check-in: ab3e50dab4 user: stephan tags: wasm-cleanups) | |
2022-06-24
| ||
16:15 | Merge the 3.39.0 release candidate 1 changes into the reuse-schema branch. (check-in: 506a3e6f24 user: drh tags: reuse-schema) | |
15:15 | Merge 3.39.0 release candidate 1 into the wal2 branch. (check-in: 5a5e6e368f user: drh tags: wal2) | |
12:56 | Fix a harmless UBSAN warning associated with PRAGMA schema_version found by OSSFuzz. (check-in: e93fd170ce user: drh tags: trunk) | |
11:05 | In sqlite3WhereBegin, do not proceed with coding the loop if an error is detected as part of WHERE expression analysis. For for the assertion-fault described by forum post c3496cf6b1. (check-in: db5266dec6 user: dan tags: trunk) | |
11:02 | A minor fix to test/fuzzinvariants.c so that it works even with column names that originally contain a ':' and that are disambiguated. (check-in: 8d9b1fff9d user: drh tags: trunk) | |
2022-06-23
| ||
22:43 | New test cases for query flattening with LEFT JOIN. (Closed-Leaf check-in: 27f68e4732 user: drh tags: flatten-left-join) | |
20:56 | Reintroduce flattener constraint (3c), but this time make it apply only if the outer query holds a GROUP BY, not if the outer query is an aggregate. (check-in: 641dfb9182 user: drh tags: flatten-left-join) | |
15:15 | Add back the ability to flatten a LEFT JOIN subquery - previously removed due to ticket [cad1ab4cb7b0fc344]. (check-in: f8fe936ad4 user: drh tags: flatten-left-join) | |
12:36 | Minor correction to a comment. No code changes. (check-in: 5fa00959eb user: drh tags: trunk) | |
2022-06-22
| ||
18:51 | Enhance the TCL scrip that generates sqlite3-all.c so that it outputs all text in its original order. (check-in: 83ff1a28e3 user: drh tags: trunk) | |
18:33 | Fix requirements marks that changed due to typo fixes in the documentation. (check-in: 5247df0599 user: drh tags: trunk) | |
15:55 | More comment fixes. No changes to code. (check-in: 5c9133ef43 user: drh tags: trunk) | |
14:43 | Allow more line with on the debugging output for SrcItem elements in the parse tree. This affects debugging builds only and is a no-op for production builds. (check-in: edbe24e7fc user: drh tags: trunk) | |
14:25 | Additional enhancements to comments. No changes to code. (check-in: d9a320448f user: drh tags: trunk) | |
14:00 | Give dbtotxt an option to prepend .open --hexdb (check-in: afeee6125d user: larrybr tags: trunk) | |
12:54 | Fix a typo in a comment. No changes to code. (check-in: ef9de201b3 user: drh tags: trunk) | |
2022-06-21
| ||
18:38 | Disable the short-cut query planner if the NOT INDEXED modifier is used. Forum post 454d706296. (check-in: bd87d107fe user: drh tags: trunk) | |
13:41 | Allow a HAVING clause on any aggregate query, even if there is no GROUP BY clause. This brings SQLite into closer agreement with PostgreSQL and fixes the concern raised by forum post 1a7fea4651. (check-in: 9322a7c21f user: drh tags: trunk) | |
12:54 |
| |
2022-06-20
| ||
19:12 | Add an ALWAYS() macro to an always-true branch. (check-in: 364645d8fe user: drh tags: trunk) | |
18:26 | Do not allow FROM-clause terms on the left side of a RIGHT or FULL JOIN to be reordered. forum post 6650cd40b5634f35. This is probably more strict that necessary to get correct behavior, but for the first release that supports RIGHT/FULL JOIN it is perhaps better to be correct than fast. A less strict constraint might be to prohibit FROM-clause terms that originate on the left side of a RIGHT JOIN from crossing from the right side to the left side of a LEFT JOIN. Revisit this later. (check-in: 238453ffab user: drh tags: trunk) | |
17:04 | Do not allow an ON clause to references tables to its right if there is a RIGHT or FULL join anywhere in the query. Other RDBMSes prohibit this always, but SQLite must allow ON clauses to reference tables to their right for legacy compatibility, unless there is a RIGHT or FULL join someplace in the query, in which case there is no legacy to support. (check-in: e615dbe02c user: drh tags: trunk) | |
12:42 | The fix at [cab9b4cccd13bf0a] was incomplete, as demonstrated by forum post 57bdf2217d. This check-in should complete the fix. (check-in: fb0a23b678 user: drh tags: trunk) | |
2022-06-19
| ||
16:55 | Follow-up to check-in [0057bbb508e7662b] - ensure that the database page has been initialized prior to continuing with the optimization. If the page is not initialized, that indicates that the database is corrupt. dbsqlfuzz 09ee46becd5e6d1b2a55c9f8ad767335a90aadb0. (check-in: 11162446f1 user: drh tags: trunk) | |
2022-06-18
| ||
20:20 | Enable query invariant checking in fuzzcheck by default. There is no way to turn it off. Update the invariant checking logic to be consistant with dbsqlfuzz. (check-in: 66ca729bbb user: drh tags: trunk) | |
14:50 | Abandon a query-invariant check in fuzzcheck if the call to sqlite3_bind_value() returns anything other than SQLITE_OK or SQLITE_RANGE. (check-in: d31e1cd2ab user: drh tags: trunk) | |
10:26 | In the --query-invariants option of fuzzcheck, correctly deal with OOMs causing the return value of sqlite3_column_name() to be NULL. (check-in: eabbee4a51 user: drh tags: trunk) | |
2022-06-17
| ||
21:31 | Fix the OP_Concat operator such that when concatenating a BLOB with an odd number of bytes on a database that is UTF16, the size of the resulting string is reduced to a multiple of two. (check-in: 5eb2c23635 user: drh tags: trunk) | |
17:11 | Omit the --query-invariants processing in fuzzcheck for queries that contain the implies_nonnull_row() test function. (check-in: 0602a08448 user: drh tags: trunk) | |
16:52 | Do not run --query-invariants on statements that make use of sqlite_offset(). (check-in: c5ac4cbfb1 user: drh tags: trunk) | |
16:39 | Various fixes and improvements to the --query-invariants option of fuzzcheck. (check-in: 09aca89b7c user: drh tags: trunk) | |
16:32 | Allow integers and floating point numbers to compare equal. (Closed-Leaf check-in: 0fe2e465ba user: drh tags: query-invariants) | |
16:09 | Improve query-invariants to the point that it would have discovered the [f23a429d4153518d] bug if that bug had not already been fixed. (check-in: 2a7251ed9c user: drh tags: query-invariants) | |
15:52 | Only run query-invariant checks after the original query has run to completion, so that we know it does not error-out on a subsequent row. (check-in: d1fc857bb8 user: drh tags: query-invariants) | |
15:11 | Fix the virtual table detection mechanism to avoid false-positives that were blocking all failures. Then fix a few of the additional problems that are revealed by that fix. More fixes are needed. (check-in: 42b2e6676f user: drh tags: query-invariants) | |
12:25 | Fix the new --query-invariants option on fuzzcheck so that it does not use an unprotected sqlite3_value object as an argument to sqlite3_value_int64(). (check-in: d9f820151d user: drh tags: trunk) | |
11:39 | Avoid omitting the rhs of FULL JOINs in cases where it is only correct to omit the rhs of a LEFT JOIN. Fix for the problem reported by forum post 5610c17c3d. (check-in: f23a429d41 user: dan tags: trunk) | |
00:24 | Tiny fiddle cleanups. (Closed-Leaf check-in: 01969ba568 user: stephan tags: fiddle-indexeddb) | |
2022-06-16
| ||
23:55 | fiddle: initial proof of concept of using Emscripten's IndexedDB virtual filesystem for a persistent db. There's still much work to do to integrate this into something useful for clients but the concept is now proven. (check-in: 65c152d335 user: stephan tags: fiddle-indexeddb) | |
20:29 | Minor fix to the query invariant testing logic of fuzzcheck. (check-in: 447e62a094 user: drh tags: trunk) | |
13:57 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: 7f405fe209 user: drh tags: reuse-schema) | |
13:44 | Merge the latest trunk enhancements into the wal2 branch. (check-in: c8ad869938 user: drh tags: wal2) | |
2022-06-15
| ||
20:18 | Improvements to query invariants in fuzzcheck. (check-in: 3a461f61b4 user: drh tags: trunk) | |
16:26 | Improvements to query invariant checking in fuzzcheck. (check-in: 56c60a35ea user: drh tags: trunk) | |
14:57 | When running an incremental vacuum, detect growth in the size of the database file (which can only occur if the file is corrupt) and fail with SQLITE_CORRUPT. (check-in: cd7a441245 user: drh tags: trunk) | |
12:50 | Add the --query-invariants option to fuzzcheck. No changes to the SQLite core. (check-in: fef282f9fb user: drh tags: trunk) | |
12:32 | Dbsqlfuzz discovered a case where a bytecode branch is in fact taken, so change the designator from VdbeCoverageNeverTaken() to VdbeCoverage(). Test case in TH3. (check-in: 988a2a759f user: drh tags: trunk) | |
10:46 | Add the --query-invariants flag to fuzzcheck. The query invariant checks are only run if that flag is enabled. (Closed-Leaf check-in: d13b462129 user: drh tags: query-invariant-tests) | |
10:37 | Improvements to query invariant testing. Almost working now. (check-in: e039820418 user: drh tags: query-invariant-tests) | |
2022-06-14
| ||
22:21 | Fix the OP_NullRow opcode so that it works even if it applied to an ephemeral cursor that has not yet been created. (check-in: 0e925654c2 user: drh tags: trunk) | |
21:34 | Add missing SQLITE_FCNTL_SIZE_HINT call to a path taken during transaction rollback. (check-in: 6c3266c1b4 user: dan tags: trunk) | |
19:12 | Attempt to enhance fuzzcheck to do some simple invariant testing on queries. This is an incremental check-in for a work-in-progress. (check-in: ce2d780163 user: drh tags: query-invariant-tests) | |
2022-06-13
| ||
12:42 | Do not remove the EP_CanBeNull flag from expressions during a LEFT JOIN strength reduction if the query also contains a RIGHT JOIN. Fix for the problem identified by [forum/forumpost/b40696f50145d21c|forum post b40696f50145d21c]. (check-in: b1be2259e2 user: drh tags: trunk) | |
2022-06-10
| ||
16:41 | The same restrictions on the use of WHERE clause terms to drive indexes in the presence of RIGHT JOINs also apply to the use of WHERE clause terms to manufacture automatic indexes. This fixes a problem identified by forum post 51e6959f61. (check-in: 342c501f53 user: drh tags: trunk) | |
15:43 | fiddle: minor style tweaks, including using swapped colors for the input/output fields to help (hopefully) reduce the "which field is which?" dissonance. (check-in: e25dad868f user: stephan tags: trunk) | |
11:28 | Do not allow constant propagation between WHERE-clause terms and ON-clause terms as this can confuse RIGHT JOIN. Fix for the problem reported by forum post 8e4c352937e82929. (check-in: cab9b4cccd user: drh tags: trunk) | |
10:10 | Fix a faulty assert() statement identified by forum post 0b91a75039. (check-in: 1f132bb03a user: drh tags: trunk) | |
09:31 | fiddle: modernized the UI based on related code in fossil's /pikchrshow. Changed the color scheme to match sqlite.org. (check-in: c4523ffcc0 user: stephan tags: trunk) | |
2022-06-09
| ||
20:26 | Do not allow the subtype of a value to cross a subquery boundary. This fixes the problem identified by forum post 3d9caa45cbe38c78. (check-in: bbaf1f2eb1 user: drh tags: trunk) | |
17:17 | Prevent subtype values from slipping across a subquery boundry when the subquery is implemented as a co-routine. (Closed-Leaf check-in: 9e51a6c0fb user: drh tags: subtype-subquery) | |
16:19 | The subtype of a value should not propagate across a subquery boundary. Proposed fix for the problem reported by forum post 3d9caa45cbe38c78. Additional works is needed as not all cases are covered. (check-in: 08af1fe27e user: drh tags: subtype-subquery) | |
2022-06-08
| ||
18:29 | Move an #ifdef in shell.c to avoid a harmless "unused function" compiler warning. (check-in: 5abb5ef500 user: drh tags: trunk) | |
18:20 | Avoid zeroing the value returned by sqlite3_changes() when a DML statement is automatically reprepared in sqlite3_step(). (check-in: 09c8f9f197 user: dan tags: trunk) | |
17:48 | Improved comments on the new query flattener restriction of the previous check-in. Also a NEVER() macro on an unreachable branch. (check-in: 8c9e2d6315 user: drh tags: trunk) | |
15:38 | Fix the query flattener so that it refuses a flattening that might leave both an inner-join and outer-join ON-clause constraint (or equivalent) on the same term of the FROM clause. (check-in: f6c4fb48b6 user: drh tags: trunk) | |
15:30 | Add restriction (29) to the query flattener - do not allow flattening that would leave both EP_InnerON and EP_OuterON constraints on the same join term. (Leaf check-in: c585d6a467 user: drh tags: right-join-query-flattener) | |
13:13 | New test cases refute check-in [3f45007d544e5f78]. (check-in: 12d3c96c39 user: drh tags: right-join-query-flattener) | |
12:46 | Do not allow a partial index scan on the left table of a RIGHT JOIN, because since the index is partial, some rows will be omitted from the scan, and those rows will subsequently be picked up by the no-match logic in the right-join post-processing loop. forum post c4676c4956. (check-in: 615c002611 user: drh tags: trunk) | |
12:35 | Minor fix to test/index9.test so that it can be invoked with other index tests using a wildcard. (check-in: ccbd6e7749 user: drh tags: trunk) | |
12:20 | Update the routine that determines whether or not a partial index can be used so that it is not specific to LEFT JOIN. (check-in: 5a107fd7fa user: drh tags: trunk) | |
2022-06-07
| ||
13:09 | Fix the query flattener to deal with a RIGHT JOIN corner case described by forum post 323f86cc30. (check-in: 3f45007d54 user: drh tags: trunk) | |
11:02 | Test cases for forum post 323f86cc30 added to join8.test, though commented out so that they do not (yet) run. (check-in: 7f97cb67d0 user: drh tags: trunk) | |
10:14 | Preserve the database encoding on the CAST operator in the sqlite3ValueFromExpr() routine. Forum thread 800eecf5e6cdc3f4. Test case in TH3. (check-in: 3f6a442099 user: drh tags: trunk) | |
2022-06-06
| ||
23:22 | More precise determination of when a WHERE clause can be used to drive an index on an outer join. (check-in: 318543a911 user: drh tags: trunk) | |
22:33 | More precise determination of when a WHERE/ON clause term can be used as an indexed join constraint. Testcase macros added to ensure test coverage. (Closed-Leaf check-in: f419e98c51 user: drh tags: outer-join-tests) | |
21:08 | Extra test cases for outer joins. (check-in: c750576528 user: dan tags: outer-join-tests) | |
15:27 | Do not allow a WHERE clause constraint to be used to drive an index for the right operand of a RIGHT JOIN, since this can cause problem if the constraint implies a not-NULL value for one of the columns for the left operand of the same join. See forum post 206d99a16dd9212f. (check-in: 4a31b7942a user: drh tags: trunk) | |
15:22 | In CLI, drop .dbinfo command when build options prevent it from working. (check-in: 4b50a55165 user: larrybr tags: trunk) | |
14:00 | Sync w/trunk, pickup fts3corrupt6.test change. (Closed-Leaf check-in: 268072f636 user: larrybr tags: dbinfo-guard) | |
06:29 | fiddle: replaced the huge file selection widget with a smaller proxy button. (check-in: f7c17449ea user: stephan tags: trunk) | |
06:17 | Fix a test case in fts3corrupt6.test. Was failing due to [f1dfbc4f]. (check-in: 04b2e47784 user: dan tags: trunk) | |
04:09 | shell: in WASM mode, permit ATTACH because the filesystem is a virtual sandbox and ATTACH can be used to provide more import/export options. Minor doc updates in sqlite3-api.js. (check-in: f28de5b726 user: stephan tags: trunk) | |
2022-06-05
| ||
22:58 | In CLI, drop .dbinfo command when build options prevent it from working. (check-in: 2512d2f68d user: larrybr tags: dbinfo-guard) | |
22:40 | Create new branch named "dbinfo-guard" (check-in: 8d942ba72e user: larrybr tags: dbinfo-guard) | |
2022-06-03
| ||
14:08 | Fix to test case in fts3corrupt.test. No changes to source code. (check-in: d18818afc6 user: dan tags: trunk) | |
13:52 | Fix a 1-byte overread in fts3 that could occur when processing corrupt records. (check-in: f1dfbc4f74 user: dan tags: trunk) | |
2022-06-02
| ||
16:26 | Fix a problem with flattening and window functions causing an "IS <column>" to be transformed to "IS TRUE" or "IS FALSE" when <column> is a view or sub-select expression that is the literal value "TRUE" or "FALSE". (check-in: 2a952c7738 user: dan tags: trunk) | |
02:45 | Avoid a direct use of abort() in debug builds to prevent a compilation issue for Windows CE. (check-in: 8eb9a7dd07 user: mistachkin tags: trunk) | |
2022-06-01
| ||
20:08 | New test cases for row values and RIGHT JOIN. (check-in: 5f0582b90f user: drh tags: trunk) | |
16:05 | Ensure that subqueries associated with row-values are invoked before being used when processing a RIGHT JOIN. Fix for the problem described by forum post 087de2d9ec87305b. (check-in: 5a9465dcc0 user: drh tags: trunk) | |
16:04 | fiddle: added another UI element to the list of those which are disabled during long-running activities. Added DB.close() binding to the Worker-based wasm binding. (check-in: 5933163ed1 user: stephan tags: trunk) | |
15:53 | Ensure that all necessary row-value subqueries are invoked while running the right-join post processing. (Closed-Leaf check-in: e4e71b4cd4 user: drh tags: row-value-right-join) | |
14:52 | Minor tweaks to, and consolidation of, the wasm-related build flags. (check-in: f0ad6b1b32 user: stephan tags: trunk) | |
14:32 | Fix a minor problem in the Tcl "incrblob" command. This does not affect the SQLite core. (check-in: e96feccc21 user: dan tags: trunk) | |
13:32 | Candidate fix for the problem with row-value WHERE clause constraints on a RIGHT JOIN. (check-in: fdd782a7bb user: drh tags: row-value-right-join) | |
13:32 | Only include the code for sqlite_offset() if compiled with -DSQLITE_ENABLE_OFFSET_SQL_FUNC. (check-in: 382cd7e10b user: drh tags: trunk) | |
13:01 | Fix a typo in a comment in a test case. No changes to code. (check-in: 570efa45dd user: drh tags: row-value-right-join) | |
11:58 | Additional enhancements to the test cases. (check-in: 55cfad74ca user: drh tags: row-value-right-join) | |
11:46 | Fix test cases in the previous check-in to make them postgres-compatible. (check-in: f223ba72b6 user: drh tags: row-value-right-join) | |
11:43 | Test case for forum post 087de2d9ec showing a problem when a row-value constraint is used with RIGHT JOIN. (check-in: d1e3e0d26e user: drh tags: row-value-right-join) | |
11:20 | The Worker-specific variants of the most significant DB-class JS bindings are implemented, most notably various uses of DB.exec(). (check-in: 371d6f7497 user: stephan tags: trunk) | |
11:05 | Move the sqlite_offset() function implementation to be an in-line function, thereby avoiding special case code and freeing up a bit in the FuncDef.flags field. (check-in: 1c9812c458 user: drh tags: trunk) | |
08:09 | Initial proof of concept code for a JavaScript binding which runs in the main window thread but acts on a db handle running in a Worker thread. Expanded the DB.exec() and DB() constructor to simplify certain use cases. (check-in: d9efe3e92d user: stephan tags: trunk) | |
00:00 | Initial bits for a JS API variant in which the client operates in the main thread and sqlite3 in a Worker. This is far from complete. (check-in: f6d6f96979 user: stephan tags: trunk) | |
2022-05-31
| ||
18:18 | New FULL JOIN test cases. No changes to code. (check-in: 13e89ef664 user: drh tags: trunk) | |
17:24 | More JOIN test cases inspired by the problem fixed in [3869fd9a2b9483cb]. (check-in: f2d224c5fa user: drh tags: trunk) | |
15:18 | Fix an assert that is incorrect for a corrupt database. (check-in: fe0a840805 user: drh tags: trunk) | |
14:19 | Many new PG-confirmed test cases in joinD.test. (check-in: 481e89c764 user: drh tags: trunk) | |
11:22 | Restore an ON-clause test case (removed by [3869fd9a2b9483cb]) that turns out to be necessary for correct operation. Fix for forum post c2554d560bac97c5. (check-in: f407ec678f user: drh tags: trunk) | |
11:13 | Add back in a test case for ON-clauses that was removed yesterday by [3869fd9a2b9483cbf] but which turned out to be necessary after all. (Closed-Leaf check-in: aba52a90ee user: drh tags: right-join-bug-20220531) | |
10:48 | Add test cases for forum post c2554d560bac97c5. (check-in: e66d5ae86c user: drh tags: right-join-bug-20220531) | |
02:03 | Updated the wasm builds to generate gzip'ed copies of relevant files to take advantage of althttpd's new capability of substituting gzip files in place of requested files. This cuts over-the-wire size of the fiddle app by more than half. (check-in: 40925585f1 user: stephan tags: trunk) | |
2022-05-30
| ||
17:33 | For an outer join, then ON-clause constraints need to be evaluated at just the right moment - not too early and not too late. Fix for the problem reported by forum post 3902c7b833. (check-in: 3869fd9a2b user: drh tags: trunk) | |
2022-05-28
| ||
15:01 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: 4d46296ef6 user: drh tags: reuse-schema) | |
14:44 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 934656f13d user: drh tags: wal2) | |
14:03 | Apply the UPDATE-FROM file from check-in [98b3816bbaf539ea] to update-delete-limit builds. (check-in: 7e87892c24 user: drh tags: trunk) | |
11:59 | fiddle: changed the internal key of the session/local storage to avoid conflicts with the pikchr fiddle app (which is derived from this one) when running from the same HTTP origin as an instance of that app in a dev environment. (check-in: fd668da5cc user: stephan tags: trunk) | |
11:29 | fiddle: corrected a piece of far-corner-case error handling and made the various checkbox config options persistent. (check-in: 2ba429a4f8 user: stephan tags: trunk) | |
2022-05-27
| ||
18:06 | Mark an always-true conditional as ALWAYS(). (check-in: 3492fe8a21 user: drh tags: trunk) | |
17:36 | Minor simplification to ALTER TABLE logic. (check-in: 01beb0365c user: drh tags: trunk) | |
17:13 | Corrected a broken HTML comment (was using a C-style comment closer). (check-in: db742e3e7d user: stephan tags: trunk) | |
15:33 | Fix another problem with ALTER TABLE and UPDATE...FROM in triggers. (check-in: 33cf12235e user: dan tags: trunk) | |
15:04 | Fix further issues with ALTER TABLE and triggers that contain UPDATE..FROM statements. (check-in: 53fbc269dd user: dan tags: trunk) | |
14:41 | Omit an unnecessary branch. (check-in: f56473f9cc user: drh tags: trunk) | |
03:27 | fiddle: added an option to completely wipe/reset the db. The Options area can now be toggled on/off via tapping the label at its top. Running the input SQL is now limited to the selected area if any text is currently selected, per suggestion in the forum. (check-in: d100283e37 user: stephan tags: trunk) | |
2022-05-26
| ||
19:10 | Fix issues with ALTER TABLE and triggers containing "UPDATE...FROM" statements. (check-in: 2fba0d41b7 user: dan tags: trunk) | |
17:33 | Correct handling of outer joins in the FROM clause of an UPDATE statement that occurs inside of a trigger. Follow-on to [98b3816bbaf539ea]. (check-in: 664a49fa81 user: drh tags: trunk) | |
14:46 | Clarification of the meaning of the N parameter in sqlite3_db_name(). Documentation only. No changes to code. (check-in: f22f41d2c8 user: drh tags: trunk) | |
05:18 | Fixed a minor cut/paste mistake in the previous checkin. Affects only internal docs. (check-in: 37e3764839 user: stephan tags: trunk) | |
05:08 | Makefile.in: added explanations, intended for maintainers and hackers, of the various emcc flags used for building the wasm files. No code or build rule changes. (check-in: 1a15915909 user: stephan tags: trunk) | |
2022-05-25
| ||
13:10 | Slight increase in the accuracy of log10(). (check-in: c48a735bd4 user: drh tags: trunk) | |
12:49 | Do not allow the right operand of a RIGHT JOIN to be reordered with other FROM clause terms that are even further to the right. Fix for the issue identified by forum post 5cfe08eed6. (check-in: 4be0c60e38 user: drh tags: trunk) | |
11:17 | Add in a VdbeCoverage() macro accidentally omitted from [d64ae49a1f251317]. (check-in: 18b5cea039 user: drh tags: trunk) | |
11:09 | Fix the UPDATE-FROM logic so that it works the same as PostgreSQL when the FROM clause contains an outer join. (check-in: 98b3816bba user: drh tags: trunk) | |
08:51 | Got the sqlite3-api JS bits wrapped up in deferred-load module. Whether that's going to be easier to use, in practice, remains to be seen. Consolidated two of the test-related JS files. (check-in: dd83cc05f2 user: stephan tags: trunk) | |
04:38 | Renamed EXPORTED_FUNCTIONS.sqlite3 to EXPORTED_FUNCTIONS.sqlite3-api to avoid any potential confusion about that file (not) being an sqlite3 database. (check-in: 3d6245c6f9 user: stephan tags: trunk) | |
04:35 | Add the ability to import/export db files into/from fiddle. (check-in: e0c30438a4 user: stephan tags: trunk) | |
04:20 | Further minor cleanups and docs in the fiddle app and worker. (Closed-Leaf check-in: 199e01799d user: stephan tags: fiddle-local-db) | |
03:08 | fiddle: refactored so that it no longer exposes any global symbols. Doing so with the main sqlite3.api module will be much tricker. (Edit: it _does_ export a global symbol, but it's the function to init the module instead of the module itself. Not sure that's any cleaner.) (check-in: cd227be805 user: stephan tags: fiddle-local-db) | |
02:32 | An attempt to get UPDATE FROM working when the FROM clause contains a RIGHT or FULL JOIN. (Closed-Leaf check-in: a124e4f96f user: drh tags: update-from-right-join) | |
2022-05-24
| ||
22:16 | fiddle: added support for exporting (downloading) the current db file. To do this we had to fall back to named dbs, instead of defaulting to an in-memory one, but the virtual filesystem is an in-memory FS, so the end effect is the same. (check-in: 7c7fd34c8a user: stephan tags: fiddle-local-db) | |
19:01 | fiddle: initial work on loading a client-side db file. Works but requires some cleanup. Export is not yet implemented. (check-in: 0fa8378c00 user: stephan tags: fiddle-local-db) | |
16:05 | When an ON clause on an INNER JOIN references a table to the right of of the join, just convert the ON clause to an ordinary WHERE clause term, in order to be compatible with older versions of SQLite. See forum thread 687b0bf563a1d4f1 for details. (check-in: 2b6ebba26d user: drh tags: trunk) | |
14:45 | Use more descriptive var names in ext/fiddle/Makefile. (check-in: 2f9a42fb14 user: stephan tags: trunk) | |
14:36 | fiddle: lots of generic refactoring, restructuring, and cleanup in the higher-level code. Added push-fiddle ext/fiddle/Makefile target to push the fiddle app to a remote server via rsync. (check-in: ed19fef345 user: stephan tags: trunk) | |
01:15 | wasm/JS: minor doc updates, corrected bind()ing of the undefined value to behave as documented, removed some superfluous code. (check-in: 526c8c7280 user: stephan tags: trunk) | |
00:35 | wasm/JS: documented DB.selectValue() and corrected the fetching of NULL columns via Stmt.get(). (check-in: 70f91fab82 user: stephan tags: trunk) | |
00:22 | wasm/JS: added support for scalar UDFs. Fixed a deallocation problem with bind()ed strings/blobs. (check-in: 325a9ee31a user: stephan tags: trunk) | |
2022-05-23
| ||
19:38 | wasm: minor refactoring and doc updates. (check-in: 6044605b2a user: stephan tags: trunk) | |
16:54 | fiddle: cleaned up and documented the status-loading progress mechanism in prep for reusing it in the sqlite3-api worker. (check-in: 107e349786 user: stephan tags: trunk) | |
13:55 | wasm: added missing 'use strict' and fixed an undeclared var use caught by that. (check-in: c16a7f4950 user: stephan tags: trunk) | |
13:52 | wasm: corrected isSupportedBindType() to behave as documented. (check-in: 7e2d2e8072 user: stephan tags: trunk) | |
12:37 | New test cases to further demonstrate the difference in name matching rules for LEFT JOIN versus RIGHT JOIN that protect legacy behavior. Forum thread e90a8e6e6fa652ac. (check-in: 2c586060a0 user: drh tags: trunk) | |
11:51 | Add an assert() to clear a harmless static-analyzer warning. (check-in: 919ba2f047 user: drh tags: trunk) | |
10:57 | Do not run the subroutine that materializes a view or subquery until just before the materialization is actually needed, so that if the materialization turns out to never been needed, unnecessary work can be avoided. (check-in: d64ae49a1f user: drh tags: trunk) | |
01:11 | WASM: removed the in64-related bindings, as MDN says that calling a wasm function which has an int64 type in its signature will currently throw because JS has no 64-bit integer support. Those bindings now use doubles and simply hope that the user doesn't exceed their integer precision (2^53-1, approx 9 quadrillion). (check-in: 392e848282 user: stephan tags: trunk) | |
2022-05-22
| ||
22:10 | WASM: an arg handling fix for DB.exec({multi:true...}). (check-in: 0d6332f706 user: stephan tags: trunk) | |
22:00 | WASM: added exec(), execMulti(), and several getters. Various touchups and fixes. (check-in: b790c91b85 user: stephan tags: trunk) | |
19:09 | Implemented Stmt.get() and friends for WASM OO #1 wrapper. Added basic tests for prepare/step/get. Restructured module init output to introduce only 1 global-scope symbol instead of 2. (check-in: 601dc3fa29 user: stephan tags: trunk) | |
16:25 | WASM: added bindings for sqlite3_compileoption_get/used(), moved OO #1 into sqlite3-api.js since it can only be used from the same thread as that API and separating them complicates client-side use. Started adding test utilities and tests for the OO1 API. (check-in: f3bc0328c8 user: stephan tags: trunk) | |
14:07 | WASM OO wrapper #1: prepare() and bind() APIs are in place but are untested, pending fetch/get APIs. (check-in: 84c8f63a1c user: stephan tags: trunk) | |
00:27 | Build refactoring for the fiddle/wasm bits. Set up wasm binding of a chunk of the core C API and added some infastructure for creating test pages for it. (check-in: dea098b64e user: stephan tags: trunk) | |
2022-05-21
| ||
21:13 | Minor fiddle-related build restructuring to support upcoming development of the C-style wasm sqlite3 interface, plus some commentary about the plans and goals for that. (check-in: c7cfdd4c36 user: stephan tags: trunk) | |
18:03 | Defer materializing a view or subquery until the materialization is actually needed, so that if it is not needed, not useless work is performed. (Closed-Leaf check-in: 16bf350683 user: drh tags: deferred-materialize) | |
15:54 | Fix a typo in a comment. (check-in: 34d7045b2c user: drh tags: deferred-materialize) | |
15:12 | Use the newer OP_BeginSubrtn opcode instead of OP_Integer to start the subroutine used to matrialize a view. This does not change execution but does make the byte code a little easier to read. (check-in: cebd4fd606 user: drh tags: deferred-materialize) | |
14:19 | fiddle: refactor into main thread (UI) and worker thread (wasm module). Added bits needed to support triggering sqlite3_interrupt() but do not yet have a second SharedWorker to test it with. (check-in: 5ff3326856 user: stephan tags: trunk) | |
00:45 | fiddle: add a selection list of example queries. (check-in: 74abf03977 user: stephan tags: trunk) | |
00:01 | In the shell WASM build, call open_db() early so that we can get access to the global db handle from certain experimentation-only function without having to first run some SQL code. (check-in: 31706ef851 user: stephan tags: trunk) | |
2022-05-20
| ||
13:50 | Added the standard sqlite license header to the the fiddle JS files. Minor internal renamings in those same files. (check-in: 67e40d99ff user: stephan tags: trunk) | |
13:27 | Add a terminal-style view to the fiddle app, based on jquery.terminal. (Leaf check-in: 82b57f2e21 user: stephan tags: fiddle-terminal-view) | |
2022-05-19
| ||
22:04 | #if'd out the '.nonce' and '.check' commends in WASM builds. (check-in: 326f79ea54 user: stephan tags: trunk) | |
21:56 | #if'd out the the '.cd' and '.clone' commands for WASM builds. (check-in: fa391868dd user: stephan tags: trunk) | |
18:14 | fiddle: consolidated two duplicate CSS rules. Internal doc typo fix. (check-in: d3175a793f user: stephan tags: trunk) | |
17:47 | Added a disclaimer about fiddle's experimental and subject-to-change/removal nature. (check-in: 75b4f57408 user: stephan tags: trunk) | |
16:59 | Merge the changes to support the "fiddle" extension. (check-in: 58585f01aa user: drh tags: trunk) | |
16:49 | When building fiddle from its own directory (e.g. from emacs instead of the normal build process), force -O0 the sake of compilation speed. The top-level build now defaults to -Oz, which is more appropriate for that case. (Closed-Leaf check-in: 56b82ae806 user: stephan tags: fiddle) | |
16:42 | Tweaks to the fiddle make target so that it builds with all of the same extensions as the standard CLI. (check-in: d46a6cb974 user: drh tags: fiddle) | |
16:30 | Added a toggle to swap input/output field positions and simplified setup of checkboxes which toggle a CSS class on a given element. (check-in: eae3ab10c8 user: stephan tags: fiddle) | |
16:11 | Default to top/bottom layout with input on the bottom. Offer a toggle to swap input/output positions. (check-in: 362d236aca user: stephan tags: fiddle) | |
15:58 | Numerous layout tweaks, the most significant being that the layout now adapts to the window size. Swapped positions of the input/output areas. This version supports, by uncommenting a few bits, a jquery.terminal-based view but alternatives to that 300kb dependency are still under investigation. (check-in: 1aad3642c9 user: stephan tags: fiddle) | |
10:58 | fiddle make target now accepts fiddle_cflags=... from the CLI to overrid -Ox and such for one-off builds. (check-in: 4609a4f862 user: stephan tags: fiddle) | |
10:38 | Ensure that the output area is cleared of any init-time messages which the emscripten bootstrapping process emits when downloading of the wasm module is slow. (check-in: 1d8d059357 user: stephan tags: fiddle) | |
10:24 | #if'd out the '.log' command in WASM builds. Cleaned up the user-visible parts of the WASM module initialization. (check-in: b5fa12f824 user: stephan tags: fiddle) | |
09:55 | Split the fiddle JS code into separate pre-/post-init files to simplify editing. emcc will combine these into the final fiddle.js, so the number of output deliverables does not change. (check-in: d3d8ea0118 user: stephan tags: fiddle) | |
09:22 | Added an option to auto-clear the output area before submitting the input. Experimentally inverted the colors in the input/output areas. (check-in: 1a1e4e7fdb user: stephan tags: fiddle) | |
01:12 | Replaced the toggle for the notes/caveats section of the fiddle UI with a button to remove that section. (check-in: 6661d60527 user: stephan tags: fiddle) | |
00:38 | #if'd out the '.import' command in WASM builds. Several minor cosmetic UI tweaks. (check-in: e4f87eb7c3 user: stephan tags: fiddle) | |
2022-05-18
| ||
23:40 | #if out the '.load' command in WASM builds. Several UI layout tweaks. (check-in: 67d98297f0 user: stephan tags: fiddle) | |
22:58 | In wasm builds, ifdef out shell commands which require file I/O, pipes, or which trigger an exit() (.quit and .exit). Documented some of the quirks and limitations of the C/WASM crossover. Keep the JS code from calling into the C code after an exit() has been triggered. (check-in: bee436e62a user: stephan tags: fiddle) | |
21:18 | Improved handling/reporting of conditions which trigger an exit() from native code, e.g. calling the '.read' command. Added a Help button which simply submits the '.help' command. Added commented-out variants of various -Ox flags to simplify experimenting with them. (check-in: bf06ddf412 user: stephan tags: fiddle) | |
20:44 | Experimental code to provide a SIZE_HINT when writing the -wal file. (Leaf check-in: 3b29080dbf user: drh tags: wal-size-hint) | |
18:10 | Code style fixes: s/char const/const char/. (check-in: 9bf042b2eb user: stephan tags: fiddle) | |
17:40 | The fiddle input/output areas now stretch and shrink as needed to account for their available space. (check-in: 4eec05457f user: stephan tags: fiddle) | |
17:22 | Increased default size of the fiddle output area, changed the .nullvalue default in the input area, and minor CSS tweaks. (check-in: 281aaae731 user: stephan tags: fiddle) | |
17:14 | Initial version of an sqlfiddle-style application using a WASM build of the sqlite3 shell. (check-in: af9c21c9e0 user: stephan tags: fiddle) | |
2022-05-17
| ||
15:33 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: 495f0353db user: drh tags: reuse-schema) | |
15:11 | Fix harmless compiler warnings in the new unixFullPathname implementation. (check-in: f7e1ceb5b5 user: drh tags: trunk) | |