Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
3062 check-ins using file src/test_vfstrace.c version a2ea82df2e
2025-02-19
| ||
00:18 | Version 3.44.4 (Leaf check-in: f1e31fd996 user: drh tags: branch-3.44, version-3.44.4, patch-release) | |
2025-02-18
| ||
18:05 | Cherry pick recent fixes into branch-3.44. (check-in: 75bbd094db user: drh tags: branch-3.44) | |
2025-01-10
| ||
18:03 | Update log messages on this branch to say "v=22". Also add log message to slow calls to sqlite3_schema_copy(). (Leaf check-in: b0cd8dfcf9 user: dan tags: cf8f1552-commit-instr) | |
17:36 | Add the experimental sqlite3_schema_copy() API, for copying schemas between database handles. (check-in: 04ea435d24 user: dan tags: cf8f1552-commit-instr) | |
17:09 | Minor updates to schemacopy.test. (Closed-Leaf check-in: 1d544b535f user: dan tags: schema-copy) | |
15:10 | Allow ".testctrl schemacopy 1" in the shell tool on this branch. For testing sqlite3_schema_copy(). (check-in: 1edc2e5590 user: dan tags: schema-copy) | |
11:34 | Update test script wal2big2.test to be less sensitive to PRNG output. (check-in: 2a5e7c5cd6 user: dan tags: schema-copy) | |
2025-01-09
| ||
20:41 | Run tests with SQLITE_TESTCTRL_SCHEMACOPY for mdevtest and sdevtest on this branch. (check-in: c25dd2dec5 user: dan tags: schema-copy) | |
19:18 | Rationalize and add comments to new code on this branch. (check-in: e1603c9cda user: dan tags: schema-copy) | |
17:12 | Fix minor issues on this branch. Remove unused code. (check-in: c2610bb4be user: dan tags: schema-copy) | |
2025-01-08
| ||
17:16 | Fix problem in test code on this branch. (check-in: 05d90f8b28 user: dan tags: schema-copy) | |
10:55 | Ensure that integrity-check processes tables in the same order when using a copied schema as it does when using one loaded directly from the db. (check-in: 961af94442 user: dan tags: schema-copy) | |
2025-01-07
| ||
21:04 | Fix many problems in the sqlite3_schema_copy() function. (check-in: ac9ca88590 user: dan tags: schema-copy) | |
2025-01-06
| ||
20:39 | Implemenation of experimental API sqlite3_schema_copy(), for copying a database schema between connections. More testing to come. (check-in: 65ede04d21 user: dan tags: schema-copy) | |
2024-12-23
| ||
11:31 | Up logs to "v=21". (check-in: dc3a24a784 user: dan tags: cf8f1552-commit-instr) | |
11:23 | Experimental: If SQLite is compiled with SQLITE_WAL_BIGHASH defined, use hash tables large enough to fit 128K, instead of 4K, entries in the *-shm file. (check-in: 6e800b7035 user: dan tags: cf8f1552-commit-instr) | |
2024-12-20
| ||
19:37 | When loading stat4 data, make a single large allocation for all Index.aSample[] arrays, instead of a separate allocation for each. (check-in: b40cd7395c user: dan tags: cf8f1552-commit-instr) | |
2024-12-13
| ||
18:13 | Avoid a memset() when loading stat4 data. Add instrumentation to the same code. (check-in: fa87355f62 user: dan tags: cf8f1552-commit-instr) | |
2024-12-12
| ||
20:39 | Increase the maximum number of arguments on an SQL function to 1000 with the capability to increase it further up to 32767 using a compile-time option. (check-in: 3c25c69c93 user: drh tags: cf8f1552-commit-instr) | |
19:20 | Add extra logging for alternative stat4 code. (check-in: 9dde0365cb user: dan tags: cf8f1552-commit-instr) | |
19:15 | Experimental code to load stat4 data using a single pass. (check-in: e0bcd30581 user: dan tags: cf8f1552-commit-instr) | |
2024-12-11
| ||
20:42 | When a writer initializes a new *-shm file hash table, zero only the hash-table slots, not the array of page numbers. (check-in: ac5401c62b user: dan tags: cf8f1552-commit-instr) | |
2024-12-10
| ||
14:56 | Fix a problem with the formatting of "slow schema" log messages. Also change logging version to v=17. (check-in: df4183ace9 user: dan tags: cf8f1552-commit-instr) | |
2024-12-09
| ||
21:26 | Fix a problem with non-PASSIVE wal2 checkpoints sometimes taking the WRITER lock. (check-in: 1a59cae3c3 user: dan tags: cf8f1552-commit-instr) | |
2024-12-06
| ||
17:52 | Update logging (now v=16) to more closely analyze all attempts to load the main db schema. (check-in: 65b753735b user: dan tags: cf8f1552-commit-instr) | |
09:36 | Guard the x64 assembler in wal.c with "ifdef __x86_64__". (check-in: 5fa1699e31 user: dan tags: cf8f1552-commit-instr) | |
2024-12-05
| ||
19:45 | Add logging to report on occasions when loading the ANALYZE data is slow. (check-in: 5f9f6764e9 user: dan tags: cf8f1552-commit-instr) | |
16:52 | Use an inline asm "ret stosp" instruction instead of a memset() when a writer is required to zero a hash table. (check-in: c10fa6af8b user: dan tags: cf8f1552-commit-instr) | |
2024-12-04
| ||
11:01 | Temporarily enable zeroing of wal2-mode hash tables within PASSIVE, as well as non-PASSIVE, checkpoints. (check-in: a97a2b0da1 user: dan tags: cf8f1552-commit-instr) | |
2024-11-28
| ||
19:14 | Update logging version to "v=13". (check-in: 442167b86a user: dan tags: cf8f1552-commit-instr) | |
18:58 | In wal2 mode, attempt to zero old *-shm hash table pages within non-PASSIVE checkpoints. This saves writers from having to do it. (check-in: 40aafd4585 user: dan tags: cf8f1552-commit-instr) | |
2024-11-26
| ||
17:30 | Avoid ever logging times for ROLLBACK commands. (check-in: bc7f7986ec user: dan tags: cf8f1552-commit-instr) | |
2024-11-20
| ||
20:26 | Logging enhancements. And mark logs v=12. (check-in: 853f9cf453 user: dan tags: cf8f1552-commit-instr) | |
18:49 | Experimental change to omit writing frame checksums to the wal file. (check-in: 4d37067270 user: dan tags: cf8f1552-commit-instr) | |
17:47 | Update logging version to "v=11". This should have been part of the previous commit. (check-in: e6663fab61 user: dan tags: cf8f1552-commit-instr) | |
2024-11-19
| ||
17:32 | Extra logging for the freelist and hash table components of COMMITs of BEGIN CONCURRENT transactions. (check-in: 2ba41da8c4 user: dan tags: cf8f1552-commit-instr) | |
2024-11-13
| ||
14:42 | Increase maximum length of sqlite3_log() messages to 700 bytes. Mark log messages as v=10. (check-in: 35aa893d45 user: dan tags: cf8f1552-commit-instr) | |
11:12 | Optimize deferred allocation of pages on this branch by avoiding BTALLOC_LE. (check-in: e0c0176793 user: dan tags: cf8f1552-commit-instr) | |
2024-11-08
| ||
17:09 | Even more detailed logging of slow COMMIT statements. (check-in: 3a45387a09 user: dan tags: cf8f1552-commit-instr) | |
2024-11-04
| ||
17:33 | Avoid loading the entire record into memory for an sqlite3_preupdate_old() call that retrieves an IPK value. (Leaf check-in: f9a90a0d2c user: dan tags: branch-3.46) | |
2024-11-01
| ||
15:25 | Update log messages to say "v=8" instead of "v=7". (check-in: 492a0a8543 user: dan tags: cf8f1552-commit-instr) | |
15:20 | Still more logging, this time focused on the sqlite3WalFrames() function. (check-in: 52d332f0c7 user: dan tags: cf8f1552-commit-instr) | |
2024-10-30
| ||
18:24 | Add extra logging to analyze COMMIT commands. (check-in: 7dbb43bd30 user: dan tags: cf8f1552-commit-instr) | |
2024-10-25
| ||
18:37 | Update special logging messages on this branch to say "v=6" instead of "v=5". (check-in: af4e778bd3 user: dan tags: cf8f1552-commit-instr) | |
18:24 | Reduce the number of malloc()/free() calls that may occur when a BEGIN CONCURRENT transaction is committed. (check-in: fcd68bebf2 user: dan tags: cf8f1552-commit-instr) | |
2024-10-23
| ||
17:16 | Extra logging to debug slow commit statements. (check-in: 9cafae1fff user: dan tags: cf8f1552-commit-instr) | |
2024-10-22
| ||
16:26 | Add still more logging to determine why schema loads are so slow in some circumstances. (check-in: d02ec06e5b user: dan tags: cf8f1552-commit-instr) | |
2024-10-21
| ||
11:49 | Add extra logging to SQL statements used to load the database schema on this branch. This requires SQLITE_ENABLE_STMT_SCANSTATUS. (check-in: 08e1dea9c0 user: dan tags: cf8f1552-commit-instr) | |
2024-10-17
| ||
12:17 | Fix the OPFS VFS's xOpen() to honor the read-only flag. Fix the OPFS SAHPool VFS to enable re-installation of the VFS after calling OpfsSAHPoolUtil.removeVfs(). (check-in: 63ee358420 user: stephan tags: branch-3.46) | |
2024-10-10
| ||
15:28 | Fix a typo in the previous commit. (check-in: 6deb4794f8 user: dan tags: cf8f1552-commit-instr) | |
14:31 | Add extra logging points to the code on this branch. (check-in: f29ff2f308 user: dan tags: cf8f1552-commit-instr) | |
2024-10-08
| ||
15:08 | Add logging to help analyze slow "PRAGMA cache_size = ?" statements. (check-in: cd6f585cad user: dan tags: cf8f1552-commit-instr) | |
2024-10-07
| ||
16:11 | Add logging to help analyze commit performance. (check-in: c5391f2cc9 user: dan tags: cf8f1552-commit-instr) | |
12:24 | Fix handling of U+fffd in the LIKE optimization. (check-in: 242cb4bbee user: drh tags: branch-3.46) | |
2024-09-20
| ||
02:08 | Move non-console FILE* I/O to {Read,Write}File() on Win32. (This is a WIP. It builds but needs more testing.) (check-in: b769ed0027 user: larrybr tags: win-dupe-crt-fio) | |
2024-09-09
| ||
15:12 | Fix harmless compiler warnings in FTS5. (check-in: aa75e701de user: drh tags: trunk) | |
2024-09-07
| ||
16:22 | Fix a problem with fts5 locale=1 tables and UPDATE statements that may affect more than one row. (check-in: 70e42f941c user: dan tags: trunk) | |
16:04 | Fix an off-by-one error in the routines that bind the special $test_TTT and $int_NNN parameters for fuzz testing. Fix to testing logic only - no changes to the SQLite core. (check-in: 6206b90a4e user: drh tags: trunk) | |
2024-09-06
| ||
20:12 | Add tests for an fts5 NEAR() expression with a single argument phrase. (check-in: e319d43bfd user: dan tags: trunk) | |
15:52 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: f9ce1ababb user: drh tags: reuse-schema) | |
15:45 | Update the bedrock branch to include all the latest enhancements from trunk. (check-in: 4a3386ccb8 user: drh tags: bedrock) | |
15:42 | Merge the latest trunk enhancement into the wal2 branch. (check-in: f3e3ad6945 user: drh tags: wal2) | |
15:39 | Merge all the latest trunk enhancements into the begin-concurrent branch. (check-in: 2a87a969e7 user: drh tags: begin-concurrent) | |
15:01 | Resolve the "No rule to make target '0'" error when building with --disable-tcl. (check-in: d94541ae76 user: stephan tags: trunk) | |
14:01 | Fix a harmless stray carriage-return character. (check-in: 84a6c5f975 user: drh tags: trunk) | |
13:13 | In testrunner.tcl, correctly capture and display information about the system under test: hostname, OS, pointer size, byte-order. (check-in: ec75cfc5d4 user: drh tags: trunk) | |
11:21 | Fix harmless compiler warnings. (check-in: 60fb8ee153 user: drh tags: trunk) | |
10:35 | A testcase() macro added to help ensure that the fix to the omit-noop-join optimization from yesterday does not regress. (check-in: 224628b103 user: drh tags: trunk) | |
09:49 | Clarification and simplification to the README.md file and to the instructions for building on Windows. (check-in: f69ef1a37b user: drh tags: trunk) | |
2024-09-05
| ||
23:44 | Ensure that the WhereInfo.revMask bitmap is adjusted when tables are removed from the FROM clause by the Omit-Noop-Join optimization. (check-in: 2b543fbc28 user: drh tags: branch-3.46) | |
23:40 | Fix a testrunner status reporting problem introduced by [aa5f10f21dbfb24e]. (check-in: d20c65c3b4 user: drh tags: trunk) | |
23:22 | Ensure that the WhereInfo.revMask bitmap is adjusted when tables are removed from the FROM clause by the Omit-Noop-Join optimization of [0cd82ee9a8413cf1]. Fix for the issue described by format post 8a1e467e905b8d27. (check-in: 22ca5a2ffb user: drh tags: trunk) | |
15:55 | Update notes on build procedures in the README.md file. (check-in: 1d12744fe7 user: drh tags: trunk) | |
15:28 | Testrunner.tcl enhancements: (1) Attempt to build the SQLite tcl extension if it is not already available. (2) testrunner target "devtest" is added as an alias for "mdevtest". (3) Try to keep summary information at the end of a test below 80-characters per line. (4) Update the Makefile.in so that the "clean" target removes the tcl extension built by item 1 above. (check-in: aa5f10f21d user: drh tags: trunk) | |
12:06 | Enhance testrunner.tcl to keep track of the platform and SQLite version as reported by individual test cases and to report that information in the summary at the end of each test run. (check-in: 80ebb7c7e6 user: drh tags: trunk) | |
11:46 | Faster implementation of the aggregate_test_counts procedure inside of testrunner.tcl. (check-in: a01d869520 user: drh tags: trunk) | |
2024-09-04
| ||
18:51 | Make the default TCLDIR be C:\Tcl in the Makefile.msc. (check-in: c2c0a9176a user: drh tags: trunk) | |
17:15 | Merge all the latest branch-3.46 fixes into the bedrock-3.46 branch. (Leaf check-in: 69b3791e17 user: drh tags: bedrock-3.46) | |
16:54 | Update the bedrock branch to include all of the latest trunk enhancements. (check-in: cf8f155280 user: drh tags: bedrock) | |
16:46 | Merge all the latest trunk enhancements into the wal2 branch. (check-in: 9f53034371 user: drh tags: wal2) | |
16:45 | Fix a bug in the parsing of some corner-case JSON PATH strings that contain escaped double-quotes. (check-in: c49c2a8c00 user: drh tags: branch-3.46) | |
16:01 | Fix a bug in the parsing of some corner-case JSON PATH strings that contain escaped double-quotes. (check-in: 60ac55c4b7 user: drh tags: trunk) | |
13:42 | Put a proper shebang at the start of the testrunner.tcl script and make the script executable. (check-in: c0c6e9abeb user: drh tags: trunk) | |
13:09 | Make extra efforts to delete the over-size directory names created by the win32longpath.test module. (check-in: 3c8035ed3f user: drh tags: trunk) | |
11:22 | Add the "joblist" command to testrunner.tcl (check-in: f64469f480 user: drh tags: trunk) | |
2024-09-03
| ||
18:55 | Store the values of any UNINDEXED columns of a contentless fts5 table persistently in the database. Warning: This currently creates a (technically) incompatible file-format for contentless fts5 tables that have UNINDEXED columns. (check-in: dcacb1a8ef user: dan tags: fts5-contentless-unindexed) | |
17:01 | Add SQLITE_USE_ONLY_WIN32 to the Default configuration for testing on Windows. Take it off of Stdcall. (Leaf check-in: 8ace3f15e4 user: drh tags: new-win32-test-config) | |
16:04 | Enhance the "errors" command in testrunner.tcl so that it accepts the "-s" or "--summary" argument to see a list of failed jobs, and so that an additional argument is a GLOB pattern that restricts the output to jobs whose names match that pattern. (check-in: dcbebe30f5 user: drh tags: trunk) | |
14:15 | Fix ext/consio so that it works correctly with SQLITE_USE_ONLY_WIN32. (check-in: efc6f3d7e9 user: drh tags: trunk) | |
14:00 | In testrunner.tcl, compile the Windows Default configuration using SQLITE_ENABLE_STMT_SCANSTATUS. (check-in: 49e8b1635f user: drh tags: trunk) | |
12:41 | Fix harmless compiler warnings in the percentile extension. (check-in: c5557f281c user: drh tags: trunk) | |
10:53 | In testrunner.tcl, allow setting njob to zero, which causes no new jobs to be launched and for the process to shut down once all current jobs are completed. (check-in: 0ef65fd4ba user: drh tags: trunk) | |
02:09 | Cause cfGets() (under SQLITE_USE_ONLY_WIN32) to better emulate fgets(). (check-in: 2d783524d1 user: larrybr tags: win-dupe-crt-fio) | |
2024-09-02
| ||
21:59 | Fix possible NULL pointer dereference following OOM in the new error reporting logic of the percentile extension. (check-in: 7891a266c4 user: drh tags: trunk) | |
18:41 | Fix a technically undefined signed integer overflow in fts5. (check-in: e6bec37ea1 user: dan tags: trunk) | |
17:27 | Make the percential extension easier to incorporate as a built-in on Windows applications. (check-in: 831e2be411 user: drh tags: trunk) | |
14:46 | Remove some debug/test code from percentile. Make the extension easier to statically link. (check-in: 6e5f146e27 user: drh tags: trunk) | |
12:07 | Enhance the percentile extension to support percentile_cont() and percentile_disc(). Add support for ordered-set aggregate notation in the parser when compiling with SQLITE_ENABLE_ORDERED_SET_AGGREGATES. A new function property SQLITE_SELFORDER1 must appear on any aggregate function that wants to take advantage of the ordered-set aggregate notation. (check-in: 557bd245ef user: drh tags: trunk) | |
11:17 | Improved error messages on percentile functions. More tests cases for percentile and for ordered-set aggregates. (Leaf check-in: e1bca168e7 user: drh tags: ordered-set-agg) | |
09:40 | Change the name of the enabling compile-time macro to SQLITE_ENABLE_ORDERED_SET_AGGREGATES. (check-in: 3b1cdddf83 user: drh tags: ordered-set-agg) | |
2024-09-01
| ||
23:56 | More internal documentation improvements. (check-in: 8b91b74931 user: drh tags: ordered-set-agg) | |
23:47 | Improved documentation of recent enhancements to the percentile extension. (check-in: 51e7b4c9cf user: drh tags: ordered-set-agg) | |
23:27 | The WITHIN GROUP (ORDER BY ...) syntax is now a compile-time option: SQLITE_ENABLE_ORDERED_SET_FUNCS. There is no increment in the code size if the option is omitted. (check-in: c9367e2532 user: drh tags: ordered-set-agg) | |
20:24 | Implement percentile_cont() and percentile_disc(). (check-in: b1a93f67d6 user: drh tags: ordered-set-agg) | |
19:19 | No prepare-time penality for ordered-set aggregates for applications that do not use them. (check-in: e070c16d21 user: drh tags: ordered-set-agg) | |
18:57 | Merge fixes from trunk into the ordere-set-agg branch. (check-in: 7528ddcfdf user: drh tags: ordered-set-agg) | |
18:54 | Improved sort function in the percentile extension. (check-in: 9f84e8d59b user: drh tags: trunk) | |
10:52 | Fix to the quicksort algorithm in the percentile extension. (check-in: 54313f74b2 user: drh tags: trunk) | |
2024-08-31
| ||
22:22 | Add error checking: Do not allow functions other than those in the percentile extension to use the ordered-set aggregate notation. (check-in: 317d901429 user: drh tags: ordered-set-agg) | |
20:09 | Demonstration of how ordered-set aggregates might be parsed and integrated into the existing parse tree, should we decide to support them. (check-in: ef97778900 user: drh tags: ordered-set-agg) | |
19:24 | Include percentile() and merge() in the fuzzcheck test utility. (check-in: d1d0942a94 user: drh tags: trunk) | |
18:35 | Omit the percentile_cont() function added by [095c22e62248f8ef] (and not yet released) since its usage conflicts with the PG percentile_cont() function. (check-in: 3fe0a85297 user: drh tags: trunk) | |
18:08 | Allow percentile() and median() to act as window functions. (check-in: 94cf96af8f user: drh tags: trunk) | |
17:50 | Still more test cases. (Closed-Leaf check-in: f099046081 user: drh tags: percentile-window) | |
17:27 | Add more test cases. (check-in: 0d0e545679 user: drh tags: percentile-window) | |
16:55 | Avoid unnecessary sort operations when running one of the percentile aggregates as a window function. (check-in: 5d31153621 user: drh tags: percentile-window) | |
15:02 | Test cases added. (check-in: 25e6822984 user: drh tags: percentile-window) | |
14:31 | Enhance the percentile() and median() extension functions so that they can be window functions. (check-in: 4d0e3df4b9 user: drh tags: percentile-window) | |
2024-08-30
| ||
17:33 | Do not fail the omittest if ICU libraries are not installed. (check-in: ddc55efd2d user: drh tags: trunk) | |
16:51 | New makefile target: "tidy". The "tidy" target removes all build products be leaves behind test results. The "clean" target has been enhanced to do a better job. The tool/omittest.tcl script is rewritten to work on the configure-generated Makefile and to require no arguments. (check-in: e48add0269 user: drh tags: trunk) | |
16:43 | A couple of #defines so that the build work with SQLITE_OMIT_FLOATING_POINT. (Closed-Leaf check-in: be768f80c7 user: drh tags: makefile-improvements) | |
16:24 | Rework the tool/omittest.tcl script so that it works with the configure-generated Makefile, and requires no arguments. Update the configure-generated Makefile with a new "tidy" target which is like "clean" except that is preserves test logs. Use "make tidy" to force everything to be recompiled from scratch without destroying logs. (check-in: 99491df19d user: drh tags: makefile-improvements) | |
12:10 | Improvements to "make clean" on unix. (check-in: a1d775f075 user: drh tags: makefile-improvements) | |
01:11 | In the testrunner.tcl status report, try to provide a rough estimate of the time remaining. (check-in: 90bc616d20 user: drh tags: trunk) | |
2024-08-29
| ||
23:43 | Merge the latest trunk enhancement into the bedrock branch through the wal2 intermediary. (check-in: ff94464cec user: drh tags: bedrock) | |
23:33 | Merge all the latest trunk enhancements into the wal2 branch. (check-in: dfecc79c8f user: drh tags: wal2) | |
23:32 | Sync the autoconf/Makefile.msc with the main ./Makefile.msc (check-in: 9de47c3611 user: drh tags: trunk) | |
23:26 | Sync the amalgamation makefile for MSVC with the main makefile. (check-in: fcc4c3b484 user: drh tags: begin-concurrent) | |
23:24 | Merge all the latest trunk enhancements into the begin-concurrent branch. (check-in: b05d30bec1 user: drh tags: begin-concurrent) | |
22:05 | Fix a problem in winOpen(). Merge the makefile enhancements from trunk. (check-in: bd247ae7f9 user: drh tags: reuse-schema) | |
19:37 | Fix tests cases for SQLITE_ENABLE_SHARED_CACHE so that they work on Windows. (check-in: 60795a30c6 user: drh tags: reuse-schema) | |
18:32 | All makefiles are responsive to OPTIONS=... command-line arguments, and add the RHS value of OPTIONS= to builds and to lemon and other build steps that might respond to -D or -U options. (check-in: 854b3776ee user: drh tags: trunk) | |
17:42 | Merge all the latest trunk enhancements into the reuse-schema branch. (check-in: 87aa6fc212 user: drh tags: reuse-schema) | |
17:18 | Fix a case where the BTCF_AtLast flag was being left set incorrectly. This was causing obscure window function queries to fail. (check-in: 45778b0bb8 user: drh tags: branch-3.46) | |
16:27 | Fix a case where the BTCF_AtLast flag was being left set incorrectly. This was causing obscure window function queries to fail. (check-in: e042eb0247 user: dan tags: trunk) | |
2024-08-28
| ||
19:13 | Do not allow sqlite3_blob_open() to work on a any table that contains generated columns, even columns of the table which are not generated themselves, because such columns might be part of the expression of a STORED column. This restriction could be relaxed some, but that would be a lot of code for something that nobody ever uses. (check-in: 6e84947123 user: drh tags: trunk) | |
15:54 | Fix a dropped error code in fts5. (check-in: df55502e4f user: dan tags: trunk) | |
13:55 | Update the README.md file to recommend running "devtest" instead of "mdevtest". (check-in: eb016f66ea user: drh tags: trunk) | |
13:51 | Maybe [7420b13238da4e6b] was not such a good idea. Restore "make test" so that it works as before - running a single-threaded test over the source tree with options specified by ./configure and similar. Instead, change the "make devtest" target so that runs the automated multi-threaded tests on a standard configuration. (check-in: dc9fee980d user: drh tags: trunk) | |
13:34 | Minor wording change on testrunner output. (check-in: 115e685979 user: drh tags: trunk) | |
12:10 | Update the "make test" target so that it is really just "mdevtest" with "srctree-check" and "sourcetest". (check-in: 7420b13238 user: drh tags: trunk) | |
11:03 | Further improvements to the status display in order to maximum the amount of information shown on the limited screen realestate available when running via "watch" or in continuous monitoring mode. All details are still shown when doing a stand-alone "status". (check-in: 557a2c65f5 user: drh tags: trunk) | |
10:36 | Only limit the number of failures reported by testrunner status if using VT100 cursor movement. For a straight-up "status" command, show everything. (check-in: 791237e0f4 user: drh tags: trunk) | |
10:25 | In the testrunner status display, limit the number of reported failed jobs to avoid overflowing the terminal when there are many failures. (check-in: ffeaa4d5d7 user: drh tags: trunk) | |
09:47 | Disable shell test cases that require virtual tables when testfixture is built using SQLITE_OMIT_VIRTUALTABLE. (check-in: 8c73d54fd1 user: drh tags: trunk) | |
09:31 | Reenable SQLITE_OMIT_VIRTUALTABLE on the Device-One alignment for testrunner. (check-in: 8f2cb35763 user: drh tags: trunk) | |
2024-08-27
| ||
22:28 | Changes to the way "release" tests were constructed in [d03d35eebaf82709] were incorrect. Fixed here. Also enhance --explain to chose permutation configurations and so that PATTERNS on the the command line can match against permutation configurations. (check-in: 1f962ffc9e user: drh tags: trunk) | |
21:44 | Improvements to --status overwrite in testrunner. (check-in: 26372762ab user: drh tags: trunk) | |
20:37 | Avoid reading the structure record from within the fts5 xConnect method. (check-in: 6a6ce343b2 user: dan tags: trunk) | |
19:49 | Further minor improvements and tweaks to the testrunner --status display. (check-in: 7d1ccc6dfc user: drh tags: trunk) | |
19:48 | Fix typo in the previous check-in. Ensure that --status header lines do not overflow and wrap. (Closed-Leaf check-in: 2eaea67495 user: drh tags: testrunner-fix) | |
19:43 | In testrunner, when doing the --status updates to the screen, be sure to overwrite dead text at the end of each line with spaces. (check-in: 7c195f132c user: drh tags: testrunner-fix) | |
19:28 | Further improvement to the status display in testrunner.tcl. Show the number of errors and the number of test cases on the status summary. (check-in: dbc1ac8692 user: drh tags: trunk) | |
19:27 | Modify the implementation of "wrapper" tokenizers to make them more robust in the case where the database connection is closed before the tokenizers are deleted. (check-in: 7c0001d6eb user: dan tags: trunk) | |
19:17 | Improvements to testrunner.tcl: Show elapse time in MM:SS or HH:MM:SS. Keep track of the total number of tests and the total number of errors and report those values on a summary line at the end. (check-in: 40b232924c user: drh tags: trunk) | |
18:25 | Add test code to drop an fts5 table with corrupt records in its shadow tables. (check-in: ca21c942c3 user: dan tags: trunk) | |
17:38 | Updates to testrunner: (1) Omit all testing of User-Auth. (2) Automatically add the "*" wildcard before and after all pattern arguments. (3) Build the sqlite3 CLI for release tests. (check-in: d03d35eeba user: drh tags: trunk) | |
14:35 | Merge the SQLITE_USE_ONLY_WIN32 flag for consio into trunk. (check-in: e9b03b082d user: drh tags: trunk) | |
14:25 | Only avoid all C-runtime I/O if the SQLITE_USE_ONLY_WIN32 flag is defined. (check-in: 164b1e1962 user: drh tags: win-dupe-crt-fio) | |
13:57 | Merge all the latests trunk enhancements into the win-dupe-crt-fio branch. (check-in: 2d52db98f4 user: drh tags: win-dupe-crt-fio) | |
2024-08-26
| ||
23:32 | Earlier error detection while processing complex aggregate queries. dbsqlfuzz 5242c2f07f4aa031aa3c80461f18e9b7619ede9b (The previous check-in on this branch really should have been this cherrypick.) (check-in: f9c6cbc1d3 user: drh tags: branch-3.46) | |
23:19 | Early termination of updateAccumulators() after error detection. (check-in: faecd4505d user: drh tags: branch-3.46) | |
19:08 | Changes to documentation comments in fts5.h. (check-in: 886545a8d0 user: dan tags: trunk) | |
17:35 | Randomize the name of the attached database used to do VACUUM. (check-in: 0f4e65d73a user: drh tags: trunk) | |
16:15 | Bind the new debug parameters in fuzzinvariants.c. (check-in: 29e9bcfa2e user: drh tags: branch-3.46) | |
14:20 | Remove redundant #ifdef accidentally inserted into mkkeywordhash.c. Update 2024-08-27: This branch demonstrates that FROM-first queries can be achieved by simply adding new production rules to the LALR(1) grammar. We do not wish to go down that path at this time. But we might revisit that idea in the future. For now, this branch is closed. (Closed-Leaf check-in: b08f3b7449 user: drh tags: sql-pipes) | |
14:06 | Add the AGGREGATE clause to the pipeline. (check-in: 16d32676e2 user: drh tags: sql-pipes) | |
13:20 | Working better now. (check-in: 4bdcc18d2c user: drh tags: sql-pipes) | |
12:26 | Reduce rules added to the grammar. Kinda works, but there are still bugs. (check-in: 3c7a5cc6d0 user: drh tags: sql-pipes) | |
02:53 | Another version of the parser with a slightly richer syntax. The ghastly pipe operator is now optional, but is never required. Pipelines cannot be initiated from an arbitrary SELECT unless the arbitrary SELECT is a subquery on the initial FROM. (check-in: 8781d7352b user: drh tags: sql-pipes) | |
00:15 | Proof-of-concept grammar rules to parse Google-style "pipe" syntax for SQL, without the ghastly "|>" operator. The grammar rules are not connected to working code. They just parse the syntax. Pipelines that begin with an ordinary SELECT statement must have the keyword "INTO" (rather than the "|>" operator) separating the SELECT from the start of the pipeline, to avoid syntactic and semantic ambiguity. (check-in: 2c4bae3e68 user: drh tags: sql-pipes) | |
2024-08-25
| ||
12:04 | Merge trunk into the wasm-build-rework branch. (check-in: a1cf3095a8 user: stephan tags: wasm-build-rework) | |
11:59 | shell.c.in: use eputz/oputz() instead of eputf/oputf() where appropriate to avoid compilation errors in -std=c99 mode (namely wasm builds). (check-in: 9ef8317fae user: stephan tags: trunk) | |
2024-08-24
| ||
20:05 | Fix harmless compiler warnings in fts5V2toV1Tokenize(). (check-in: df65d00f10 user: drh tags: trunk) | |
20:01 | Fix compiler warnings in the CLI detected by MSVC. (check-in: 23ae505cbf user: drh tags: trunk) | |
19:06 | Improved help message for the --enable-test-status configuration option. Fix the build for when that option is omitted. (check-in: b404a5fe3f user: drh tags: trunk) | |
19:02 | New ./configure option --enable-test-status causes testrunner.tcl to be run with the --status option for targets like mdevtest and releasetest. (check-in: 9ca8513c26 user: drh tags: trunk) | |
18:42 | Remove a term from an assert() that is no longer relevant. (check-in: 8b4766252b user: drh tags: trunk) | |
17:37 | Avoid a stack overflow that could be caused by a recursively defined WINDOW() with a strategically embedded error. (check-in: 074002718b user: drh tags: branch-3.46) | |
15:54 | Avoid a stack overflow that could be caused by a recursively defined WINDOW() with a strategically embedded error. (check-in: bada54bd6b user: dan tags: trunk) | |
11:48 | Ensure that the WhereLoop.u.btree.pOrderBy field added by the order-by-subquery optimization [7a0cdc7edb704a88] is correctly initialized. dbsqlfuzz 437be171a98687082a31ea6efc2fd5c5d64481c8. (check-in: b75f8b2252 user: drh tags: trunk) | |
2024-08-23
| ||
21:20 | Eliminate use of strcpy() in shell.c.in to squelch an unwarranted link-time warning on OpenBSD. (check-in: 32e9bf7f97 user: stephan tags: trunk) | |
17:40 | Fix a problem in the ext/fts5/extract_api_docs.tcl script. (check-in: 9a9d0f6301 user: dan tags: trunk) | |
15:18 | Add fts5 auxiliary function fts5_get_locale(). For querying the locale of a stored value. (check-in: 396f720f36 user: dan tags: trunk) | |
2024-08-22
| ||
18:12 | Enhance the generate_series() table-valued function such that it is able to recognize equality and inequality constraints on the "value" column and optimize its operating accordingly. (check-in: d50b784807 user: drh tags: trunk) | |
16:22 | Add the SQLITE_INDEX_SCAN_HEX bit to the sqlite3_index_info.idxFlags bitmask. When set, this bit causes the EXPLAIN QUERY PLAN output to show the idxNum value in hex rather than in decimal. This is purely a debugging aid. (check-in: 6c00e88ebd user: drh tags: trunk) | |
2024-08-21
| ||
20:25 | Add SQLITE_TESTCTRL_GETOPT. Use it to implement improvements to the ".testctrl opt" dot-command in the CLI, and similar enhancements to TH3. (check-in: 6500baa991 user: drh tags: trunk) | |
18:57 | Add the new SQLITE_TESTCTRL_OPTGET that retrieves the current optimization setting. Use this in the CLI to provide symbolic fine-grain control over optimization settings using the ".testctrl opt" dot-command. (Closed-Leaf check-in: 0ea4e1e8fc user: drh tags: optimization-onoff) | |
17:38 | Improved comments on byte-code subroutine calls to materialize subqueries. Should not affect production builds. (check-in: 6b024c85ef user: drh tags: trunk) | |
13:57 | README.md: a markup link fix and use the canonical URL for Fossil. (check-in: c49bfee6b8 user: stephan tags: trunk) | |
13:44 | Updates and enhancements to the README.md file. No code changes. (check-in: 3161b80289 user: drh tags: trunk) | |
12:01 | Add code comments for a "table-of-contents" and various milestone marks in the 1300+ line long sqlite3Select() function, to help improve readiability and maintainability. Comment changes only - no functional changes. (check-in: 00cfbb9fa5 user: drh tags: trunk) | |
10:37 | Fix a minor typo in a comment. (check-in: 92c80af112 user: drh tags: trunk) | |
10:32 | Improvements to treetrace output for subqueries. Debug code only. (check-in: 0a835d18d9 user: drh tags: trunk) | |
09:56 | De-duplicate some error-output code in shell.c.in as part of tracking down the cause of forum post 5647ca2af1. (check-in: fd5904495e user: stephan tags: trunk) | |
07:38 | Remove incorrect assert() statements in the SrcItem invariant validator. dbsqlfuzz 7f908865436ce531b0ace55c97a1c71d05c4e76c. (check-in: 81a1ede388 user: drh tags: trunk) | |
2024-08-20
| ||
23:11 | Refactor the SrcItem object to move fields associated with subqueries out into a separate object named Subquery. This reduces the size of the SrcItem object by about 1/3rd and provides improved performance. (check-in: 484bcd75bc user: drh tags: trunk) | |
22:44 | Fix a name resolution issue with CTEs. (Leaf check-in: 4fa8235dd5 user: drh tags: srcitem-opt) | |
22:05 | Fix minor comment issues. (check-in: c1bbed19f4 user: drh tags: srcitem-opt) | |
20:01 | Remove unreachable code. (check-in: 17699329aa user: drh tags: srcitem-opt) | |
19:09 | Tighter checking of access constraints on union members in SrcItem. Improved invariant checking. (check-in: fd72d3400a user: drh tags: srcitem-opt) | |
17:41 | Fix some stray SrcItem field name fixes. (check-in: bc5f5ce59e user: drh tags: srcitem-opt) | |
17:24 | Fix a memory leak so that now all dev tests (including TH3) are passing. (check-in: 3995c45fff user: drh tags: srcitem-opt) | |
16:50 | Memory issues fixes so that mdevtest now passes. (check-in: b249516f6a user: drh tags: srcitem-opt) | |
14:16 | When the database encoding is UTF-16LE and the GLOB optimization is used, it is ok to use the range search over an index, but it is not ok to disable the actual GLOB function call. (check-in: db917d50fd user: drh tags: branch-3.46) | |
14:12 | When the database encoding is UTF-16LE and the GLOB optimization is used, it is ok to use the range search over an index, but it is not ok to disable the actual GLOB function call. (check-in: 3399698376 user: drh tags: trunk) | |
12:15 | The LIKE/GLOB optimization restricts its attention to the pattern prefix that is all ASCII. (check-in: 5815f13263 user: drh tags: branch-3.46) | |
12:09 | Fix for the UTF-16LE problem reporte by forum post dc7e1b7527e84343. Because of the unexpected ordering of characters using the default collation (memcmp() order) in UTF-16LE, the LIKE/GLOB optimization restricts its attention to the pattern prefix that is all ASCII, which is the common case. (check-in: a5797ebdea user: drh tags: trunk) | |
2024-08-19
| ||
23:43 | Earlier error detection while processing complex aggregate queries. dbsqlfuzz 5242c2f07f4aa031aa3c80461f18e9b7619ede9b (check-in: 70f4973078 user: drh tags: trunk) | |
22:48 | Refactor the SrcItem object so that information about subqueries is stored in a separately allocated Subquery object. This reduces the memory requirements for SrcItem and makes the code run faster. It also provides an expansion path for subquery processing that does not burden simple queries. The current checking mostly works, but there are still issues that need to be tracked down and fixed. (check-in: 8ff5dda844 user: drh tags: srcitem-opt) | |
20:35 | Update some comments that are processed into the fts5.html webpage. (check-in: 3e06ab218b user: dan tags: trunk) | |
14:33 | Add the fts5_locale() function and related functionality to fts5. (check-in: b963290010 user: dan tags: trunk) | |
14:23 | Fix leap-year handling for dates prior to 0400-03-01. (check-in: 6767bf1c67 user: drh tags: branch-3.46) | |
14:20 | Fix leap-year handling for dates prior to 0400-03-01. Forum post eaa0a09786c6368b. (check-in: 474b7e34b8 user: drh tags: trunk) | |
13:53 | New date/time test cases to validate ancient dates. (Closed-Leaf check-in: 82719074f0 user: drh tags: ancient-date-fix) | |
12:54 | Attempt to fix date/time calculations for days earlier than 0400-03-01. See forum thread eaa0a09786c6368b. (check-in: 00cae11fff user: drh tags: ancient-date-fix) | |
10:40 | Merge trunk changes into this branch. (Closed-Leaf check-in: 6787603bd0 user: dan tags: fts5-locale) | |
2024-08-18
| ||
14:46 | Fix a problem with detail=none, content='' tables. (check-in: 4b8070816a user: dan tags: fts5-locale) | |
09:53 | Automatically disable directory fsync when compiling for AIX. (check-in: 8d170e07e2 user: drh tags: trunk) | |
2024-08-17
| ||
23:23 | Give unique names to fields in the SrcItem object, to facilitate analysis of how those fields are used using "grep". (check-in: 9f5aeef3cb user: drh tags: srcitem-opt) | |
19:46 | Reduce the size of the SrcItem object by combining fields into a union. (check-in: a4c59ac3c6 user: drh tags: srcitem-opt) | |
19:40 | Fix a broken assert() in fts5_storage.c. (check-in: 01116e3279 user: dan tags: fts5-locale) | |
19:11 | Merge trunk changes into this branch. (check-in: 6a8ff9ba5e user: dan tags: fts5-locale) | |
19:07 | Tests to improve coverage of fts5_expr.c. (check-in: f4b839e526 user: dan tags: fts5-locale) | |
17:22 | Add tests to restore coverage of fts5_tokenizer.c. (check-in: 8f9257361b user: dan tags: fts5-locale) | |
16:17 | Adjust Makefile.in so that it outputs a slightly better error message on an attempt to build something that requires TCL libraries when HAVE_TCL is false. (check-in: a4043cbeb8 user: drh tags: trunk) | |
15:52 | Adjust the "configure" script so that it just disables the ability to run tests rather than erroring out if tclsh is unable to recommend a suitable tclConfig.sh. (check-in: 793ff83d09 user: drh tags: trunk) | |
14:59 | Fix a typo in an "ifdef" that broke SQLITE_OMIT_ANALYZE builds. (check-in: c09da26cb6 user: dan tags: trunk) | |
2024-08-16
| ||
19:05 | Add tests to restore coverage of fts5_config.c. (check-in: 9d971b31df user: dan tags: fts5-locale) | |
19:04 | Merge all the latest trunk enhancements, and especially the order-by-subquery optimization, into the bedrock branch, via wal2. (check-in: d0591db3bb user: drh tags: bedrock) | |
18:58 | Merge the latest trunk enhancements into the wal2 branch. (check-in: a78208b597 user: drh tags: wal2) | |
18:51 | If a subquery has an ORDER BY clause and that ordering is helpful in satisfying the ORDER BY or GROUP BY of the outer query without doing an extra sort, then omit or reduce the sort in the outer query. Call this the "order-by-subquery optimization". (check-in: 7a0cdc7edb user: drh tags: trunk) | |
17:54 | Add tests to restore coverage of fts5_storage.c. (check-in: 38841881a0 user: dan tags: fts5-locale) | |
16:20 | Add tests to restore coverage of fts5_main.c. (check-in: 681edd08ab user: dan tags: fts5-locale) | |
15:35 | Ensure that memory allocations in ANALYZE are always 8-byte aligned in order to satisfy a new assert() added by [539e4f661767ef90]. (check-in: a1915cbdec user: drh tags: trunk) | |
11:26 | Fix handling of COLLATE. Add test cases for the same. Code cleanup for improved understandability and maintainability. (Closed-Leaf check-in: 41a41c173a user: drh tags: order-by-subquery) | |
02:19 | Bug fix in the subquery ORDER BY propagator. (check-in: 5a9a3b8af7 user: drh tags: order-by-subquery) | |
00:37 | Improvements to the subquery ORDER BY decision algorithm. Fewer false-negatives. (check-in: b82421e3f5 user: drh tags: order-by-subquery) | |
2024-08-15
| ||
23:38 | If a subquery is materialized due to an ORDER BY and that ordering is useful in helping to satisfy the ORDER BY or GROUP BY in the order query without doing an extra sort, then omit the extra sort. (check-in: 2fbb4dc232 user: drh tags: order-by-subquery) | |
20:33 | Extra tests. (check-in: fb257540d3 user: dan tags: fts5-locale) | |
18:50 | Further tests and fixes for this branch. (check-in: d27985245a user: dan tags: fts5-locale) | |
15:31 | Improved help message for --disable-tcl on the configure script. (check-in: 96e6cfb211 user: drh tags: trunk) | |
15:23 | Reinstate the --disable-tcl option on ./configure. Forum thread 845d4a57becc7f3c. (check-in: de927016aa user: drh tags: trunk) | |
2024-08-14
| ||
20:00 | Doc typo correction reported in the forum. (check-in: 48900a867c user: stephan tags: trunk) | |
17:58 | Improved documentation for the sha3() SQL functions in the shathree.c extension in ext/misc. (check-in: 0ce609103e user: drh tags: trunk) | |
15:04 | Add a compile-time option that enables setting the encryption key. (Leaf check-in: dafc517415 user: drh tags: iotester) | |
14:50 | incremental improvements to iotester. (check-in: 51f5d3d991 user: drh tags: iotester) | |
14:26 | Fix an assert() in fts5 that might fail with an expression like "... NOT ''". (check-in: 317c91edfc user: dan tags: trunk) | |
14:12 | More incremental improvements to the iotester program. (check-in: 30a383fc3d user: drh tags: iotester) | |
13:31 | Further improvements to the new iotester program. (check-in: dd71dde547 user: drh tags: iotester) | |
2024-08-13
| ||
21:15 | More tests for the new code on this branch. (check-in: 00792e807f user: dan tags: fts5-locale) | |
21:04 | Add the sha3_agg() aggregate to the shathree extension. (check-in: c4d7f9996c user: drh tags: trunk) | |
20:16 | Use the xDelete method of the VFS rather than direct interation with the filesystem. (check-in: 96df5aa656 user: drh tags: iotester) | |
19:30 | Infrastructure for a new test program named "iotester" that strives to verify the operation of a VFS object. (check-in: b46d86c22b user: drh tags: iotester) | |
15:04 | Add tests and fix minor issues with the code on this branch. (check-in: def5243a7b user: dan tags: fts5-locale) | |
09:16 | Version 3.46.1 (check-in: c9c2ab54ba user: drh tags: release, version-3.46.1, branch-3.46) | |
2024-08-12
| ||
18:39 | Add extra documentation comments to fts5_main.c. (check-in: 1a7a9bd3f6 user: dan tags: fts5-locale) | |
17:28 | Fix problem with some fts5 aux function APIs with (locale=, detail=none/column) tables. (check-in: bf116dec6f user: dan tags: fts5-locale) | |
17:03 | Fix further issues to do with fts5 locale support. (check-in: e626123580 user: dan tags: fts5-locale) | |
13:31 | Merge current trunk into this branch. (check-in: 900a593ddf user: stephan tags: wasm-build-rework) | |
11:46 | Update the porter tokenizer to use locales. (check-in: 3291ce3a33 user: dan tags: fts5-locale) | |
11:13 | Update the auxiliary function API to include xTokenize_x2() instead of xSetLocale(). (check-in: f7d56a1f21 user: dan tags: fts5-locale) | |
09:49 | Resolve parameters Bind $int_N and $test_T in fuzzcheck inputs. (check-in: 9c10664416 user: drh tags: trunk) | |
2024-08-10
| ||
20:24 | Merge the latest trunk enhancements into main reuse-schema branch. (check-in: 31a71a79bf user: drh tags: reuse-schema) | |
20:22 | Merge all the branch-3.46 patches into the reuse-schema as a new sub-branch called reuse-schema-3.46. (Leaf check-in: a27b12ee22 user: drh tags: reuse-schema-3.46) | |
20:16 | Merge all the latest branch-3.46 changes into the bedrock-3.46 branch via the wal2-3.46 intermediary. (check-in: cfb334dc53 user: drh tags: bedrock-3.46) | |
20:03 | Merge trunk changes into this branch. (check-in: b243007525 user: dan tags: fts5-locale) | |
20:02 | Merge the latest branch-3.46 changes into wal2 as a new sub-branch called wal2-3.46. (Leaf check-in: b917d07fc6 user: drh tags: wal2-3.46) | |
19:59 | Merge all of the latest branch-3.46 into the begin-concurrent branch as a new sub-branch called begin-concurrent-3.46. (Leaf check-in: 6cc144624d user: drh tags: begin-concurrent-3.46) | |
19:57 | Prevent the fts5 xPhraseNext() or xPhraseFirst() APIs from returning an out-of-range column number, even if the database is corrupt. (check-in: d4014c87ba user: dan tags: trunk) | |
19:18 | Fix an uninitialized variable in fts5_tcl.c. (check-in: 924d3467ce user: dan tags: fts5-locale) | |
18:59 | Update the fts5_tokenizer_v2 API so that the locale is passed as parameter to xTokenize(), instead of via a separate call to xSetLocale(). (check-in: 03e63ed24e user: dan tags: fts5-locale) | |
16:29 | Revision to check-in d9f726ade6b258f8 so that OOM and other unrelated failures are not overridden by a syntax error in the tokenizer spec. (check-in: fc956353d3 user: drh tags: branch-3.46) | |
15:46 | Revision to check-in [d9f726ade6b258f8] so that OOM and other unrelated failures are not overridden by a syntax error in the tokenizer spec. (check-in: 3778b2a9ca user: drh tags: trunk) | |
15:05 | Fix harmless compiler warning related to the TCL8-to-TCL9 transition. This change in testing code only and is not relevante to the core SQLite. (check-in: c86ef65545 user: drh tags: trunk) | |
14:56 | Fix behavior change in the offset() SQL function introduced by check-in f0b671183f44d0ae. (check-in: d6fc6e5f0a user: drh tags: branch-3.46) | |
14:53 | Fix behavior change in the offset() SQL function introduced by check-in [f0b671183f44d0ae]. (check-in: c2ac17f183 user: drh tags: trunk) | |
13:45 | Cherrypick ALTER TABLE fixes from trunk so that ALTER TABLE no longer returns SQLITE_INTERNAL instead of SQLITE_ERROR after malformed input. (check-in: 6decf00f7c user: drh tags: branch-3.46) | |
11:02 | Cherrypick various minor fixes from trunk into branch-3.46. (check-in: 6047b18ee3 user: drh tags: branch-3.46) | |
10:14 | Enhancements to covering-index prediction. Add early detection of over-prediction of covering-indexes so that sqlite3_prepare() will return an error rather than just generate bad bytecode. (check-in: 4afe3201f0 user: drh tags: branch-3.46) | |
10:05 | Enhancements to covering-index prediction. In particular, avoid the false-positive prediction described by forum post e60e4c295d22f8ce. Add early detection of over-prediction of covering-indexes so that sqlite3_prepare() will return an error rather than just generate bad bytecode. (check-in: f0b671183f user: drh tags: trunk) | |
09:56 | Add an assert() to fix a harmless compiler warning in the recovery extension. (check-in: 2502339339 user: drh tags: trunk) | |
2024-08-09
| ||
22:48 | Fix a few minor TCL9 compatibilities issues. (check-in: 69eed19914 user: drh tags: trunk) | |
20:59 | Ensure tokenizers registered with xCreateTokenizer_v2() can be accessed using xFindTokenizer(), and that those registered with xCreateTokenizer() work with xFindTokenizer_v2(). (check-in: a3ef7d47b5 user: dan tags: fts5-locale) | |
18:53 | Import the second ALTER TABLE fix from trunk. (Closed-Leaf check-in: 1de3e58836 user: drh tags: covering-index-patch) | |
18:42 | Fix another instance where ALTER TABLE was returning SQLITE_INTERNAL instead of SQLITE_ERROR one malformed input. (check-in: b416756320 user: drh tags: trunk) | |
18:22 | Merge the error code fix from trunk. (check-in: 81dfb8cd5d user: drh tags: covering-index-patch) | |
18:18 | Fix the internal routine sqlite3ResolveExprListNames() so that it returns SQLITE_OK or SQLITE_ERROR instead of WRC_Continue or WRC_Abort. Without this fix, some times of obscure syntax errors end up returning SQLITE_INTERNAL rather than SQLITE_ERROR. (check-in: 9052187efd user: drh tags: trunk) | |
17:09 | Do not attempt to use a covering index based purely on columns-used when doing an UPDATE or DELETE of a WITHOUT ROWID table. Raise an SQLITE_INTERNAL error if there is ever a situation where a table reference cannot be converted into an index reference when the query planner thinks that a covering index is appropriate. (check-in: fae39ae932 user: drh tags: covering-index-patch) | |
13:56 | Add SQLITE_TESTCTRL_EDITSTMT for making rogue changes to the statement bytecode, to test the death-cursor error detection mechanism. (Closed-Leaf check-in: 58ffd5d97e user: drh tags: death-cursor) | |
12:35 | Bind the new debug parameters in fuzzinvariants.c. (check-in: 7e1dc26305 user: drh tags: trunk) | |
12:20 | Remove unused static var cBadGroup from ext/consio/console_io.c to resolve a compiler warning reported in the fossil forum. This is a build fix, not a functional change. (check-in: be3de2e600 user: stephan tags: branch-3.46) | |
12:19 | Remove unused static var cBadGroup from ext/consio/console_io.c to resolve a compiler warning reported in the fossil forum. This is a build fix, not a functional change. (check-in: fa047c3ea7 user: stephan tags: trunk) | |
10:56 | Fix some signed/unsigned compiler warnings on this branch. (check-in: 681d228023 user: dan tags: wal2) | |
10:50 | Fix some signed/unsigned compiler warnings on this branch. (check-in: d615d52918 user: dan tags: bedrock) | |
10:37 | Remove two unnecessary int casts, as reported in forum post 84fe63b7b3. (check-in: 137cc3e9e8 user: dan tags: begin-concurrent) | |
09:49 | Remove two unnecessary int casts, as reported in forum post 84fe63b7b3. (check-in: 1de0c1b574 user: stephan tags: bedrock) | |
02:10 | Change the null-cursor in the previous check-in into a death-cursor. Any access of the cursor causes the prepared statement to return an SQLITE_INTERNAL error. We'll need to add a way to edit the bytecode using sqlite3_test_control() in order to test the death-cursor code path. (check-in: 8894b243ef user: drh tags: death-cursor) | |
01:38 | If there is any question about whether or not the WHERE_IDX_ONLY flag in the query planner is correct, create a backup null-cursor for the table, so that we never try to run an OP_Column against an unopened cursor. (check-in: 7f1617f7bf user: drh tags: death-cursor) | |
2024-08-08
| ||
19:45 | Do not allow the WHERE_IDX_ONLY query planner result in cases where a partial index is used on an UPDATE or a DELETE, since the code might still need to access the original table due to parameterized terms in the WHERE clause of the partial index. (Closed-Leaf check-in: 7058d93b09 user: drh tags: partial-index-terms-patch) | |
16:04 | In the vdbe_addoptrace output, show OP_Column opcodes that fail to translate from table to index. This is an aid to testing and analysis only. No changes to production code. (Closed-Leaf check-in: 7f464793fc user: drh tags: extra-debug) | |
15:42 | Ensure sqlite3expert.c unregisters any SQL user-functions it registers with the database handle before returning. (check-in: 2708314448 user: dan tags: branch-3.46) | |
15:26 | Ensure sqlite3expert.c unregisters any SQL user-functions it registers with the database handle before returning. (check-in: 123b154ce3 user: dan tags: trunk) | |
15:07 | Add assert() statements and reorganize code slightly in fts3 and fts5 to make it easier to follow. (check-in: 797b0a13fd user: dan tags: trunk) | |
14:49 | Do not let the number of terms on a VALUES clause be limited by SQLITE_LIMIT_COMPOUND_SELECT, even if the VALUES clause contains elements that appear to be variables due to the use of double-quoted string literals. (check-in: 05dbfad70c user: drh tags: branch-3.46) | |
14:45 | Do not let the number of terms on a VALUES clause be limited by SQLITE_LIMIT_COMPOUND_SELECT, even if the VALUES clause contains elements that appear to be variables due to the use of double-quoted string literals. Chromium issue 358174302. (check-in: 670beb133e user: drh tags: trunk) | |
12:14 | Back out the --memory option to ".parameter init" in the CLI, as the capability is no longer needed for testing due to the new "$int_N" and "$text_T" automatic bindings, and the "init --memory" is hence just added complication. (check-in: 3b1b0c1419 user: drh tags: trunk) | |
12:08 | In the CLI, recognize magic parameter names "$int_NNN" and "$text_TTT" and bind them with integer value NNN and text value TTT respectively. Intended for testing and debugging use only. (check-in: a929cdb00f user: drh tags: trunk) | |
10:55 | Move a misplaced va_end, as reported in forum post 702c79e9da. (check-in: 569824c7ff user: stephan tags: branch-3.46) | |
10:51 | Move a misplaced va_end, as reported in forum post 702c79e9da. (check-in: daa25fb35f user: stephan tags: trunk) | |
10:10 | Add the --memory option to the ".parameter init" CLI command. When present, the --memory option causes the sqlite_parameters table to be created in a completely independent :memory: database. This can be done to avoid parameter binding queries from being affected by debug settings such as ".wheretrace", ".treetrace", "PRAGMA vdbe_addoptrace=on", and similar. (check-in: 4e69dce209 user: drh tags: trunk) | |
2024-08-07
| ||
21:20 | Fix a broken assert in fts5_expr.c. (check-in: 08cc548840 user: dan tags: trunk) | |
15:17 | Add a new assert() to help static analyzers understand that a pointer is never NULL. (check-in: 433f2b942e user: drh tags: trunk) | |
14:54 | Fix a harmless compiler warning in an assert(). (check-in: 5e4c9a74b2 user: drh tags: trunk) | |
2024-08-06
| ||
23:09 | Remove unused test cases from FTS5, as they interfere with "grep". (check-in: 048a71bae4 user: drh tags: trunk) | |
22:54 | Improved robustness of parsing of tokenize= arguments in FTS5. (check-in: 7a65ac42c2 user: drh tags: branch-3.46) | |
22:49 | Improved robustness of parsing of tokenize= arguments in FTS5. Forum post 171bcc2bcd. (check-in: d9f726ade6 user: drh tags: trunk) | |
20:00 | Improvements to ./configure that will hopefully break fewer builds. (check-in: 769e32a69b user: drh tags: trunk) | |
10:29 | Change the AggInfoColumnReg() and AggInfoFuncReg() macros for compilers that cannot parse empty elements of a comma expression. Forum post 8fd21998dc. (check-in: 533a6251f1 user: drh tags: trunk) | |
2024-08-04
| ||
10:13 | Restore legacy "tcl_install" makefile target, as an interim measure until I can figure out what is going on. (check-in: 931ad7d9e3 user: drh tags: trunk) | |
2024-08-03
| ||
23:00 | Fix to the previous checkin: The colUsed parameter should have high-order bit set if any of the 64-th or greater columns of the virtual table is used. The lower 63 bits of colUsed always show the usage of the first 63 columns of the virtual table. (check-in: 90ac845775 user: drh tags: trunk) | |
21:45 | Ensure that the sqlite3_index_info.colUsed mask always includes the PK fields of WITHOUT ROWID virtual tables. (check-in: ff4ac279b0 user: drh tags: trunk) | |
18:58 | Fix a typo in [c327c0c0] preventing the shell tool from running ".dump" scripts that feature virtual tables. (check-in: 10e97abb87 user: dan tags: trunk) | |
18:45 | Ensure the sqlite3_index_info.colUsed mask always includes the PK fields of WITHOUT ROWID vtabs in cases where they may be used. (Closed-Leaf check-in: c327c0c02c user: dan tags: vtab-pk-colUsed-fix) | |
15:55 | Add the --status option to the test runs using testrunner.tcl. Only works on Unix platforms. The "exec" command appears to interfere with VT100 escape codes on windows. (check-in: 94015cda4c user: drh tags: trunk) | |
2024-08-02
| ||
21:06 | Change things so that locale=1 is required to write fts5_locale() values to an fts5 table, and so that blobs may not be stored in indexed (i.e. not UNINDEXED) columns of these tables. (check-in: c98ccc1216 user: dan tags: fts5-locale) | |
18:20 | Make sure the input buffer is big enough for an memcpy() when doing the restore autodetection in the shell. (check-in: 1637d29d51 user: drh tags: trunk) | |
17:36 | Add the "-d SECS" option to the "status" command of testrunner.tcl (check-in: 2151ea3163 user: drh tags: trunk) | |
15:28 | New MSVC makefile targets: tclextension, tclextension-install, tclextension-uninstall, and tclextension-list. (check-in: c38734f575 user: drh tags: trunk) | |
13:56 | Fix typo in a progress message in the builttclext.tcl script. (check-in: 5e7c946456 user: drh tags: trunk) | |
11:32 | Fix problems in the configure/Makefile system caused by recent enhancements and report by forum post 242ebd0c81. (check-in: a59319fe4a user: drh tags: trunk) | |
00:59 | New configuration option: --with-tclsh=FILE. New makefile targets: tclextension, tclextension-install, tclextension-uninstall, tclextension-list. (check-in: 888284d1d4 user: drh tags: trunk) | |
00:56 | Previous Makefile.in change broke the tclextension-install target. (Closed-Leaf check-in: 7748367c78 user: drh tags: autoconf-revamp) | |
00:51 | Continuing refinements of the tclextension-install makefile target. (check-in: 871c20a848 user: drh tags: autoconf-revamp) | |
00:19 | Extra robustness for the SQLite Tcl Extension builder, so that it works on Debian Linux. (check-in: 2f0738daaf user: drh tags: autoconf-revamp) | |
2024-08-01
| ||
23:30 | Simplification the ./configure script. Carry Makefile CFLAGS and OPTS through into builttclext.tcl. Fix a bug in tclsqlite.c introduced by the previous check-in. (check-in: 72a80aa0ab user: drh tags: autoconf-revamp) | |
23:00 | Add the tclextension-list makefile target. The the makefile running on Mac. (check-in: 2f667cc8e5 user: drh tags: autoconf-revamp) | |
20:26 | New makefile targets: tclextension-install and tclextension-uninstall. Seem to work on Linux. (check-in: 534f8344ab user: drh tags: autoconf-revamp) | |
20:18 | Work on a TCL script that will compile and install the TCL extension. Works on Linux only, so far. This is an incremental check-in. (check-in: 58babd2aa4 user: drh tags: autoconf-revamp) | |
18:10 | Clean up and restructure the TCL configuration sections in autoconf. The new --with-tclsh=FILE option lets you select the specific tclsh that you want to run. (check-in: 8fafc679d9 user: drh tags: autoconf-revamp) | |
17:15 | Clarify the role of Fts5Storage.pSavedRow in the new feature on this branch. (check-in: e8a61d5c48 user: dan tags: fts5-locale) | |
14:43 | Include a test case summary in the output of "errors" in testrunner.tcl. (check-in: 173df1478e user: drh tags: trunk) | |
14:16 | Add the "errors" command to testrunner.tcl. (check-in: 03b7f99229 user: drh tags: trunk) | |
01:06 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: ff9fdd07d2 user: drh tags: reuse-schema) | |
00:47 | Merge the latest trunk enhancements into the bedrock branch. (check-in: c1f616ce80 user: drh tags: bedrock) | |
00:38 | Merge the latest trunk enhancements into the wal2 branch. (check-in: eac582056f user: drh tags: wal2) | |
00:02 | Merge all the latest trunk enhancements into the begin-concurrent branch. (check-in: 3b131bd9aa user: drh tags: begin-concurrent) | |
2024-07-31
| ||
23:49 | Merge the latest trunk enhancements into the lateral-join branch. (check-in: ac6ae84626 user: drh tags: lateral-join) | |
23:46 | Merge all the latest trunk enhancements into the exists-to-join branch. (Leaf check-in: 9084a4c872 user: drh tags: exists-to-join) | |
22:36 | Fix the tclsqlite.c TCL interface module so that it works with both Tcl8 and Tcl9. Make changes across the TCL-based test harness to enable SQLite to be tested with either Tcl8 or Tcl9. Get the --with-tcl= argument on the configure script working. Testing changes only - no changes to the SQLite core. I believe the previous merge attempt didn't work because of errors in the merge itself, not because of faults in the code. Trying again... (check-in: ea9d88f9ca user: drh tags: trunk) | |
22:26 | testrunner.db should be in WAL mode for improved concurrency while running "watch sqlite3 test/testrunner.tcl status". (Leaf check-in: f23ad09798 user: drh tags: tcl9) | |
22:25 | Make the #include section of tclsqlite.c the same as tclsqlite.h. (check-in: 2afadbeb12 user: drh tags: tcl9) | |
22:17 | Fix typo in testrunner.tcl for the "status" command that was causing it to fail if any errors were seen. (check-in: 8327c5ed53 user: drh tags: tcl9) | |
21:59 | Use `<tcl.h>` instead of `"tcl.h"` to include the TCL interface. (check-in: 4e32d4aed7 user: drh tags: tcl9) | |
21:46 |
Changed: Move this back onto the branch. It isn't ready for trunk yet.
| |
20:49 | Fix various problems with the code on this branch. (check-in: 8bd4ae7e95 user: dan tags: fts5-locale) | |
19:57 | More tweaks to testfixture-implemented TCL commands to make them safe for Tcl9. (check-in: 67897ca97d user: drh tags: tcl9) | |
19:56 | Under Tcl9, the %x format letter truncates to 32-bits. Must use %llx in order to get a 64-bit rendering. (check-in: a3044e0ae6 user: drh tags: tcl9) | |
17:15 | Fixes to testfixture routines needed to test snapshots. (check-in: 66f61c3b35 user: drh tags: tcl9) | |
16:37 | Fix a typo in testrunner_data.tcl that prevented --with-tcl specifications from being carried through into sub-builds. Adjust test cases to account for new floating-point differences discovered when --with-tcl was fixed. (check-in: b8f8135191 user: drh tags: tcl9) | |
15:46 | Add missing documentation for new features to fts5.h. (check-in: fa0da3b28e user: dan tags: fts5-locale) | |
15:04 | Remove obsolete testfixture TCL commands formerly required by Windows but now handled by Tcl itself. Update tests case accordingly. (check-in: 4f065fb638 user: drh tags: tcl9) | |
13:00 | Fix problems uncovered while testing Tcl9 on Windows. (check-in: d5523c77fd user: drh tags: tcl9) | |
12:19 | Minor adjustments to get Tcl9-based testing working on Macs. (check-in: 066c8672ee user: drh tags: tcl9) | |
11:42 | Adjust the configure script so that the --with-tcl option is used to find the appropriate tclsh. (check-in: 6fb9e37c75 user: drh tags: tcl9) | |
11:12 | Patch to testrunner.tcl so that it works with Tcl9's pedantic UTF-8 checking. (check-in: 8d4a23d32d user: drh tags: tcl9) | |
10:59 | Fixes to tclsqlite.c to facilitate TEA installs. (check-in: 7157c3c910 user: drh tags: tcl9) | |
10:52 | Merge latest changes from trunk into this branch. (check-in: ff64939ec8 user: dan tags: fts5-locale) | |
02:01 | Fix a problem with strictly conforming UTF8 in shell1.test. (check-in: 8ee187f98d user: drh tags: tcl9) | |
01:53 | Adjust a few tests that don't work even with the new floating point comparison routine. (check-in: 895125a489 user: drh tags: tcl9) | |
01:45 | Implement a new comparison routine to compare text renderings of floating point values. This gets the number of failures down to just 5. But the routine needs work, and probably refactoring. (check-in: 71f2ee5db0 user: drh tags: tcl9) | |
2024-07-30
| ||
20:39 | Fix cases surrounding blob values being stored in locale=1 fts5 tables. (check-in: ae435aff17 user: dan tags: fts5-locale) | |
20:39 | All tests in "make test" now pass with Tcl9, except for about 198 cases where the error involves small differences in the rendering to floating point values. (check-in: 8e27f5326c user: drh tags: tcl9) | |
18:49 | More adjustments to the incrblob channel: Apparently you need to wait until the close2Proc is called with a flag of 0 before actually shutting down the channel. (check-in: fa549a5507 user: drh tags: tcl9) | |
18:42 | Adjustments to test cases for session so that they work with Tcl9. (check-in: d417415b96 user: drh tags: tcl9) | |
18:15 | Tcl_ChannelType implementations for Tcl9 apparently require that wideSeekProc be implemented. Also adjust minor test script issues for fts5 tests so that they can be run sequentially and so that they do not depend on the specific floating point output formats generated by Tcl. (check-in: 19fda979c5 user: drh tags: tcl9) | |
17:09 | Get rid of "-encoding binary" across all test cases, as that is no longer supported in Tcl9. Use "-translation binary" instead. (check-in: e0d9670dd9 user: drh tags: tcl9) | |
16:59 | Use the SQLite format() function to format floating point values for test results, to avoid inconsistences in TCL versions. (check-in: 6a63c47219 user: drh tags: tcl9) | |
16:51 | Fix the incrblob channel so that partial close works with Tcl9. (check-in: d54ec2de78 user: drh tags: tcl9) | |
15:55 | Update the highlight() and snippet() functions to use locales when available. (check-in: 569ae56a67 user: dan tags: fts5-locale) | |
15:49 | First attempt at getting the build to work with Tcl 9.0. (check-in: 6e5bb48a74 user: drh tags: tcl9) | |
2024-07-29
| ||
20:31 | Fix xColumnText() and xColumnSize() APIs. Add xColumnLocale() and xTokenizeSetLocale(). (check-in: 14006711d8 user: dan tags: fts5-locale) | |
17:59 | The idea here was to simply an expression like "(a=5) IS TRUE" into "(a=5)=TRUE". But that does not work, since the original form is FALSE if y is NULL whereas the second form is NULL. Patch save for historical reference only. (Closed-Leaf check-in: d029e94399 user: drh tags: broken-istrue-opt) | |
15:00 | Fix a couple of asan problems on this branch. (check-in: 4e3e529313 user: dan tags: fts5-locale) | |
2024-07-27
| ||
20:28 | Fix documentation typo. Forum post 993cb82402 (check-in: 86de4e755e user: drh tags: trunk) | |
19:46 | Ensure that an fts5 UPDATE does not strip the locale from columns that it does not write to. (check-in: 69205264de user: dan tags: fts5-locale) | |
2024-07-26
| ||
20:50 | Add the fts5_locale() function, and begin adding the related functionality to fts5. (check-in: 8839ef7cfb user: dan tags: fts5-locale) | |
2024-07-25
| ||
16:28 | Fix a non-bare-bones-mode test case broken by the previous checkin. (check-in: 3be729493b user: stephan tags: wasm-build-rework) | |
16:21 | Strip progress handlers and window functions from the wasm bare-bones (formerly 'minimal') JS bits, noting that we can't yet use OMIT_WINDOWFUNC (for the C parts) without a custom amalgamation. Currently at 604kb. (check-in: ec02e9237e user: stephan tags: wasm-build-rework) | |
14:00 | More work on the minimal-mode wasm build (now 603kb uncompressed). Remove the hard-coded feature-enable flags from sqlite3-wasm.c and rely on the build to provide them. Some wasm build cleanup, but attempts to completely overhaul it have been thwarted by my inability to make script-generated makefile code more legible/maintainable than the current eval spaghetti. (check-in: b029c40679 user: stephan tags: wasm-build-rework) | |
10:50 | Start work on an overhaul of the wasm build process, with an eye towards less over-engineering. (check-in: ed746b3dd3 user: stephan tags: wasm-build-rework) | |
2024-07-24
| ||
23:58 | wasm minimal build: strip authorizers and JSON support (saves approx 35kb). Strip vtab support from the JS bits but cannot yet strip it from the C bits because that requires a custom-configured sqlite3.c. (check-in: eb64d10655 user: stephan tags: trunk) | |
22:07 | Restructuring of the wasm build to support an experimental 'minimal' build mode which elides all non-core APIs. (check-in: ee2191f730 user: stephan tags: trunk) | |
13:53 | Add the percentile extension to the CLI by default. (check-in: bcc3184696 user: drh tags: trunk) | |
13:41 | Add the percentile_cont(Y,P) variant of percentile() to the percentile extension. (check-in: 095c22e622 user: drh tags: trunk) | |
12:12 | JNI SQLTester: fix --new command to force-replace db if it already exists. Add no-op impls for --stmt-cache and --jsonglob commands. (check-in: f1185dc349 user: stephan tags: trunk) | |
2024-07-23
| ||
16:23 | Enhance the percentile() extension function to include the median() variant. Update the implementation to implement its own sorting algorithm, so that the extension no longer depends on qsort(). (check-in: 6e31b1bab1 user: drh tags: trunk) | |
2024-07-22
| ||
21:46 | Doc typo fix. No code changes. (check-in: 8d558ad25b user: stephan tags: trunk) | |
21:21 | Move a block of JS code which was inadvertently (and harmlessly) moved in the previous checkin. Clarify the semantics of an internal-use-only API. Add another WAL-related JS test. (check-in: 6cd9f55a97 user: stephan tags: trunk) | |
20:58 | OPFS VFSes: remove the on-open() pragma calls, as those (A) already reflected the build-time default settings and (B) they made it illegal to run locking_mode=exclusive, which is a requirement for WAL mode without shared memory. Modify part of the test suite to demonstrate that the SAHPool VFS can run in WAL mode so long as locking_mode=exclusive is used. (check-in: 19cd8e2b05 user: stephan tags: trunk) | |
19:52 | wasm build: resolve a circular dep and do some minor tidying up. (check-in: 9df3f1f24c user: stephan tags: trunk) | |
19:31 | Fix undesirable C++-style comments in the parser. (check-in: e330596aed user: drh tags: lateral-join) | |
17:09 | Do not abort the resolver early if a LIMIT expression does not resolve, as that can result in a memory leak. (check-in: ac6dc8c605 user: drh tags: lateral-join) | |
16:59 | Only allow variables in LIMIT clauses if the LIMIT is within a LATERAL subquery and the variable resolves to another FROM clause term to the left of the subquery. We cannot allow variables from outer contexts because the LIMIT value is computed before the cursors in the outer context have been initialized. (check-in: 0a2531c3a3 user: drh tags: lateral-join) | |
16:15 | Allow LIMIT expressions to appear in any outer context. (check-in: c9d3427de5 user: drh tags: lateral-join) | |
13:55 | Do not allow LIMIT and OFFSET to be expressions except for in a LATERAL. (check-in: 1034782137 user: drh tags: lateral-join) | |
00:46 | Allow LIMIT and OFFSET to contain variables from prior terms of the FROM clause in a LATERAL subquery. Forum post dfe2cd37ca3a9a80 (check-in: 4f0515138a user: drh tags: lateral-join) | |
2024-07-21
| ||
23:36 | Merge debugging output fixes from trunk into the lateral-join branch. (check-in: 9182e99952 user: drh tags: lateral-join) | |
23:34 | Fixes to TreeView debugging output for VALUES clauses. (check-in: b6aed8bcb0 user: drh tags: trunk) | |
23:10 | Improved debugging output when using PRAGMA vdbe_addoptrace: Show the range of opcodes being checked for Column-to-Copy conversion. (check-in: 2c122026db user: drh tags: trunk) | |
21:37 | Fix to the case of a LATERAL subquery that references a prior table that uses a covering index. Forum post fc29fa4f14. (check-in: 6d863172dc user: drh tags: lateral-join) | |
18:03 | Assert added to ensure that LATERAL subqueries are materialized instead of implemented as a co-routine. (check-in: 6c14b94fb6 user: drh tags: lateral-join) | |
10:35 | Fix LATERAL subqueries so that they are able to reference other subqueries to their left that are implemented as co-routines. See Forum post dfe2cd37ca3a9a80. (check-in: 31e175fcd0 user: drh tags: lateral-join) | |
2024-07-20
| ||
17:38 | Fix rule (1c-ii) of the fromClauseTermCanBeCoroutine() decision so that it work with LATERAL. Add testcase() macros to verify bitmask conditions are all checked. (check-in: 23d83a41ea user: drh tags: lateral-join) | |
16:11 | Fix an oversized allocation in sqlite3ExprCodeIN(). (check-in: d7be326a80 user: dan tags: trunk) | |
14:06 | Add testcase() macros to bitmap tests in the new code. (check-in: 874bc7bc25 user: drh tags: lateral-join) | |
09:36 | Remove an unnecessary error offset assignment. (check-in: 4ee74b7224 user: drh tags: lateral-join) | |
08:31 | Optimizations and improved comments. (check-in: 84b80233e7 user: drh tags: lateral-join) | |
03:57 | Do not do an early abort if a lateral subquery is an empty set. (check-in: 9e50d338eb user: drh tags: lateral-join) | |
03:19 | "LATERAL" may not be a keyword, as that would cause problems for legacy databases that have tables named "lateral". It has to be parsed as an identifier. (check-in: 8217bddaf8 user: drh tags: lateral-join) | |
01:19 | Experimental implementation of LATERAL JOIN. (check-in: 3c045a96bc user: drh tags: lateral-join) | |
2024-07-18
| ||
19:17 | Minor typo fixes in test-script-interpreter.md. (check-in: bf54b26092 user: stephan tags: trunk) | |
18:44 | Fix a problem in FTS5 where it reports the wrong error code following an OOM. (check-in: 0c1cc4071e user: drh tags: trunk) | |
2024-07-17
| ||
18:38 | Fixes for platforms with 32-bit pointers that require 64-bit values to be aligned. (check-in: 539e4f6617 user: dan tags: trunk) | |
16:27 | Add extra assert() statements to the fixes on this branch. (Closed-Leaf check-in: 81b6360050 user: dan tags: alignment-fixes) | |
2024-07-15
| ||
10:13 | Slight doc touchup for [af41a1e6fc8b36e9bf65]/[c7519d98ff09e] based on feedback. No code changes. (check-in: a61997c315 user: stephan tags: branch-3.46) | |
10:11 | Slight doc touchup for [af41a1e6fc8b36e9bf65] based on feedback. No code changes. (check-in: be7b1fc0c5 user: stephan tags: trunk) | |
2024-07-13
| ||
18:16 | Improve one of the JS test cases. (check-in: 3767d8bef2 user: stephan tags: trunk) | |
16:53 | Fixes for platforms with 32-bit pointers that require 64-bit values to be aligned. (check-in: 2212d7488e user: dan tags: alignment-fixes) | |
15:42 | Add JS binding for sqlite3_column_decltype(). (check-in: 5252d292b1 user: stephan tags: trunk) | |
15:21 | JS doc touchups. No code changes. (check-in: a8e240495f user: stephan tags: trunk) | |
14:07 | Add JS bindings for sqlite3_stmt_busy() and sqlite3_stmt_explain(). (check-in: b772edfb44 user: stephan tags: trunk) | |
13:22 | Add missing sqlite3_bind_parameter_name() binding to JS. (check-in: 6dcfcc7e1c user: stephan tags: trunk) | |
12:50 | Add JS bindings and tests for sqlite3_interrupted(), is_interrupted(), and db_readonly(). (check-in: 5589ba5651 user: stephan tags: trunk) | |
11:47 | Remove a stray/harmless duplicate wasm function export entry. (check-in: 5402e4fb1c user: stephan tags: trunk) | |
01:40 | Add several convenience links to the OPFS VFS concurrency tester app for launching it with various combinations of options. (check-in: 397d6a18f1 user: stephan tags: trunk) | |
01:02 | Add an option to the opfs-sahpool VFS which tells it to ignore a previous init failure and retry, as an opt-in workaround for a browser quirk which occasionally denies OPFS access on the first attempt and permits it on subsequent attempts. This resolves issue #79 of the npm distribution. (check-in: fbf3948a4b user: stephan tags: trunk) | |
00:55 | Rename the new opfs-sahpool init-retry flag to the suitably descriptive, and suitably onerous, forceReinitIfPreviouslyFailed, based on feedback. (Closed-Leaf check-in: c9f0a60902 user: stephan tags: sahpool-reinit-fallback) | |
2024-07-12
| ||
14:41 | sqldiff: fail if the 2nd db argument cannot be opened read-only. (check-in: e8b33525fc user: stephan tags: trunk) | |
13:51 | Work around a difficult-to-trigger Atomics API message-passing quirk in the OPFS VFS which appears in rare instances in some browsers when running high I/O loads. This resolves issue #12 of the npm distribution. (check-in: c7519d98ff user: stephan tags: branch-3.46) | |
13:49 | Work around a difficult-to-trigger Atomics API message-passing quirk in the OPFS VFS which appears in rare instances in some browsers when running high I/O loads. This resolves issue #12 of the npm distribution. (check-in: af41a1e6fc user: stephan tags: trunk) | |
13:45 | sqldiff: if the first db argument does not exist, fail instead of creating an empty db. Resolving that for the second argument is trickier, as discussed in forum post ec2d429e32. (check-in: 0547ccf776 user: stephan tags: trunk) | |
2024-07-11
| ||
19:50 | Reformulate the forceReinitIfFailed handling based on feedback, to correct the type-checking and resolve a potential race condition. (check-in: c4f4683091 user: stephan tags: sahpool-reinit-fallback) | |
14:07 | Remove the timing and counter metrics from the OPFS VFS, as they're long-since unused so are just wasted CPU cycles. (Closed-Leaf check-in: 67c035c34f user: stephan tags: opfs-errant-op) | |
12:57 | Add some docs explaining [64f4f3cd878b1a72]. (check-in: 4fdf9a322f user: stephan tags: opfs-errant-op) | |
12:36 | Proposed workaround for the "errant op" case in the OPFS VFS, as discussed in issue #12 of the npm distribution. (check-in: 64f4f3cd87 user: stephan tags: opfs-errant-op) | |
11:04 | Add an option to force the opfs-sahpool VFS init to re-run after it fails on a first attempt, as a workaround for flaky environments where initial access to OPFS sync access handles is rejected but then permitted on a second attempt. Reported and discussed in issue #79 of the npm distribution. (check-in: 5286e0f654 user: stephan tags: sahpool-reinit-fallback) | |
2024-07-10
| ||
08:33 | Rename some JS files for consistency. This affects only the build process, not the deliverables. (check-in: bcef3f71a2 user: stephan tags: trunk) | |
2024-07-08
| ||
17:39 | Fix a use-after-free that could occur following an OOM introduced by [d8cedbe0]. (check-in: 4fabfacfcf user: dan tags: trunk) | |
16:01 | Improve the error message returned when fts5 finds a row is missing from its content table. (check-in: 9b1afd4acb user: dan tags: trunk) | |
2024-07-05
| ||
13:55 | Use a mini Bloom filter to help reduce the number of pointless searches for prior SubrtnSig objects when generating code for IN operators with subqueries as their right operand. (check-in: d8cedbe055 user: drh tags: trunk) | |
10:08 | Improved reuse of subqueries associated with IN operators, especially when the IN operator is duplicated due to predicate push-down. (check-in: 2a07caad4a user: drh tags: bedrock-3.46) | |
10:03 | When constructing an ephermeral table to use as the right-hand side of an IN operator, also construct a Bloom filter to speed membership testing. (check-in: 557a14a24a user: drh tags: bedrock-3.46) | |
09:56 | Improved reuse of subqueries associated with IN operators, especially when the IN operator is duplicated due to predicate push-down. (check-in: c9a3498113 user: drh tags: trunk) | |
01:05 | Small performance optimizations. (Closed-Leaf check-in: 99fd34b58a user: drh tags: reuse-subqueries) | |
2024-07-04
| ||
18:56 | Add test cases to in7.test. (check-in: 07817efc10 user: dan tags: reuse-subqueries) | |
18:26 | Disable the reuse of IN-clause subqueries if the subquery is an explicit "SELECT ALL". The ALL keyword is almost never used in actual practice (most developers don't even know it can be used) so this should not interfere with the optimization, but it does give us a convenient way to turn it off for testing purposes. (check-in: a81299be2c user: drh tags: reuse-subqueries) | |
17:49 | Update EXPLAIN output to include P4_SUBRTNSIG. (check-in: 61e56923c8 user: dan tags: reuse-subqueries) | |
16:57 | Be more aggressive about reusing subqueries that appear on the RHS of IN operators that have been replicated due to the predicate push-down optimization. (check-in: 2accf32b6e user: drh tags: reuse-subqueries) | |
11:15 | Add comment using the name "predicate push-down optimization" to what we have also called "WHERE-clause push down". No changes to code. (check-in: be77fe701c user: drh tags: trunk) | |
09:45 | For shell completion, use pragma_table_xinfo instead of pragma_table_info, so that generated columns are handled, as reported in forum post f0735e05d8d7e857. (check-in: a204ffc06b user: stephan tags: trunk) | |
2024-07-03
| ||
20:30 | When constructing an ephermeral table to use as the right-hand side of an IN operator, also construct a Bloom filter to speed membership testing. (Leaf check-in: 0bb306eb70 user: dan tags: bedrock-3.45-in-bloom) | |
20:19 | When constructing an ephermeral table to use as the right-hand side of an IN operator, also construct a Bloom filter to speed membership testing. (check-in: baa83b460c user: drh tags: trunk) | |
20:10 | Show the creation of IN-operator Bloom filters in the EXPLAIN QUERY PLAN output. (Closed-Leaf check-in: c10a1b99d4 user: drh tags: in-bloom) | |
18:56 | Add a new sqlite3FaultSim() call to OP_NotFound to use for testing purposes. (check-in: 84fd275bfd user: drh tags: in-bloom) | |
17:51 | Use a Bloom filter to improve performance of IN operators when the RHS of the IN operator is a subquery. (check-in: 1933496539 user: drh tags: in-bloom) | |
2024-07-02
| ||
13:54 | Add assert() statements to FTS5 to hush-up warnings from scan-build. (check-in: 77a76654e6 user: drh tags: trunk) | |
12:16 | Rework the deliberate_fall_through macro along the lines suggested by forum post 7ec11023dd so that it works better with LLVM, while preserving compatibility with MSVC and older GCCs. (check-in: fc248a4a0a user: drh tags: trunk) | |
11:30 | In the CLI, if the XDG_CONFIG_HOME environment variable is not set, then also search in ~/.config/sqlite3/sqliterc for the initialization file. See forum thread 5cc6d059e9e092ed. (check-in: 33841c9c3c user: drh tags: trunk) | |
2024-06-29
| ||
15:57 | Fix a typo in a comment in a test case. No changes to code. (check-in: f501166de4 user: drh tags: trunk) | |
12:22 | Add a NEVER() around a branch in sqlite3ExprAffinity() that is designed to prevent an infinite loop, but which can now never be reached due to recent changes. (check-in: da0b794852 user: drh tags: trunk) | |
2024-06-28
| ||
18:21 | Update fts5 comment/docs to include the order matches are visited in by the xPhraseFirst/xPhraseNext API. (check-in: e41930ef5b user: dan tags: trunk) | |
18:07 | Additional steps to make sure calls to sqlite3ExprToRegister() are sane. (check-in: 1c42d7176b user: drh tags: trunk) | |
17:14 | Do not convert an expression node that is already TK_REGISTER into a new TK_REGISTER. This is a follow-up to [663f5dd32d9db832] that fixes a bug discovered by dbsqlfuzz. (check-in: fcb669cfaa user: drh tags: trunk) | |
2024-06-27
| ||
18:18 | Avoid 32-bit overflow when calculating ncycle for ".scanstats vm". (Leaf check-in: 78022f90d5 user: dan tags: bedrock-3.45) | |
15:03 | Merge all the latest trunk enhancements into the recursive-cte-orderby-fix branch. (Leaf check-in: 5f159e5425 user: drh tags: recursive-cte-orderby-fix) | |
14:54 | Merge the latest trunk enhancements into the exists-to-join branch. (check-in: fc643f8a12 user: drh tags: exists-to-join) | |
2024-06-26
| ||
16:33 | Do not use integer constants like 100_000 in the shell code on this branch. They are not supported until 3.46. (check-in: 8362edb45b user: dan tags: bedrock-3.45) | |
2024-06-24
| ||
18:06 | Fix an incorrect tcl comment that appeared in many fts5 test files. (check-in: d07085e203 user: dan tags: trunk) | |
16:08 | Fix some problems with calling fts5 api functions from within non-full-text queries. (check-in: 56d265f956 user: dan tags: trunk) | |
15:05 | Enhance the output of ".scanstats vm" to include the absolute number of ticks for each VM instruction, instead of just the percentage of the total. (check-in: d826236e22 user: dan tags: bedrock-3.45) | |
14:53 | Enhance the output of ".scanstats vm" to include the absolute number of ticks for each VM instruction, instead of just the percentage of the total. (check-in: 1535828335 user: dan tags: trunk) | |
2024-06-20
| ||
12:07 | Do not attempt the exists-to-join optimization if the FROM clause is full. (check-in: 8e3a1d2850 user: drh tags: exists-to-join) | |
2024-06-19
| ||
18:54 | Revert Lemon so that it only shows -D options that are actually used. Though the change to display the options in sorted order is retained. (check-in: e54eb217c9 user: drh tags: trunk) | |
18:46 | In lemon, show all the -D options in the generated header, even if none of them are used. (check-in: 2aa009c38b user: drh tags: trunk) | |
16:38 | Enhance lemon.c so that when it shows the compile-time options in the header comment of the generated output file, it shows all options, even those not used, and it shows them in sorted order. (check-in: eed76e6698 user: drh tags: trunk) | |
11:08 | Remove some extraneous flags from the fiddle-debug build. Internal doc tweaks in the main wasm makefile. (check-in: afae2c9e6f user: stephan tags: trunk) | |
2024-06-18
| ||
22:03 | Minor cleanups in the new fiddle build code. (check-in: d356aebdd4 user: stephan tags: trunk) | |
21:50 | Rework the fiddle build to build separate debug and non-debug bundles, with the latter in ./fiddle-debug. (check-in: a9f1758f1c user: stephan tags: trunk) | |
20:47 | Remove an extraneous CSS file and import its CSS into the one HTML file which uses it. (check-in: 66085ca423 user: stephan tags: trunk) | |
20:40 | Add fiddle-debug make target to ext/wasm. It builds the same target files as a non-debug build, as opposed to a new copy, but adds various debug-related flags. (check-in: 993143c5c3 user: stephan tags: trunk) | |
19:36 | Add instructions for how to do debugging builds of the CLI on Windows. (check-in: abe81c1861 user: drh tags: trunk) | |
12:19 | Update sqlite3_analyzer to report on the number of WITHOUT ROWID tables and to provide separate aggregate statistics for WITHOUT and WITH ROWID tables. (check-in: 4152894433 user: drh tags: trunk) | |
09:58 | Internal doc typo fixes, as reported in the forum. No code changes. (check-in: ea16b286b4 user: stephan tags: trunk) | |
2024-06-17
| ||
13:06 | Improve the JS-exception-to-C-result-code conversion to account for the case of a file disappearing while the OPFS VFS is waiting to acquire a lock on it. (check-in: d34e788044 user: stephan tags: branch-3.46) | |
2024-06-16
| ||
17:06 | Remove some dead JS code. (check-in: 754e6e059b user: stephan tags: trunk) | |
2024-06-14
| ||
23:13 | Do not omit the ORDER BY clause from a recursive CTE just because the query that contains the CTE also contains an ORDER BY clause. Plus other changes imported from the recursive-cte-orderby-fix branch. (check-in: 13242289c5 user: drh tags: trunk) | |
19:27 | Fix harmless comment typo. (check-in: ca06380233 user: drh tags: recursive-cte-orderby-fix) | |
18:33 | Improvement to treeview.c: Show the DESC and BIGNULL flags when printing out ExprList objects. (check-in: e87966cf63 user: drh tags: recursive-cte-orderby-fix) | |
18:06 | Add tests for the change on this branch. (check-in: ae19ff9ba8 user: dan tags: exists-to-join) | |
17:16 | Do not omit the ORDER BY clause from a recursive CTE just because the outer query that uses the CTE also contains an ORDER BY clause. (check-in: 5e700f2cc2 user: drh tags: recursive-cte-orderby-fix) | |
2024-06-12
| ||
22:15 | Remove some dead JS code. Improve the exception-to-C-result-code conversion to account for the case of a file disappearing while the OPFS VFS is waiting to acquire a lock on it. (check-in: 5bd9fd5f61 user: stephan tags: trunk) | |
21:08 | Fix a potential db corruption case triggered by the OPFS VFS's xCheckReservedLock() implementation. (check-in: a7cd07d96e user: stephan tags: branch-3.46) | |
21:01 | Remove some JS docs which no longer apply. No code changes. (check-in: f253cab335 user: stephan tags: trunk) | |
17:01 | Do not attempt the exists-to-join optimization for expressions from the ON clause of joins. (check-in: 4666433cbd user: dan tags: exists-to-join) | |
15:50 | Fix a problem with rolling back hot journals using the unix-dotfile VFS. (check-in: a44703135e user: dan tags: trunk) | |
15:29 | Omit tests that depend on sqlite3_release_memory() in lock5.test when running the memsubsys1 or memsubsys2 permutations. (Closed-Leaf check-in: 9d63033bf4 user: dan tags: unix-dotfile-fix) | |
12:36 | Fix a potential db corruption case triggered by the OPFS VFS's xCheckReservedLock() implementation, as discussed in forum thread a2f573b00cda1372. (check-in: c298b8ba2d user: stephan tags: trunk) | |
12:17 | Doc updates in JS code. No functional changes. (check-in: 587ed3a5d2 user: stephan tags: trunk) | |
11:41 | Do not attempt to run hot journal rollback tests in lock5.test with the "inmemory_journal" permutation, which cannot generate hot journals. (check-in: 1e6fa95b88 user: dan tags: unix-dotfile-fix) | |
11:39 | Slight API doc tweak for xCheckReservedLock(), based on forum feedback. No code changes. (check-in: 2af7a96f68 user: stephan tags: trunk) | |
10:17 | Improvements to the layout and comments for the new round() implementation. (Leaf check-in: d6b1df1a22 user: drh tags: round-up-2) | |
00:30 | Test cases for the round() function for values within one epsilon of the 5 round-up threshold. (check-in: 552b1b1066 user: drh tags: round-up-2) | |
2024-06-11
| ||
22:47 | A second approach to working on the round() function so that it gives a small boost to numbers that are ...49999999 such that they round up. (check-in: 44dd632896 user: drh tags: round-up-2) | |
20:28 | Handle the case where unix-dotfile is used with URI parameter nolock=1. (check-in: 3925a5b904 user: dan tags: unix-dotfile-fix) | |
20:03 | Fix a problem with rolling back hot journals using the unix-dotfile VFS. (check-in: 4ae3300b79 user: dan tags: unix-dotfile-fix) | |
18:22 | Provide the ability to disable the exists-to-join optimization using SQLITE_TESTCTRL_OPTIMIZATIONS. Provide tree-trace output for the optimization. (check-in: 33a3f32785 user: drh tags: exists-to-join) | |
17:37 | Merge trunk enhancements into the exists-to-join branch. (check-in: 5f25a9518a user: drh tags: exists-to-join) | |
17:04 | Remove some dead JS code and update some JS docs. (check-in: 6935ac71ba user: stephan tags: trunk) | |
17:04 | When compiling shell.c in SQLITE_SHELL_FIDDLE mode, ensure that the shell_main_exit goto label is reachable. (check-in: 06e6f64533 user: stephan tags: trunk) | |
14:36 | Change constant expressions to pre-computed constants, because apparently MSVC on ARM requires that. Forum thread 4feb1685cced0a8e. (check-in: 6c103aee6f user: drh tags: trunk) | |
2024-06-10
| ||
19:45 | Add missing calls to sqlite3exprSkipCollateAndLikely() to the enchancement on this branch. (check-in: 078537d057 user: dan tags: exists-to-join) | |
19:31 | Fix a crash that could occur when the SELECT in an EXISTS(SELECT ...) used an unknown collation sequence. (check-in: f3009a6d7f user: dan tags: exists-to-join) | |
18:30 | The aggressive rounding behavior is now only accessible using the internal sqlite3MPrintf() function. The round() SQL function uses that internal function so it can access the aggressive rounding. But ordinary extensions and the format() SQL function cannot. Update: Superseded by round-up-2 branch (Closed-Leaf check-in: 3dec4b35ec user: drh tags: round-up) | |
18:10 | More aggressive rounding behavior for the round() function only. Format() still uses the classic behavior, and the same behavior exhibited by printf() in glibc. (check-in: a1b57288d7 user: drh tags: round-up) | |
14:31 | Change the rounding behavior of float point to decimal conversions such that if the next digit is 4 but the value is within one epsilon of the next digit being 5 and if the epsilon is small compared the number of digits to be rendered, then go ahead and round up anyhow, even though the correct behavior would be to round down. (check-in: 4a790d3b28 user: drh tags: round-up) | |
12:43 | Improved header comment on the sqlite3FpDecode() implementation. For the fpdecode() SQL function (available in debug builds only) limit the value of the third parameter (mxRound) to be positive. (check-in: 56af06fa12 user: drh tags: trunk) | |
12:29 | Check-in contained undesired test code. (Leaf check-in: 43f376ce92 user: drh tags: mistake) | |
2024-06-09
| ||
18:02 | Disable the omit-noop-join optimization when there are 64 or more terms in the ORDER BY clause. (Leaf check-in: d2d37e6d2b user: drh tags: branch-3.45) | |
17:58 | Disable the omit-noop-join optimization when there are 64 or more terms in the ORDER BY clause. (check-in: a7fe90c158 user: drh tags: branch-3.46) | |
17:34 | Disable the omit-noop-join optimization when there are 64 or more terms in the ORDER BY clause. (check-in: 40de393979 user: drh tags: trunk) | |
2024-06-08
| ||
18:13 | Add extra tests for the changes on this branch. (check-in: a6365c778f user: dan tags: exists-to-join) | |
2024-06-07
| ||
21:00 | Experimental optimization to rewrite a SELECT with an EXISTS(...) expression in the WHERE clause as a join. (check-in: 972a33db0b user: dan tags: exists-to-join) | |
19:48 | At attempt at improving the performance of unixRead(). Partly successfuly, but the improvement is not that much and there is question whether or not the improvement is worth the extra complication and code space. (Leaf check-in: aebc790a16 user: drh tags: fast-read) | |
2024-06-06
| ||
23:56 | Allow the query planner access to the argument of LIMIT even if that argument is a bound parameter. (check-in: c4a9dda280 user: drh tags: trunk) | |
23:22 | Omit bogus tests accidentally added by the privious commit. (Closed-Leaf check-in: e94dfe9928 user: drh tags: var-in-limit) | |
15:03 | Better optimize queries that use parameters in the LIMIT clause. (check-in: e58cb304d1 user: drh tags: var-in-limit) | |
12:22 | Re-enable [dcc2bb2c562e97e090174], as [296eeb26c816bc73] corrects the wasi-sdk build problem the former check-in triggered. Reported in forum post 143e40d7f4e79c66. (check-in: f66608bd35 user: stephan tags: trunk) | |
01:21 | Adjust the parser so that the value of TK_ISNOT is similar to the value of TK_IS. This helps the compiler generate faster switch() statements on the Expr.op fields when there are cases for TK_ISNOT and other common operators. (check-in: 34f05c3d89 user: drh tags: trunk) | |
01:00 | Small performance optimization in the operatorMask routine of the WHERE clause analysis logic. (check-in: 9d69fc1c87 user: drh tags: trunk) | |
00:49 | Small performance optimization in the allowedOp() routine of the WHERE clause analysis code. (check-in: 4ba8be5447 user: drh tags: trunk) | |
2024-06-05
| ||
20:54 | Harmonize function names. (Leaf check-in: db43d7aa5d user: mistachkin tags: concatb) | |
20:52 | Add an experimental concatb() function. (check-in: 07d8420285 user: mistachkin tags: concatb) | |
20:50 | Fix harmless compilation issues seen with MSVC. (check-in: 816d474938 user: mistachkin tags: trunk) | |
20:41 | Small performance optimization in the codeEqualityTerm() routine of the code generator. (check-in: 8080c6eafd user: drh tags: trunk) | |
16:50 | Fix an fts5 problem with secure-delete mode causing integrity-check to erroneously report a corrupt index. (check-in: 0a7fa0a434 user: drh tags: branch-3.46) | |
14:47 | Fix an fts5 problem with secure-delete mode causing integrity-check to erroneously report a corrupt index. (check-in: 80bef4d60b user: dan tags: trunk) | |
11:36 | Fix a very obscure issue where the name resolver could get confused if aliases like "sqlite_schema" or "sqlite_master" were used in a query involving the sqlite_temp_schema table. (check-in: a096eb7554 user: dan tags: trunk) | |
2024-06-04
| ||
19:21 | Fix harmless compiler warnings seen with MSVC. (check-in: 93ac8573ee user: mistachkin tags: trunk) | |
17:26 | Better handle WHERE terms that are common to two or more OR branches when planning virtual table queries. Fix for ticket [6e3ace1270f29930]. (check-in: 1976c3f7e1 user: dan tags: trunk) | |
16:24 | Merge 11a4178f0e6cd760303a587, from the bedrock branch just after the 3.45 release, into this branch. This is to pick up test cases only. (check-in: 66c885814e user: dan tags: bedrock-3.45) | |
15:47 | Fix another problem with the sqlite3_log() message identifying the table or index that a conflicting page belongs to. (check-in: 885e01ae35 user: dan tags: bedrock-3.45) | |
15:33 | Fix a problem in SQLITE_DIRECT_OVERFLOW_READ builds that could allow a concurrent transaction to be committed even if it read from an overflow page that was modified concurrently, in cases where the overflow page was written without also writing the b-tree page to which it is linked. (check-in: f1d17258f4 user: dan tags: bedrock-3.45) | |
15:33 | Improve the log message emitted when a BEGIN CONCURRENT transaction cannot be committed due to conflicts so that it identifies the conflicting table in a few more cases. (check-in: eed5aa7cdf user: dan tags: bedrock-3.45) | |
15:07 | Fix a couple of memory leaks in the shell tool code that could occur when processing errors. (check-in: e84f09d469 user: dan tags: trunk) | |
14:32 | Allow shell command "testctrl pending_byte" to be used in unsafe-testing mode only. (check-in: afa45c4f5a user: dan tags: trunk) | |
2024-06-03
| ||
18:04 | Address a corner-case associated with the call-function-once optimization of check-in [663f5dd32d9db832] that was causing a (harmless) use of an uninitialized bytecode register. dbsqlfuzz 8a44f675401a8b1f68a43bf813c4f4f72ad8f0ea (check-in: b37ac2d020 user: drh tags: trunk) | |
12:36 | Omit an unused #define. (check-in: 9c2de28a14 user: drh tags: trunk) | |
07:22 | Modify three #if checks in os_unix.c to improve handling of SQLITE_OMIT_WAL on WASI builds. Based on the discussion in/around forum post 57e918431735128a. (check-in: 296eeb26c8 user: stephan tags: trunk) | |
2024-06-02
| ||
10:52 | Be more aggressive about freeing memory associated with the sqlite3_index_info.idxStr field. (Closed-Leaf check-in: 85dcd0a847 user: drh tags: xbestindex-or-terms) | |
2024-06-01
| ||
17:56 | Have fts5.xBestIndex return SQLITE_CONSTRAINT, instead of a large cost, when no usable plan can be found. (check-in: 7c47094537 user: dan tags: xbestindex-or-terms) | |
2024-05-31
| ||
20:32 | Further tests for OR constraints on virtual tables. (check-in: ff4a30056f user: dan tags: xbestindex-or-terms) | |
19:26 | Better handle WHERE terms that are common to two or more OR branches when planning virtual table queries. (check-in: 4edd9b29f5 user: dan tags: xbestindex-or-terms) | |
15:39 | Do not even try star-schema detection if the join has fewer than 5 tables, since 5 is the minimum for a positive detection. (check-in: a07ec16bbc user: drh tags: trunk) | |
14:39 | Document the OP_Explain opcode. Add the WhereLoop.rRun value as P3 in OP_Explain opcodes associated with WhereLoops, for testing purposes. (check-in: 996c46e61d user: drh tags: trunk) | |
2024-05-30
| ||
21:54 | Back out [dcc2bb2c562e97e090174], as it breaks the --with-wasi-sdk builds. (check-in: 62199562c2 user: stephan tags: trunk) | |
17:56 | Remove the unconditional SQLITE_OMIT_WAL when building in wasi-sdk mode, per requests in the forum. (check-in: dcc2bb2c56 user: stephan tags: trunk) | |
13:27 | Ensure that the second pass call to wherePathSolver() always reports a positive value for the estimated number of output rows. This fixes a long-standing (though exceedingly minor) problem that was only revealed by a new assert() added yesterday. dbsqlfuzz 545d6debc2da496ab2b915e33ea34d9a35a935df (check-in: a47c644fef user: drh tags: trunk) | |
11:25 | Experimentally enable linenoise multiline mode in shell.c. (Closed-Leaf check-in: 33ad9d8a3c user: stephan tags: linenoise-multiline) | |
11:14 | Update shell.c to use the msteve fork of linenoise, per /chat discussion. (check-in: ee92fa8366 user: stephan tags: trunk) | |
2024-05-29
| ||
15:16 | Remove an unused parameter from fts5ConfigParseSpecial(). Compiler-warning fix only - no functional changes. (check-in: c08dd245f7 user: drh tags: trunk) | |
15:08 | Use a heuristic of artifically lowering the cost of fact tables in a star-schema query in order to prevent plans where the fact tables are in outer loops from being trimmed by the path limiter. This helps to generate better (faster) query plans in those particular cases. (check-in: 38db9b5c83 user: drh tags: trunk) | |
14:32 | Change an assert() (incorrectly) added by the previous check-in into a testcase(). (Closed-Leaf check-in: 5e64b541d1 user: drh tags: star-schema) | |
14:04 | Small performance enhancement in wherePathSolver() (check-in: bdab69641d user: drh tags: star-schema) | |
13:29 | Improvements to comments and debugging output. (check-in: 85164ee155 user: drh tags: star-schema) | |
10:40 | Remember the amount of the heuristic cost adjustment associated with star schemas and compensate when computing whether or not to use Bloom filters. (check-in: 21daf2463e user: drh tags: star-schema) | |
09:53 | Fix typos in the star-schema test cases. (check-in: 4080937353 user: drh tags: star-schema) | |
03:35 | Fix sqldiff out-of-bounds char classification error mentioned in the forum. (check-in: b31933d873 user: larrybr tags: trunk) | |
00:38 | Use a heuristic in the query planner to help it better cope with large star schema queries. (check-in: a98be0f548 user: drh tags: star-schema) | |
2024-05-28
| ||
19:08 | Fix a couple of assert() statements so that they cannot fire when the SQLITE_TESTCTRL_INTERNAL_FUNCTIONS debugging capability is activated. dbsqlfuzz f5b347cf167a62fbe08062b2feee65cb9306e363. (check-in: 273504b74c user: drh tags: trunk) | |
18:53 | Tweaks to the query planner so that it is better able to deal with star queries with many dimensions and bad indexes. (check-in: 1e49081001 user: drh tags: trunk) | |
18:41 | Fix another problem with the sqlite3_log() message identifying the table or index that a conflicting page belongs to. (check-in: 19d5fd8a48 user: dan tags: bedrock) | |
18:35 | Fix another problem with the sqlite3_log() message identifying the table or index that a conflicting page belongs to. (check-in: d033d94350 user: dan tags: begin-concurrent) | |
15:37 | For query planning purposes, assume every table holds at least 100 rows, as this seems to give better worst-case performance if the table row count estimate turns out to be inaccurate. Park this change on a branch for now and consider it for a future enhancement. (Leaf check-in: 76c7d9334f user: drh tags: min-row-estimate) | |
12:41 | Increase the number of parallel paths in the query solver from 12 to 20. In the .wheretrace output, sort the parallel paths in order of increasing cost. (check-in: 8ba2c2f5cb user: drh tags: trunk) | |
11:24 | Documentation typo fix. Forum post 772d6688f5. (check-in: 1f2f9c709e user: drh tags: trunk) | |
10:57 | Fix a problem with the error message reported by fts5 in some OOM cases. (check-in: c7aaa28f78 user: dan tags: trunk) | |
00:16 | Improve the automatic-index decision such that no attempt is made to create an automatic index on a column that is known to be non-selective because if its use in other indexes that have been analyzed. See ticket [8ff324e120d5e9bd] and forum post b21c2101a559be0a. (check-in: 2a7603c327 user: drh tags: trunk) | |
00:01 | Query planner tuning: Increase the maximum number of simultaneous solutions to track in the solver from 10 to 12. (check-in: fe2e1dadba user: drh tags: trunk) | |
2024-05-27
| ||
21:55 | Avoid creating an automatic index on a column that is known to be not very selective. (Closed-Leaf check-in: 70409763f7 user: drh tags: auto-index-improvements) | |
19:52 | The previous check-in was a little two aggressive about skipping the initialization of entries in the CellArray.ixNx array. Fixed here. (check-in: 1b6d1fbcde user: drh tags: trunk) | |
18:15 | Fix typo in comment used to generate parts of the documentation. Forum post da5a2ca4db. (check-in: 428aadf0c7 user: drh tags: trunk) | |
15:13 | Very small performance increase and size reduction by removing unnecessary ALWAYS() macros from the btree balance logic and replacing them with special initialization of CellArray and some assert()s. (check-in: 32b79041d9 user: drh tags: trunk) | |
13:41 | Doc typo fix. No code changes. (check-in: eaf07fe69f user: stephan tags: trunk) | |
13:24 | For compatibility with PostgreSQL, when right-hand side of the ->> operator is negative, it should index from the right side of the JSON array on the left-hand side. (check-in: 82365a45b9 user: drh tags: trunk) | |
11:38 | Fix a possible buffer overwrite in the ".import" command. (check-in: 55eee9f920 user: drh tags: branch-3.46) | |
11:35 | Fix a possible buffer overwrite in the ".import" command. forum post 0c447f0548. (check-in: 0fd958fa9b user: dan tags: trunk) | |
11:31 | Add new assert() statements to help out a static analyzer. Response to forum post 17fe8ac32e0de4f5. (check-in: 857f6d5309 user: drh tags: trunk) | |
2024-05-25
| ||
23:17 | Ensure that sqlite3ViewGetColumnNames() returns non-zero on any error. (check-in: 01ead0a2d9 user: drh tags: branch-3.46) | |
23:13 | Ensure that sqlite3ViewGetColumnNames() returns non-zero on any error. dbsqlfuzz d9de2a508f693e5a228d7a01d5341e3c64326fbb. (check-in: 57aeb3a287 user: drh tags: trunk) | |
2024-05-24
| ||
23:44 | Ensure that queries like "SELECT func(a) FROM tab GROUP BY 1" only call the func() function once per row. Fix for the issue described in forum thread bf8f43aa522c2299. (check-in: 663f5dd32d user: drh tags: trunk) | |
21:38 | Fix another fts5 problem related to unknown tokenizer modules. (check-in: e78b778304 user: dan tags: trunk) | |
21:23 | Fix a crash in fts5 that could occur within "PRAGMA integrity_check" if the specified tokenizer was unknown. (check-in: 061d7b69e6 user: dan tags: trunk) | |
20:18 | When omitting result columns for the vector-IN optimization, make sure that any result-set column references in both the ORDER BY clause and the GROUP BY clause are updated appropriately. (Closed-Leaf check-in: f890812df0 user: drh tags: group-by-consistency) | |
18:31 | Ensure that queries like "SELECT indeterministic(a) FROM tbl GROUP BY 1" invoke the indeterministic function only once for each row of tbl. (check-in: 4555d66547 user: dan tags: group-by-consistency) | |
14:16 | Add the stmtrand() extension function for use in testing. (check-in: 5c97a5b9d1 user: drh tags: trunk) | |
13:33 | Fix an "ifcapable" expression in values.test. (check-in: b8442d2a60 user: dan tags: trunk) | |
2024-05-23
| ||
23:34 | Increase the version number to 3.46.1 (check-in: 170e3a91d5 user: drh tags: branch-3.46) | |
23:30 | Fix the window-function group_concat() so that it returns an empty string if it has one or more empty string inputs. (check-in: 7fe11274fc user: drh tags: branch-3.46) | |
23:26 | Fix the window-function group_concat() so that it returns an empty string if it has one or more empty string inputs. This fixes a bug introduced by [c6da39115d3e2b0f] on 2019-03-26 (version 3.28.0) and reported by forum post bf8f43aa522c2299. (check-in: cec6bb3fc9 user: drh tags: trunk) | |
15:05 | Merge various enhancements that were being held on a branch until after the 3.46.0 release. (1) Allow arbitrary expressions in the second argument to the RAISE() function. (2) Performance optimization to the OP_OpenRead and OP_OpenWrite bytecode operators. (3) Allow FTS5 tables to be dropped even if the associated tokenizer is not available. (4) Performance optimizations in FTS5. (5) Generate better bytecode to improve performance of ONEROW scans. (check-in: 1e5385ffc3 user: drh tags: trunk) | |
14:58 | Increase the version number to 3.47.0 to begin the next development cycle. (check-in: 20e228a22e user: drh tags: trunk) | |
14:09 | Version 3.46.0 for the reuse-schema branch (check-in: 8f6b859413 user: drh tags: reuse-schema) | |
14:09 | Version 3.46.0 for the bedrock branch (check-in: 483d112ab4 user: drh tags: bedrock) | |
14:05 | Version 3.46.0 for the wal2 branch. (check-in: fdc0e1480a user: drh tags: wal2) | |
14:04 | Version 3.46.0 for the begin-concurrent branch (check-in: e3f8c70ef5 user: drh tags: begin-concurrent) | |
13:25 | Version 3.46.0 (check-in: 96c92aba00 user: drh tags: trunk, release, major-release, version-3.46.0) | |
2024-05-21
| ||
17:37 | Ensure an sqlite_dbdata cursor is properly reset before being used again, even if it has already encountered database corruption. (check-in: 3210e1ca4d user: dan tags: trunk) | |
15:24 | Merge the latest trunk enhancements into the bedrock branch. (check-in: c65a82f1fa user: drh tags: bedrock) | |
15:20 | Merge the lates trunk enhancements into the reuse-schema branch. (check-in: 97e0af8882 user: drh tags: reuse-schema) | |
15:20 | Merge the latest trunk enhancements into the wal2 branch. (check-in: d4217d9f70 user: drh tags: wal2) | |
15:17 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 5c1c8651d1 user: drh tags: begin-concurrent) | |
14:54 | Do not attempt to run mmapcorrupt.test with builds that do not support mmap(). (check-in: 54a49f1847 user: dan tags: trunk) | |
13:34 | Fix harmless compiler warnings. (check-in: aab59f9f7c user: drh tags: trunk) | |
11:11 | Fix the -> and ->> operators so that when the RHS is a string that looks like a number, it is still treated as a string, because that is what PG does. Forum post 9e52cdfe15c3926e. (check-in: de8182cf17 user: drh tags: trunk) | |
2024-05-20
| ||
19:59 | Omit a capi3 test from 2007 that depends upon undefined behavior (UAF). (check-in: a60a0b7513 user: drh tags: trunk) | |
19:51 | Do not run the tests in recovercorrupt4.test with the inmemory_journal permutation. (check-in: c13205d66b user: dan tags: trunk) | |
17:52 | Improvements to the documentation of sqlite3_vtab_distinct(). Do not allow sqlite3_vtab_distinct() to return 2 or 3 if the rowid column of the virtual table is used, as doing so might lead to an incorrect answer. (check-in: 08058d66d1 user: drh tags: trunk) | |
16:00 | Improvements to the sqlite3_vtab_distinct() documentation. (Closed-Leaf check-in: 6ee041d34f user: drh tags: vtab-distinct-fix) | |
2024-05-18
| ||
20:00 | Fix the definition of sqlite3_vtab_distinct() such that return codes 2 and 3 mean that all rows must be distinct over "colUsed" which is a superset of "aOrderBy". Also, disallow return codes 2 and 3 if the rowid of the virtual table is accessed. (check-in: 922731ce98 user: drh tags: vtab-distinct-fix) | |
15:21 | JS error message and doc typos reported in the forum. No code changes. (check-in: 1a073f9acf user: stephan tags: trunk) | |
2024-05-17
| ||
22:51 | Improvements to a VDBE comment. No changes to anything that affects queries. (check-in: c2188da860 user: drh tags: trunk) | |
14:26 | Merge branches "fix-onerow-opt", "faster-openread", "fts5-delay-tokenizer" and "enhanced-raise", each containing minor enhancements prepared for 3.46, into this branch. (Closed-Leaf check-in: 6dc6472175 user: dan tags: pending-3.46) | |
13:56 | Fix a problem in where.c preventing SQLite from identifying some ONEROW scans, leading to (slightly) sub-optimal byte-code. (Closed-Leaf check-in: b41e71208a user: dan tags: fix-onerow-opt) | |
2024-05-16
| ||
16:22 | Add extra tests for the error messages generated by sqlite3_declare_vtab() when passed something other than a well-formed CREATE TABLE statement. (check-in: 5fa0c2a026 user: dan tags: trunk) | |
15:57 | The sqlite3_declare_vtab() interface should return SQLITE_ERROR, not SQLITE_MISUSE when a nonsense SQL input is provided, for legacy compatibility. Forum post 4b875d7b2a. (check-in: 1ec2961a03 user: drh tags: trunk) | |
00:20 | Fix a case where an error in the ORDER BY clause of an aggregate function that is part of a trigger body might cause an assert() to fail in an ALTER TABLE command. dbsqlfuzz 899d9255555a07f1fe11a0bb51a2fe197b3150cd (check-in: 953271f29e user: drh tags: trunk) | |
2024-05-15
| ||
23:36 | Back out the assert() fixes from [a9443dbfbe25e588] and [3afaeac56dff58db] (but keep the corresponding test cases) because they are both made obsolete by the previous fix on this branch. (Closed-Leaf check-in: 3120c7c8a3 user: drh tags: alter-table-fix) | |
21:38 | Fix a case where an error in the ORDER BY clause of an aggregate function that is part of a trigger body might cause an assert() to fail in an ALTER TABLE command. (check-in: b79a8be37b user: dan tags: alter-table-fix) | |
15:11 | If there is no data available for a field in a corrupted record, but the type is available, have the recovery extension substitute 0, 0.0, '' or X'' instead of a NULL value. (check-in: 7805135925 user: dan tags: branch-3.45) | |
15:06 | If there is no data available for a field in a corrupted record, but the type is available, have the recovery extension substitute 0, 0.0, '' or X'' instead of a NULL value. (check-in: 8eb326c249 user: dan tags: trunk) | |
2024-05-14
| ||
19:41 | Optimize queries against fts5vocab(row) tables that do use the "cnt" column. (Closed-Leaf check-in: 96a591c202 user: dan tags: fts5-delay-tokenizer) | |
19:09 | Avoid calculating the value of the "cnt" column for fts5vocab(row) queries that do not use it. (check-in: c0c91e306c user: dan tags: fts5-delay-tokenizer) | |
17:16 | Have fts5 tables delay initializing the tokenizer until it is first used in all cases where the tokenizer is not "trigram". (check-in: ca4fdcb8ae user: dan tags: fts5-delay-tokenizer) | |
2024-05-13
| ||
20:06 | Allow existing fts5 tables to be dropped even if the associated tokenizer is not available. (check-in: 69ef47eeee user: dan tags: fts5-delay-tokenizer) | |
2024-05-12
| ||
00:26 | Optimization in the implementation of OP_OpenRead and OP_OpenWrite (Closed-Leaf check-in: 3a256a1667 user: drh tags: faster-openread) | |
2024-05-11
| ||
16:44 | Add tests to bestindexC.test. No changes to code. (check-in: 58d938c0e0 user: dan tags: trunk) | |
2024-05-10
| ||
18:24 | Fix aggregate function processing to correctly deal with OOMs inside of sqlite3ParserAddCleanup(). (dbsqlfuzz b2d11ca70e55ee8bde48ae0b53fa3e9355812f95). Also add improved testing support by causing sqlite3FaultSim(300) to simulate an OOM inside of sqlite3ParserAddCleanup() and by adding improved fault-sim support to the CLI. (check-in: c6fd70b3c2 user: drh tags: trunk) | |
18:15 | Add a test for the fixes on this branch. (Closed-Leaf check-in: 716088d673 user: dan tags: cleanup-testing) | |
18:10 | The sqlite3FaultSim(300) error from [1e8863909ac369e5] must be treated as an OOM, since it simulates an OOM. Also fix deferred deletion of Expr objects from [a53bdd311c4154fd] so that it does not corrupt the AST if an OOM occurs. (check-in: c623d9a51e user: drh tags: cleanup-testing) | |
17:05 | Improvements to the ".testctrl fault_install" command in the CLI. (check-in: 48b34ded82 user: drh tags: cleanup-testing) | |
16:28 | Add an sqlite3FaultSim(300) call to the sqlite3ParserAddCleanup() routine for more precise simulation of OOM errors in that routine. (check-in: 1e8863909a user: drh tags: cleanup-testing) | |
09:26 | Squelch two OMIT-flag-related warnings reported in forum post 388243d9882067a9. No functional changes. (check-in: 1d6716054d user: stephan tags: trunk) | |
2024-05-09
| ||
18:54 | Reformulate a for-in loop to a for loop in wasm.xWrap() to work around downstream frameworks modifying the JS Array prototype, as reported in forum post b549992634b55104. (check-in: ce2eb6d89a user: stephan tags: branch-3.45) | |
18:39 | Add a maintenance-reminder comment explaining [dc58ed65492857]. (check-in: 857f5d7fad user: stephan tags: trunk) | |
18:00 | Reformulate a for-in loop to a for loop in wasm.xWrap() to work around downstream frameworks modifying the JS Array prototype, as reported in forum post b549992634b55104. (check-in: dc58ed6549 user: stephan tags: trunk) | |
17:45 | Fix a problem causing the recovery extension to use excessive memory and CPU time in some cases. (check-in: bc394acb6e user: dan tags: branch-3.45) | |
2024-05-08
| ||
17:57 | Rename a shadowed local var, as reported in forum post 2ba65af31. No functional changes. (check-in: d030c87c4d user: stephan tags: trunk) | |
17:42 | Allow arbitrary expressions as the second argument to RAISE(). (Closed-Leaf check-in: 003e1c8c27 user: drh tags: enhanced-raise) | |
11:51 | Fix a hyperlink typo in session documentation. (check-in: 42d67c6fed user: drh tags: trunk) | |
2024-05-07
| ||
19:45 | Fix bug in test script sessionconflict.test. (check-in: e29decb8b1 user: dan tags: trunk) | |
17:58 | Ensure successive scans of pragma virtual tables return consistent rowids. (check-in: 6838bf3ac1 user: dan tags: trunk) | |
13:20 | Fix a compilation error in test/lemon-test01.y, reported in forum post f0ad095705. (check-in: 576b68c8b5 user: stephan tags: trunk) | |
2024-05-06
| ||
20:21 | When extracting links from sqlar archives, clobber any existing file or link, and do not call utimes() to set the timestamp - it looks through the link and operates on the target. (check-in: 2bf8c3f99a user: dan tags: trunk) | |
20:18 | Omit redundant unary + operators from the AST. (check-in: f81cc149e5 user: drh tags: trunk) | |
19:04 | Avoid unnecessary recursion in sqlite3ExprDeleteNN(). This complicates the code, but it is needed to prevent nuisance "stack overflow" reports from OSSFuzz while it is running the latest ASAN. (check-in: 70abc144ca user: drh tags: trunk) | |
17:55 | Add new sessions API sqlite3changegroup_add_change(). (check-in: 5eaab43ce4 user: dan tags: trunk) | |
17:32 | Edit comments in sqlite3session.h. (Closed-Leaf check-in: 49f84878e2 user: dan tags: changegroup-add-change) | |
17:21 | Add tests for sqlite3changegroup_add_change(). (check-in: 9d67bedc20 user: dan tags: changegroup-add-change) | |
11:27 | Fix problem in sqlar_uncompress() when being used to extract symbolic links. (check-in: 4d90c3f179 user: dan tags: trunk) | |
2024-05-05
| ||
10:00 | Add comment to the test/lemon-test01.y file indicating that it does not work and is for historical reference only. (check-in: 9bdf73a8d4 user: drh tags: trunk) | |
2024-05-04
| ||
21:10 | Add new sessions API sqlite3changegroup_add_change(). (check-in: 73647db1dd user: dan tags: changegroup-add-change) | |
16:50 | Add test cases to test/in7.test. No code changes. (check-in: 8c3086f9fe user: dan tags: trunk) | |
15:10 | Assume that an SQL function is able to return a subtype if any of its arguments are SQL functions that are able to return subtypes. This closes a corner-case hole in the patch at [ba789a7804ab96d8]. (check-in: b36d499e4c user: drh tags: trunk) | |
15:04 | Assume that a function is able to return a subtype if either (1) it is itself marked with SQLITE_RESULT_SUBTYPE, or (2) one of its arguments is a function that is able to return a subtype. This check-in backs out the code changes from the previous two on this same branch, but keeps the test cases from the previous two. (Closed-Leaf check-in: f16b200f25 user: drh tags: func-rw-subtype) | |
11:31 | Functions that pass through the sqlite3_value of one of their arguments must also be marked as SQLITE_RESULT_SUBTYPE, in case one of their arguments has a subtype. (check-in: 2f9fba931d user: drh tags: func-rw-subtype) | |
2024-05-03
| ||
19:35 | The coalesce(), ifnull(), and iif() functions pass through subtype values from their arguments, and hence need to have the SQLITE_RESULT_SUBTYPE flag set. (check-in: cdd1610c44 user: drh tags: func-rw-subtype) | |
2024-05-02
| ||
19:22 | Fix a problem with queries that use "IN(...) ORDER BY ... NULLS LAST" or similar introduced by [d7648e21605a0b38]. (check-in: 26b2d9390f user: dan tags: trunk) | |
18:16 | Avoid an assert failure accessible only when internal testing features are enabled. dbsqlfuzz crash-66abacda6bca6bd531e25595e8c8068e2c710326.txt. (check-in: fbc446daac user: dan tags: trunk) | |
17:46 | Fix a case where the recovery extension might write uninitialized data to the recovered database. (check-in: 8519b4d039 user: dan tags: trunk) | |
14:48 | Avoid an OP_Next in cases where an IN(...) query against a UNIQUE index may return at most 1 row. (check-in: d7648e2160 user: dan tags: trunk) | |
12:14 | Fix the CREATE TABLE performance issue described by forum thread 4cf69794d9dfff7c in two different ways: (1) Omit the call to PRAGMA integrity_check('X') that was being done after CREATE TABLE "X" because the result was being ignored and the integrity_check was not doing anything other than burning CPU cycles. (2) Do not interpret the argument to PRAGMA integrity_check as a number if it is in fact a string that looks like a number. (check-in: 71f08b9122 user: drh tags: trunk) | |
12:00 | Add a test case to the fix to PRAGMA integrity_check in the previous check-in. (Closed-Leaf check-in: 39a57b596d user: drh tags: faster-create) | |
11:52 | Do not accept a string that looks like a number used as an argument to PRAGMA integrity_check as a number. Treat it as a table name that just happens to look like a number. (check-in: b04e7a2347 user: drh tags: faster-create) | |
11:51 | Omit the OP_SqlExec to "PRAGMA integrity_check" added by [348fa7aaf7958b3f] because it is a no-op. Even if the integrity_check failes, the CREATE TABLE is stull successful. The OP_SqlExec just burns CPU cycles for no reason. (check-in: 532795acd1 user: drh tags: faster-create) | |
2024-05-01
| ||
19:48 | Avoid an OP_Next in cases where an IN(...) query against a UNIQUE index may return at most 1 row. (Closed-Leaf check-in: 560f64157d user: dan tags: unique-in-opt) | |
16:25 | Fix another problem in the recovery extension where a corrupt sqlite_schema table could lead to excessive memory consumption. (check-in: 1c7e33a8aa user: dan tags: trunk) | |
14:42 | Fix a problem causing the recovery extension to use excessive memory and CPU time in some cases. (check-in: 8de85170d5 user: dan tags: trunk) | |
2024-04-30
| ||
19:34 | Avoid 32-bit overflow when calculating ncycle for ".scanstats vm". (check-in: 2858efa06d user: dan tags: trunk) | |
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: 5f6c079d84 user: drh tags: trunk) | |
18:42 | Internal JS doc touchups. No functional changes. (check-in: 626b997b4e user: stephan tags: trunk) | |
18:24 | Additional internal docs in the wasm utilities. (check-in: 5a2245a9eb user: stephan tags: trunk) | |
18:13 | Allow virtual table implementations to handle OFFSET but not LIMIT, but not LIMIT but not OFFSET. (Closed-Leaf check-in: 90e5c8226a user: dan tags: vtab-limit-fix) | |
17:19 | Have where.c ignore any plan from a virtual table that tries to use LIMIT/OFFSET without also using all WHERE constraints. (check-in: 7d30596496 user: dan tags: vtab-limit-fix) | |
17:09 | Further fixes and improvements to the generate_series() enhancements on this branch. (check-in: b7d9bd7ee2 user: drh tags: vtab-limit-fix) | |
14:36 | Use hex flag masks rather than decimals in ext/misc/series.c. (check-in: a94e2cd028 user: drh tags: vtab-limit-fix) | |
14:32 | Fix a problem allowing a LIMIT constraint to be passed to a virtual table in cases where there exist WHERE terms that cannot also be passed. (check-in: 72c8ed9698 user: dan tags: vtab-limit-fix) | |
13:38 | Fix handling of LIMIT and OFFSET in virtual tables that are part of a compound SELECT. (check-in: 40421c1c4e 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: 408d47ecaa user: drh tags: vtab-limit-fix) | |
12:01 | Add test demonstrating the problem at forum post c243b8f856. No fix yet. (check-in: 1685495c0a user: dan 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: 38f1e5ce4e user: drh tags: trunk) | |
2024-04-25
| ||
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: e6df846f36 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: bbdf22e3d9 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: b8ec8511b1 user: drh tags: compound-subquery-affinity) | |
06:52 | wasm: add a makefile comment about the static sqlite3.h/c version info injected into the JS files possibly differing from the runtime-emited version info when a user provides their own sqlite3.c. (check-in: d99a01a0f6 user: stephan tags: trunk) | |
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: 779723ad79 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: 9ea6bcc8fd user: drh tags: trunk) | |
14:18 | Fix a case where a corrupt stat4 record could go unrecognized due to integer overflow. (check-in: 240a4a48b2 user: dan 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: 6f0e7e1952 user: drh tags: trunk) | |
11:40 | Avoid slowdown when exprNodeIsConstant() is called on deeply nested SQL functions. (check-in: 1c0b034545 user: dan 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: cef4d9e3ba user: drh tags: trunk) | |
06:43 | Remove an undocumented feature from the JS Worker1.open API because it relies on broken behavior which has no VFS-agnostic workaround. (check-in: 3a640038c7 user: stephan 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: 86e8c782e7 user: drh tags: trunk) | |
11:56 | Fix an uninitialized variable problem in the new code on this branch. (Closed-Leaf check-in: 85625b3871 user: dan tags: vector-in-fix) | |
06:49 | Remove some dead WASM-side code. (check-in: 0a07ee27bd user: stephan tags: trunk) | |
06:36 | Minor touchups in JS docs and exception messages. (check-in: 9e7fc9370d user: stephan tags: trunk) | |
05:38 | When running the 'dist' target in ext/wasm for an SEE-capable build, ensure that the resulting zip file and directory name include '-see'. (check-in: 04c552b12e user: stephan tags: trunk) | |
2024-04-22
| ||
20:09 | Add extra tests for aborting conflicts in the sessions module. (check-in: b4a6d32662 user: dan tags: trunk) | |
17:03 | Minor cleanups to [8fbda563d2f5]. (check-in: 5ee2594b65 user: stephan tags: trunk) | |
16:46 | Extend the JS/WASM SEE build support by (A) filtering SEE-related bits out of the JS when not building with SEE and (B) accepting an optional key/textkey/hexkey option to the sqlite3.oo1.DB and subclass constructors to create/open SEE-encrypted databases with. Demonstrate SEE in the test app using the kvvfs. This obviates the changes made in [5c505ee8a7]. (check-in: 8fbda563d2 user: stephan tags: trunk) | |
13:31 | Extra robustness in the code that causes cursors to return NULL when they are participating in an OUTER JOIN. (check-in: 672c2869ef user: drh tags: trunk) | |
11:48 | For sqlite3.oo1.DB JavaScript classes, bypass execution of any on-open() SQL in SEE-capable builds because it would necessarily run before the client has an opportunity to provide their decryption key, which would leave the db handle in an unusable state and cause the ctor to throw. This currently affects only the OPFS VFSes. We may want to consider extending the ctor options object to optionally accept an SEE key and apply it when opening the db. (check-in: 5c505ee8a7 user: stephan 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: e1040e51eb user: drh tags: trunk) | |
2024-04-21
| ||
23:35 | Fix an indentation problem in debugging routine sqlite3ShowSrcList(). No changes to production code. (check-in: 5560df2726 user: drh tags: trunk) | |
2024-04-20
| ||
19:19 | Slight performance improvement for the new code on this branch. (check-in: 500c67f134 user: dan tags: vector-in-fix) | |
15:14 | Fix a problem where an expression like (a, b) IN (SELECT ...) might not use an index on (a, b) if the affinities and collation sequences of "a" and "b" are not identical. (check-in: 4d870fd8b5 user: dan tags: vector-in-fix) | |
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: 8c0f69e0e4 user: drh tags: trunk) | |
2024-04-17
| ||
19:48 | Prevent tokenize-blobs from being used with non-contentless tables. Fix some other issues with the new code on this branch. (Leaf check-in: 6a640ea4d8 user: dan tags: fts5-tokenize-blob) | |
2024-04-16
| ||
14:23 | Add some tests for the fts5 tokenize-blob functionality on this branch. (check-in: c2f9d1259c user: dan tags: fts5-tokenize-blob) | |
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: 6b21cccdee user: drh tags: trunk) | |
20:24 | Add experimental way to specify an alternative tokenizer when writing to or querying an fts5 table. (check-in: 6c51c9c6a8 user: dan tags: fts5-tokenize-blob) | |
14:59 | Merge version 3.45.3 patches into the reuse-schema-3.45 sub-branch. (Leaf check-in: a1ff415341 user: drh tags: reuse-schema-3.45) | |
14:45 | Merge all of the latest trunk enhancements into the bedrock branch. (check-in: 16dac180b5 user: drh tags: bedrock) | |
14:39 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 4a72acbc4b user: drh tags: wal2) | |
14:36 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: eedf6bed2a user: drh tags: begin-concurrent) | |
14:29 | Merge from wrong branch. Bedrock should be updated from wal2, not from trunk. (Closed-Leaf check-in: 4c23cad98d user: drh tags: mistake) | |
14:21 | Merge all 3.45.3 changes into the wal2-3.45 branch. (Leaf check-in: 2ccc018546 user: drh tags: wal2-3.45) | |
14:18 | Merge all 3.45.3 changes into the begin-concurrent-3.45 subbranch. (Leaf check-in: 3dda82e001 user: drh tags: begin-concurrent-3.45) | |
13:34 | Version 3.45.3 (check-in: 8653b75887 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: b40580be71 user: drh tags: trunk) | |
16:52 | Adjustment to EQP output in one test case. (check-in: 08dd2b927b user: drh tags: branch-3.45) | |
15:15 | Mark the BTree cell overflow cache as invalid whenever the rowid goes invalid. (check-in: 0ec6669c84 user: drh tags: branch-3.44) | |
15:10 | Increase the version number to 3.45.3. (check-in: 119b3b3c9c user: drh tags: branch-3.45) | |
15:06 | Mark the BTree cell overflow cache as invalid whenever the rowid goes invalid. (check-in: 5266bb6dc9 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: 5dede50d9e user: drh tags: trunk) | |
13:05 | Add assert() statements to help verify the overflow page cache. (Closed-Leaf check-in: 0ebc65481f 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: 4efecd6167 user: drh tags: btree-ovfl-cache) | |
11:28 | Test case for the fix in the previous check-in. (check-in: 0cf4d835da user: drh tags: btree-ovfl-cache) | |
02:57 | Mark the BTree cell overflow cache as invalid whenever the rowid goes invalid. (check-in: 74c9e19c92 user: drh tags: btree-ovfl-cache) | |
2024-04-11
| ||
19:09 | Fix handling of the SQLITE_OMIT_WAL check in one place. Resolves forum post 87cc13302de160eb. (check-in: ce86d30d91 user: stephan tags: branch-3.45) | |
19:08 | Fix handling of the SQLITE_OMIT_WAL check in one place. Resolves forum post 87cc13302de160eb. (check-in: 5dae6e6df4 user: stephan tags: trunk) | |
2024-04-10
| ||
16:36 | Fix the pragma4.test script so that it works with SQLITE_OMIT_VIRTUALTABLE. (check-in: 61060c7d0d user: dan tags: branch-3.45) | |
2024-04-09
| ||
19:23 | Fix a "shift exponent is too large" usan error that could occur in the fts3 snippet() function when a query phrase contains more than 64 tokens. (check-in: 6d2c7ac4ec user: dan tags: trunk) | |
15:18 | Avoid some performance problems in the recover extension when recovering strategically corrupted databases. (check-in: d83b0ffe8b user: dan tags: branch-3.45) | |
15:09 | Avoid some performance problems in the recover extension when recovering strategically corrupted databases. (check-in: e66a834bba user: dan tags: trunk) | |
14:08 | Ignore CHECK constraints when qualifying the xfer optimization while running VACUUM. (check-in: 944d1b6eb3 user: drh tags: branch-3.44) | |
14:07 | Ignore CHECK constraints when qualifying the xfer optimization while running VACUUM. (check-in: bb6f990809 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: a6e26e7788 user: drh tags: trunk) | |
2024-04-08
| ||
17:55 | Update tests in returning1.test to account for [c7896e88]. (check-in: c02956cd5c user: dan tags: trunk) | |
12:02 | Merge the latest trunk enhancements, and especially the enhancement to the WHERE-clause push-down optimization, into the bedrock branch. (check-in: 0f93b52c77 user: drh tags: bedrock) | |
11:57 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 59ccea7db7 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: 69ec714b2d user: drh tags: trunk) | |
11:45 | Fix a harmless compiler warning in the ICU extension due to [acddbc489d5231da]. (check-in: 3d8750e885 user: drh tags: trunk) | |
06:37 | Enhancements to the fuzzer invariant checker to turn optimizations on and off. (Closed-Leaf check-in: 6759448137 user: drh tags: pushdown-subquery) | |
2024-04-07
| ||
18:55 | Merge trunk testing enhancements into the pushdown-subquery branch. (check-in: 287ff24b26 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: 6431538f0b 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: 0a53dde214 user: drh tags: trunk) | |
10:30 | Merge trunk enhancements into the pushdown-subquery branch. (check-in: 27865e316f 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: 3d5fb1ec7a user: drh tags: trunk) | |
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: 681dfe2dd6 user: drh tags: wrong-branch) | |
18:30 | Do not allow changes to sqlite3ExprIsTableConstant() that support pushdown of subqueries interfere with the hash-join logic. (check-in: 8682931f9c user: drh tags: pushdown-subquery) | |
17:42 | Merge testing logic fixes on trunk into the pushdown-subquery branch. (check-in: a4e1f03dca 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: c6e873d4db user: drh tags: trunk) | |
12:19 | Generalize pushdown to allow any uncorrelated subquery to be pushed down. (check-in: 87c45fb0d5 user: drh tags: pushdown-subquery) | |
11:59 | Generalize the pushdown of IN right-hand sides to cover more SELECTs. (Closed-Leaf check-in: 4120bc740a 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: 2cbd7838fd user: drh tags: pushdown-IN-table) | |
15:04 | Merge all recent trunk enhancements into the reuse-schema branch. (check-in: e556f3d381 user: drh tags: reuse-schema) | |
14:54 | Merge the latest trunk enhancements into the bedrock branch. (check-in: 7a2a64b646 user: drh tags: bedrock) | |
14:50 | Merge the latest trunk enhancements into the wal2 branch. (check-in: a8a8a2db9b user: drh tags: wal2) | |
14:46 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 4ff8334241 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: 083b0f7e77 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: 4b3a253fc7 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: 4484ec6d26 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. This is version 3.44.3. (check-in: d38cfa6067 user: drh tags: branch-3.44, version-3.44.3) | |
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: c7896e8885 user: drh tags: trunk) | |
2024-04-04
| ||
22:53 | Optimize sqlite3.oo1.DB.exec() for the rowMode='object' case to avoid converting the object property keys (column names) from native code to JS for each row. This speeds up large data sets considerably and addresses the report in forum post 3632183d2470617d. (check-in: 8b41ef8690 user: stephan tags: trunk) | |
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: 7bf49e2c54 user: drh tags: trunk) | |
13:36 | Fix an ASAN problem in part of the test harness. No changes to SQLite itself. (check-in: 797cda7ddc user: drh tags: trunk) | |
13:07 | Fix test cases due to an error message change. (check-in: c49ec239ed user: drh tags: trunk) | |
12:37 | Fix exception propagation when the opfs-sahpool VFS fails to initialize to address report in forum post be0141c639. (check-in: db31d178d6 user: stephan tags: branch-3.45) | |
12:36 | Fix exception propagation when the opfs-sahpool VFS fails to initialize to address report in forum post be0141c639. (check-in: cdb3a90055 user: stephan 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: acddbc489d user: drh tags: trunk) | |
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: 186dcae19e user: drh tags: interstage-heuristic) | |
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: 8018417b01 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: 0b2ac2cdc7 user: drh tags: trunk) | |
2024-03-30
| ||
14:11 | Make explicit that sqlite3_keyword_name()'s index is 0-based, per forum request. Doc changes only. (check-in: 090943dc31 user: stephan tags: trunk) | |
2024-03-29
| ||
18:19 | Fix handling of an OOM case broken by [11015b4e]. (check-in: 1f3a805d19 user: dan tags: bedrock) | |
18:16 | Fix handling of an OOM case broken by [49263c91]. (check-in: 9e6b64decb user: dan tags: begin-concurrent) | |
18:07 | Fix a problem in SQLITE_DIRECT_OVERFLOW_READ builds that could allow a concurrent transaction to be committed even if it read from an overflow page that was modified concurrently, in cases where the overflow page was written without also writing the b-tree page to which it is linked. (check-in: 11015b4ed1 user: dan tags: bedrock) | |
18:04 | Improve the log message emitted when a BEGIN CONCURRENT transaction cannot be committed due to conflicts so that it identifies the conflicting table in a few more cases. (check-in: 19ff2d4e1e user: dan tags: bedrock) | |
17:58 | Fix a problem in SQLITE_DIRECT_OVERFLOW_READ builds that could allow a concurrent transaction to be committed even if it read from an overflow page that was modified concurrently, in cases where the overflow page was written without also writing the b-tree page to which it is linked. (check-in: 49263c9136 user: dan tags: begin-concurrent) | |
17:32 | Improve the log message emitted when a BEGIN CONCURRENT transaction cannot be committed due to conflicts so that it identifies the conflicting table in a few more cases. (check-in: 5d30e362cf user: dan tags: begin-concurrent) | |
2024-03-28
| ||
10:58 | Document that the order of an update hook call is unspecied vis-a-vis the final result of the operation which triggers that hook. Doc changes only. (check-in: 3d4b1f0791 user: stephan tags: trunk) | |
2024-03-27
| ||
20:34 | Update comments in fts5.h. (check-in: 862945d5c4 user: dan tags: trunk) | |
2024-03-26
| ||
18:07 | Add extra tests to vtabL.test. (check-in: fe209099f5 user: dan tags: trunk) | |
11:14 | Avoid expanding integer values in columns with real affinity to the full 8-byte representation when editing records as part of a DROP COLUMN command. (check-in: a49296de00 user: dan tags: trunk) | |
10:48 | Merge all recent trunk enhancements into the reuse-schema branch. (check-in: e469b02205 user: drh tags: reuse-schema) | |
10:45 | Merge all recent trunk enhancements into the bedrock branch. (check-in: 33d3453f46 user: drh tags: bedrock) | |
10:42 | Merge all recent trunk enhancements into the wal2 branch. (check-in: c2139d8263 user: drh tags: wal2) | |
10:42 | Merge all recent trunk enhancements into the begin-concurrent branch. (check-in: 9b854e54b0 user: drh tags: begin-concurrent) | |
2024-03-25
| ||
20:35 | The RAISE() operator is not a constant expression and cannot participate in the VALUE-as-coroutine optimization. dbsqlfuzz 74cf7c9904360322a6c917e4934b127543d1cd51 (check-in: 6a06dc7384 user: drh tags: trunk) | |
20:00 | Add further tests for sqlite3_declare_vtab(). (check-in: f3c4433f6b user: dan tags: trunk) | |
19:31 | Simplifications to the sqlite3_declare_vtab() implementation. Changes some conditionals into assert() statements, for coverage. (check-in: ff7b898a6f user: drh tags: trunk) | |
18:30 | Fix a theoretical OOB memory access in sqlite3_stmt_scanstatus_v2(). (check-in: 87be958074 user: dan tags: trunk) | |
18:24 | Revert the previous change. Instead, do a pre-check of the CREATE TABLE statement that is the second argument to sqlite3_declare_vtab() and if the first two keywords are not "CREATE" and "TABLE", then raise an SQLITE_MISUSE error. (check-in: 6a2ff83512 user: drh tags: trunk) | |
17:43 | Remove an ALWAYS() from a condition that can be true. (check-in: 715fcf033a user: drh tags: trunk) | |
14:44 | Fix an inaccuracy in automatic indexes that was exposed by the fix at [80c4223098c1827f]. (check-in: fdc9406f1c user: drh tags: trunk) | |
13:18 | Fix the pragma4.test script so that it works with SQLITE_OMIT_VIRTUALTABLE. (check-in: f8fe6fb69c user: drh tags: trunk) | |
12:28 | Fix recent test case changes so that they also work on Windows. (check-in: 38578b5af2 user: drh tags: trunk) | |
11:34 | Use the SQLITE_CONSTRAINT return value from xBestIndex to prohibit bad query plans in the pragma virtual table. (check-in: b1259d4448 user: drh tags: trunk) | |
10:55 | Improvements to the vtablog.c extension: Eliminate memory leaks. More diagnostic output for xBestIndex. (check-in: 92e9a71bc4 user: drh tags: trunk) | |
10:28 | Flag sqlite3_trace() and sqlite3_profile() as deprecated so that the doc generator for funclist.html sees them as such, and add 'Deprecated' to their page's title for consistency with other deprecated APIs. Comment changes only. Addresses forum post 0901025836. (check-in: 87c54f93f5 user: stephan tags: trunk) | |
00:38 | Improvements to the vtablog.c extension, for better logging of virtual table interactions. (check-in: e253bb36a5 user: drh tags: trunk) | |
2024-03-24
| ||
21:18 | Fix the xBestIndex method of the pragma virtual table so that it correctly gives a higher cost to plans where the schema hidden parameter is unconstrained. (check-in: ec791413d5 user: drh tags: branch-3.45) | |
21:15 | Fix the xBestIndex method of the pragma virtual table so that it correctly gives a higher cost to plans where the schema hidden parameter is unconstrained. (check-in: d68fb8b5db user: drh tags: branch-3.44) | |
21:10 | Fix the xBestIndex method of the pragma virtual table so that it correctly gives a higher cost to plans where the schema hidden parameter is unconstrained. Fix for the problem reported by forum post 85b6a8b6705fb77a. (check-in: bc516ff520 user: drh tags: trunk) | |
20:26 | Improved "wheretrace" debugging output for calls to xBestIndex. No changes to release code. (check-in: 33966bb06c user: drh tags: trunk) | |
19:08 | Fix the SQLITE_ALLOW_ROWID_IN_VIEW bug-compatibility option so that it works again. Add the SQLITE_CONFIG_ROWID_IN_VIEW sqlite3_config() value to optionally disable the bug-compatibility mode at start-time. Enable testing of SQLITE_ALLOW_ROWID_IN_VIEW. (check-in: 7a3d0027f8 user: drh tags: branch-3.45) | |
16:42 | Do not automatically assume that ROWID is NOT NULL when compiled with SQLITE_ALLOW_ROWID_IN_VIEW. dbsqlfuzz 31b38eeb63a4e1562de665078f52b7b47a7543cf (check-in: b5d2dce18f user: drh tags: branch-3.44) | |
16:33 | Do not automatically assume that ROWID is NOT NULL when compiled with SQLITE_ALLOW_ROWID_IN_VIEW. dbsqlfuzz 31b38eeb63a4e1562de665078f52b7b47a7543cf (check-in: 80c4223098 user: drh tags: trunk) | |
2024-03-23
| ||
15:17 | Fix an adverse interaction between CREATE TABLE AS and the new VALUES-as-coroutine optimization. dbsqlfuzz c2c5e7e08b7e489d270a26d895077a03f678c33b (check-in: 84b6fdea0b user: drh tags: trunk) | |
2024-03-22
| ||
10:32 | Fix incorrect boundary assert()s on the new OP_IfSizeBetween opcode. (check-in: 8eda4797c5 user: drh tags: trunk) | |
2024-03-21
| ||
22:18 | Test case for the assert() problem fixed by [9ba3cff9d48fe8fc]. (check-in: 865f0de7a1 user: drh tags: trunk) | |
22:12 | Fix a assert() that is incorrect, though harmless. Also add a test case. (check-in: 90537ce044 user: drh tags: branch-3.45) | |
22:08 | Fix a assert() that is incorrect, though harmless. Also add a test case. (check-in: 57b0c98460 user: drh tags: branch-3.44) | |
15:52 | Add comments (only, no code) to the JS sqlite3_config() bindings reminding us why SQLITE_CONFIG_ROWID_IN_VIEW is specifically not included. JNI does not need this treatment because it explicitly supports only a very small subset of config options. (check-in: 4fea396221 user: stephan tags: trunk) | |
11:46 | Enhancements to testrunner.tcl: (1) Add the "--config CONFIGS" option, to that only configuration named on the comma-separated list CONFIGS are run. (2) Add the "--omit CONFIGS" to omit configuration on the CONFIGS list (3) Add the Android configuration to "release" (check-in: 4ccb372967 user: drh tags: trunk) | |
11:37 | Have os_unix.c reuse cached file-descriptors in the case when a read-write fd is requested on a read-only file and a read-only fd returned. (check-in: a678e85402 user: dan tags: trunk) | |
10:35 | Fix all test cases so that they work with SQLITE_ALLOW_ROWID_IN_VIEW. (check-in: 66c69e2f20 user: drh tags: trunk) | |
2024-03-20
| ||
16:56 | Change EXPLAIN QUERY PLAN output to say "USE TEMP B-TREE FOR LAST TERM OF ORDER BY", or "LAST N TERMS OF ORDER BY", instead of "RIGHT PART OF ORDER BY". (check-in: 7e13a2c758 user: dan tags: trunk) | |
16:29 | Fix test cases for rtree and fts5. No changes to code. (check-in: 633dca9074 user: drh tags: branch-3.44) | |
16:27 | Change EXPLAIN QUERY PLAN output to say "USE TEMP B-TREE FOR LAST TERM OF ORDER BY", or "LAST N TERMS OF ORDER BY", instead of "RIGHT PART OF ORDER BY". (Closed-Leaf check-in: cd547c5004 user: dan tags: eqp-orderby) | |
16:04 | Have rtree avoid keeping a blob handle open following an error. (check-in: 1303716a11 user: drh tags: branch-3.44) | |
15:26 | Following a ROLLBACK that reverts changes to an RTREE, any pending queries against that same RTREE abort with code SQLITE_ABORT_ROLLBACK. dbsqlfuzz de7d17b72d0e842352c998dd86a47b7d0f707be9. (check-in: b26e5a500e user: drh tags: branch-3.44) | |
12:19 | Back port various minor patches (check-in: a1a5c427c2 user: drh tags: branch-3.44) | |
11:36 | Automatically disable the DISTINCT optimization during query planning if the ORDER BY clause exceeds 63 terms. dbsqlfuzz afd1d61fc27d14938a0d78a50970fa1e9fbfee58. (check-in: e8d5caef26 user: drh tags: branch-3.44) | |
11:30 | Ignore COLLATE operators when determining whether the result of a subexpression should be shallow-copied or deep-copied. (check-in: dd58d1178f user: drh tags: branch-3.44) | |
11:25 | Fix a harmless compiler warning in the randomjson.c extension. (check-in: a4c9351234 user: drh tags: branch-3.44) | |
11:24 | If a term of an ORDER BY or GROUP BY contains an aggregate function or column, then it is not an alias that needs to be resolved, so don't try to. This fixes a harmless assertion found by dbsqlfuzz. (check-in: e7ba2af5a1 user: drh tags: branch-3.44) | |
11:04 | Fix the SQLITE_ALLOW_ROWID_IN_VIEW bug-compatibility option so that it works again. Add the SQLITE_CONFIG_ROWID_IN_VIEW sqlite3_config() value to optionally disable the bug-compatibility mode at start-time. Enable testing of SQLITE_ALLOW_ROWID_IN_VIEW. (check-in: acc08353e2 user: drh tags: branch-3.44) | |
10:45 | Fix the SQLITE_ALLOW_ROWID_IN_VIEW bug-compatibility option so that it works again. Add the SQLITE_CONFIG_ROWID_IN_VIEW sqlite3_config() value to optionally disable the bug-compatibility mode at start-time. Enable testing of SQLITE_ALLOW_ROWID_IN_VIEW. (check-in: b6802565df user: drh tags: trunk) | |
10:40 | Fix a typo in a comment. (Closed-Leaf check-in: 54680d0fbe user: drh tags: rowid-in-view) | |
09:45 | Fix typos in the SQLITE_CONFIG_ROWID_IN_VIEW documentation. (check-in: 1ad1ca4982 user: drh tags: rowid-in-view) | |
2024-03-19
| ||
23:01 | Change the SQLITE_CONFIG_NO_ROWID_IN_VIEW configuration option to be just SQLITE_CONFIG_ROWID_IN_VIEW (without the "_NO_" in the middle) and give it the ability to turn the option on and off. Otherwise, it is difficult to test. (check-in: 5d412edc2e user: drh tags: rowid-in-view) | |
19:56 | Return the error "ambiguous column name: rowid", instead of "no such column: rowid", when a "rowid" reference is ambiguous. (check-in: 0615bdae2d user: drh tags: rowid-in-view) | |
19:48 | Add the --no-rowid-in-view option to the --help output of the CLI. (check-in: 134da9c348 user: drh tags: rowid-in-view) | |
19:42 | Make sure the new u1.nRow value is copied when making a copy of a SrcItem object. This fixes a problem in [ac6f095e13e43d66] from yesterady. (check-in: 262f8f9d80 user: drh tags: trunk) | |
16:51 | Update test scripts to account for [8fcea4cd]. (check-in: 0c543c51a8 user: dan tags: rowid-in-view) | |
16:34 | In the name resolver when SQLITE_ALLOW_ROWID_IN_INDEX is enabled, if there are multiple views that might resolve to the "rowid" but only one real table, then use that one real table and ignore the views. (check-in: 8fcea4cdfc user: drh tags: rowid-in-view) | |
15:27 | Update tests to work with SQLITE_ALLOW_ROWID_IN_VIEW. (check-in: 495b8c7b08 user: dan tags: rowid-in-view) | |
14:55 | Return the error "ambiguous column name: rowid", instead of "no such column: rowid", when a "rowid" reference is ambiguous. (Closed-Leaf check-in: 021f34fcfe user: dan tags: ambiguous-rowid-error) | |
14:38 | Fix the fuzzinvariants.c test module so that it does not generate invariants that depend on rowid when SQLITE_ALLOW_ROWID_IN_VIEW is used, since rowid values can be unreliable in that context. (check-in: 0d711aaaa1 user: drh tags: rowid-in-view) | |
14:21 | Improvements to the first check-in on this branch, causing less collateral damage. (check-in: 7bc882897b user: drh tags: rowid-in-view) | |
13:55 | On second thought, change SQLITE_TESTCTRL_ROWID_IN_VIEW into a start-time option SQLITE_CONFIG_NO_ROWID_IN_VIEW. (check-in: b8e045c9e1 user: drh tags: rowid-in-view) | |
13:31 | When compiled with SQLITE_ALLOW_ROWID_IN_VIEW, rowid-in-view is on by default but can now be turned off using SQLITE_TESTCTRL_ROWID_IN_VIEW. Without the compile-time option, rowid-in-view is always off. (check-in: 8a6196ab29 user: drh tags: rowid-in-view) | |
10:58 | Fix a problem involving infinities int the Kahan-Babushka-Neumaier summation algorithm. (check-in: 8af5878138 user: drh tags: branch-3.45) | |
10:46 | Fix a problem involving infinities int the Kahan-Babushka-Neumaier summation algorithm. (check-in: 0984e5cd25 user: drh tags: branch-3.44) | |
10:41 | Adjustments to the test cases for the previous check-in to make them cross-platform Linux/Mac/Windows. Test changes only. No change to core code. (check-in: 0dddadbd5b user: drh tags: trunk) | |
10:16 | Fix another problem from [c63e26e705f5e967] involving infinities and the Kahan-Babushka-Neumaier summation algorithm. Problem reported by forum post 23b8688ef4. (check-in: 45d272ef38 user: drh tags: trunk) | |
02:30 | First steps toward getting -DSQLITE_ALLOW_ROWID_IN_VIEW to work again. That compile-time option is untested, undocumented, and unsupported. But it was mentioned in the release notes for version 3.36.0, so I think that means we need to support it forever. (check-in: 7c46ff6402 user: drh tags: rowid-in-view) | |
2024-03-18
| ||
21:08 | Fix asan problems in sqlite3rbu.c. Enable RBU for sanitizer release tests. (check-in: ad2ae7717e user: dan tags: trunk) | |
20:52 | Avoid spurious SQLITE_IOERR_DATA errors when reading partial pages from a cksumvfs database using a SQLITE_DIRECT_OVERFLOW_READ build. (check-in: 0f485dbece user: dan tags: trunk) | |
18:56 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: c2d4adabb9 user: drh tags: reuse-schema) | |
18:55 | Merge the latest trunk enhancements into the bedrock branch. (check-in: 10ab5e8570 user: drh tags: bedrock) | |
18:51 | Merge the latest trunk enhancements into the wal2 branch. (check-in: c0af1242d8 user: drh tags: wal2) | |
18:47 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 50b43b02da user: drh tags: begin-concurrent) | |
18:03 | Remove unnecessary blank lines from build commands in the default Makefile.in. (check-in: 76fb3a908f user: drh tags: trunk) | |
18:00 | Add the "VALUES-as-coroutine" optimization. Large VALUES clauses on an INSERT, for example, prepare and run in about half the time and with half the memory. This check-in also includes enhancements to the internal sqlite3ExprIsConstant() routine to recognize pure SQL functions as constant if they have constant arguments. (check-in: a120c9235f user: drh tags: trunk) | |
17:13 | Fix harmless compiler (scan-build) warnings. (Closed-Leaf check-in: c86f9f2a15 user: drh tags: exp-values-clause2) | |
16:30 | Allow the VALUES-as-coroutine optimization to be applied to later rows of a VALUES clause even if earlier rows do not qualify. (check-in: 9a47ea7f0f user: drh tags: exp-values-clause2) | |
15:10 | Change a test case to use a window function rather than random() to disable the VALUES clause optimization. (check-in: c589149a13 user: drh tags: exp-values-clause2) | |
13:31 | Add assert() statements to validate access to the SrcItem.u1.nRow union member. (check-in: 21f616d9b9 user: drh tags: exp-values-clause2) | |
13:10 | Fix the patch at [10ee6fcba08ab128] so that it works on reduced-size Expr nodes. (check-in: 260bd764c3 user: drh tags: exp-values-clause2) | |
12:49 | Improvements to EXPLAIN QUERY PLAN output for multi-row VALUES claues. (check-in: ac6f095e13 user: drh tags: exp-values-clause2) | |
11:12 | Ensure the database schema has been loaded and the database encoding gleaned before beginning to code a multi-row VALUES clause. (check-in: 2ff476eb3d user: dan tags: exp-values-clause2) | |
10:54 | Fix a problem caused by a non-aggregate function with an OVER clause in a multi-row VALUES clause. (check-in: 10ee6fcba0 user: dan tags: exp-values-clause2) | |
2024-03-17
| ||
16:01 | Omit the "noop(X)" test SQL function. Accomplish the same thing using the idiom: "coalesce(X,random())". (check-in: 0eb2fbb891 user: drh tags: exp-values-clause2) | |
00:13 | Add an ALWAYS on an unreachable branch. (check-in: 0dce621169 user: drh tags: exp-values-clause2) | |
2024-03-16
| ||
21:12 | Recognize when an SQL function is constant and can occur inside an optimized VALUES clause. (check-in: c0e5ceb87d user: drh tags: exp-values-clause2) | |
21:04 | Fix a assert() that is incorrect, though harmless. (Closed-Leaf check-in: 9ba3cff9d4 user: drh tags: enhanced-expr-is-const) | |
20:15 | Further expand the scope of usage for the enhacement to expr-is-constant. (check-in: d7eadcf7dd user: drh tags: enhanced-expr-is-const) | |
19:48 | Assert that the eCode is always non-zero upon entry into exprNodeIsConstant(). (check-in: f71b28f671 user: drh tags: enhanced-expr-is-const) | |
19:36 | Activate the enhanced constant-expression for the [constant propagation optimization](/info/f4229707ac08d66c). (check-in: 92afea3888 user: drh tags: enhanced-expr-is-const) | |
17:04 | Extend the scope expr-is-constant for function to cover the IN-to-EQ optimization. (check-in: dae669245c user: drh tags: enhanced-expr-is-const) | |
14:27 | Fix exprNodeIsConstantFunction() so that it returns WRC_Continue, not WRC_Abort, if the function really is constant. (check-in: d85dd4de2d user: dan tags: enhanced-expr-is-const) | |
13:18 | Enhance the sqlite3ExprIsConstant() function so that it recognizes constant functions. So far the enhancement only applies to the multi-row VALUES clause, but it could possibly be applied in many other places. (check-in: c9e0488c6c user: drh tags: enhanced-expr-is-const) | |
2024-03-15
| ||
17:57 | New options for testrunner.tcl: --stop-on-error and --stop-on-coredump. (check-in: 82035b9cfd user: drh tags: trunk) | |
17:04 | Fix (totally harmless) memory leaks in Lemon to avoid warnings during ASAN builds. (check-in: ce009205a8 user: drh tags: trunk) | |
13:16 | Tweaks to the func4.test test module (which tests the rarely used totype.c extension) so that it works on i586 compiled using gcc-13 with -O0. Details at forum post 0a7553b0f734c033. (check-in: d0fbe779bc user: drh tags: trunk) | |
12:59 | Attempt to use the Dekker high-precision floating point algorithm in the ext/misc/totype.c extension. This check-in should have been derived from trunk, not the exp-values-clause2 branch. But that's ok, because both trunk and the branch are the same in all aspects that relate to this check-in and this check-in is just parking the proposed enhancement for future consideration - it is not a serious proposal at this point. (Leaf check-in: dd41db3b10 user: drh tags: totype-dekker) | |
2024-03-14
| ||
20:39 | Fix testcase to account for new behaviors with this branch. (check-in: 823e579362 user: drh tags: exp-values-clause2) | |
19:31 | Fix a problem with ALTER TABLE and correlated multi-row VALUES clauses. (check-in: d543c829ef user: dan tags: exp-values-clause2) | |
19:01 | Fix a problem handling "INSERT INTO ... SELECT ... UNION VALUES(...), (...)" and similar statements. (check-in: e8a2a8198a user: dan tags: exp-values-clause2) | |
17:04 | Avoid some OP_SCopy instructions in "INSERT INTO .. VALUES" statements that insert more than one row in cases where the VALUES clause contains a value for all columns of the table. (check-in: 988f0ea70c user: dan tags: exp-values-clause2) | |
13:18 | JS: remove an unused function argument and some debug-related comments. No functional changes. (check-in: f15709430d user: stephan tags: trunk) | |
11:45 | Add further tests for VALUES clauses in various contexts. (check-in: 973d197d96 user: dan tags: exp-values-clause2) | |
2024-03-13
| ||
20:04 | Change the way parse.y handles multi-row VALUES clauses to save a few cycles. (check-in: 88d5bc91a5 user: dan tags: exp-values-clause2) | |
18:41 | Remove unreachable code from this branch. (check-in: 657c7b4f9d user: dan tags: exp-values-clause2) | |
18:00 | Merge the latest trunk enhancements into the bedrock branch. (check-in: 5c8e80f435 user: drh tags: bedrock) | |
17:55 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 2b12da7234 user: drh tags: wal2) | |
17:51 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 238fa84a9a user: drh tags: begin-concurrent) | |
17:33 | Fix some OOM handling problems on this branch. (check-in: 2085c7f12a user: dan tags: exp-values-clause2) | |
16:49 | Do not automatically activate SQLITE_ENABLE_SHARED_SCHEMA in the Makefile. Instead, enhance the mdevtest and sdevtest targets of testrunner.tcl to set that option sometimes and sometimes not. (check-in: 693b8f9307 user: drh tags: reuse-schema) | |
16:35 | Merge the testrunner.tcl enhancement from trunk. (check-in: da47151561 user: drh tags: reuse-schema) | |
16:32 | Minor change to the "mdevtest" and "sdevtest" in testrunner.tcl, to make it easier to add configurations in branches. (check-in: 9349d94e05 user: drh tags: trunk) | |
15:59 | Merge the latest trunk enhancements into the reuse-schema branch. Fix the reuse-schema build of the CLI so that it works again. (check-in: 70ef3784f6 user: drh tags: reuse-schema) | |
15:47 | Merge trunk into this branch. (check-in: 38635651f0 user: dan tags: exp-values-clause2) | |
15:44 | Ensure that if a multi-row VALUES cannot be coded while being parsed, the SF_MultiValue flag is correctly set. (check-in: 94791824a6 user: dan tags: exp-values-clause2) | |
15:34 | Avoid creating a co-routine incrementally for a VALUES clause that has affinities other than NONE. (check-in: 4229b12b32 user: dan tags: exp-values-clause2) | |
13:43 | If the NJOB environment variable is a positive integer, it causes testrunner.tcl to run that many jobs. (check-in: 924281b94d user: drh tags: trunk) | |
13:27 | Document the testrunner.tcl --explain option in doc/testrunner.md. (check-in: 5a7b5fc99a user: drh tags: trunk) | |
13:09 | Add the --explain option to testrunner.tcl. (check-in: f0c9eb0326 user: drh tags: trunk) | |
11:46 | Improve one of the error messages from testrunner.tcl. (check-in: 233155c174 user: drh tags: trunk) | |
11:29 | Minor tweaks to the testrunner documentation. (check-in: 3128b98d26 user: drh tags: trunk) | |
10:55 | Improvements to the "help" message generated by testrunner.tcl. Add the special "list" permutation that does nothing but list all allowed values for the PERMUTATION argument to testrunner.tcl. (check-in: 1f5bfc6a90 user: drh tags: trunk) | |
10:54 | Add pointer to documentation to testrunner.tcl help message. (check-in: eff855102f user: dan tags: trunk) | |
10:47 | Have testrunner.tcl set SQLITE_TMPDIR on windows as well. (check-in: 64f4dad1f9 user: dan tags: trunk) | |
00:37 | On testrunner.tcl: (1) Add the "help" command. (2) Add the "script" command to the help message. (3) Improve the error message generated by "script" when an incorrect CONFIG option is provided. (check-in: 1b7f0be440 user: drh tags: trunk) | |
2024-03-12
| ||
20:10 | Correctly initialize the SrcItem.iCursor field to -1 when creating a co-routine from a multi-values VALUES clause. (check-in: c32953ff6d user: dan tags: exp-values-clause2) | |
18:33 | Have testrunner.tcl have each test store its temp files in its working directory. To avoid unlikely, but possible, collisions. (check-in: 18842d0d72 user: dan tags: trunk) | |
18:04 | Have testrunner.tcl have each test store its temp files in its working directory. To avoid unlikely, but possible, collisions. (Closed-Leaf check-in: 775a10d10b user: dan tags: testrunner-tmpdir-fix) | |
12:12 | Merge all version-3.45.2 patches into the reuse-schema-3.45 subbranch. (check-in: 20d9618da3 user: drh tags: reuse-schema-3.45) | |
12:00 | Merge all 3.45.2 pages into the bedrock-3.45 subbranch. (check-in: 33b9cf7c10 user: drh tags: bedrock-3.45) | |
11:55 | Merge all 3.45.2 patches into the wal2-3.45 subbranch. (check-in: 64d740c594 user: drh tags: wal2-3.45) | |
11:51 | Merge all version 3.45.2 patches into the begin-concurrent-3.45 subbranch. (check-in: f0723258aa user: drh tags: begin-concurrent-3.45) | |
11:06 | Version 3.45.2 (check-in: d8cd6d49b4 user: drh tags: release, branch-3.45, version-3.45.2) | |
10:47 | First attempt at version 3.45.2, but failed to set the version number correctly in the source tree. (Closed-Leaf check-in: 78bed2b0c7 user: drh tags: mistake) | |
2024-03-11
| ||
23:28 | Merge the latest branch-3.45 patches into the reuse-schema-3.45 subbranch. (check-in: e22e0e1e4e user: drh tags: reuse-schema-3.45) | |
23:26 | Merge the latest branch-3.45 changes into the bedrock-3.45 subbranch. (check-in: 516b7e1380 user: drh tags: bedrock-3.45) | |
23:23 | Merge the branch-3.45 patches into the wal2 branch. (check-in: f8cee91f5d user: drh tags: wal2-3.45) | |
23:18 | Merge the latest branch-3.45 changes into the begin-concurrent branch. (check-in: 98ea2ca21a user: drh tags: begin-concurrent-3.45) | |
20:34 | Fix another testrunner.tcl problem on windows. (check-in: 7805844bc4 user: dan tags: trunk) | |
19:43 | Fix a missing brace problem in testrunner.tcl introduced by the previous commit. (check-in: 1f5e334d98 user: dan tags: trunk) | |
19:33 | Update mdevtest and sdevtest to do shell builds in parallel. And only if one or more of the tcl scripts run requires it. (check-in: 6eae4547d4 user: dan tags: trunk) | |
18:21 | Run shell*.test modules with "make mdevtest". (check-in: 76c4710618 user: drh tags: trunk) | |
17:27 | Attempt to reduce the memory used by VALUES clauses in as many statements as possible, not just INSERT. This branch still has problems. (check-in: 17d1f7cfab user: dan tags: exp-values-clause2) | |
11:26 | Fix the ".import" command in the CLI so that it works correctly with tables that contain computed columns. (check-in: b26f24441f user: drh tags: branch-3.45) | |
11:24 | Fix the ".import" command in the CLI so that it works correctly with tables that contain computed columns. forum post ca014d7358. (check-in: 95a9c88b25 user: drh tags: trunk) | |
09:39 | Add more docs for the OPFS delete-before-open feature. (check-in: cb8d9c269c user: stephan tags: trunk) | |
09:34 | Add delete-before-open=1 URI flag to the 'opfs' VFS to tell it to xDelete the db file before opening it, primarily to enable users to work around a corrupt db without having to reach into OPFS-specific APIs to remove the db file. (check-in: e87cf0d770 user: stephan tags: trunk) | |
09:32 | Add delete-before-open=1 URI flag to the 'opfs' VFS to tell it to xDelete the db file before opening it, primarily to enable users to work around a corrupt db without having to reach into OPFS-specific APIs to remove the db file. (Closed-Leaf check-in: e83f978863 user: stephan tags: opfs-delete-before-open) | |
2024-03-09
| ||
18:41 | Fix the .expert command in the shell so that it does not leak memory if not followed by SQL and so that it works with reverse_unordered_selects. (check-in: 7ead022eda user: drh tags: trunk) | |
13:31 | Fuzzcheck is run automatically by testrunner.tcl, so there is no need to include fuzzcheck as a separate dependency for the releasetest target in the MSVC makefile. (check-in: 76629b2bff user: drh tags: trunk) | |
13:17 | Reenable the use of SQLITE_OMIT_VIRTUALTABLE by fixing a misplaced #endif caused by the merge at [c080560c2d0d753c]. (check-in: 71120ea837 user: drh tags: branch-3.45) | |
13:10 | Fix the rtreeJ.test module to align it with [cd017c28d516399e]. (check-in: 111b3d8270 user: drh tags: branch-3.45) | |
12:30 | Handle an OOM case in fts5 code to query tokendata=1 tables. (check-in: ebf59fa374 user: drh tags: branch-3.45) | |
00:38 | The NOT NULL strength reduction optimization should be applied to the WHERE clause only. (check-in: be266c7139 user: drh tags: branch-3.45) | |
2024-03-08
| ||
21:37 | The NOT NULL strength reduction optimization from [de9c86c9e4cdb34f] should be applied to the WHERE clause only. Otherwise, the operand of the IS NULL or IS NOT NULL operator might be a reference to a bare column of an aggregate table, and we can't tell if it is NULL or not based only on its NOT NULL attribute. Forum post 440f2a2f17. (check-in: 51704feae2 user: drh tags: trunk) | |
19:03 | One of the assert()s added by the previous check-in was not quite correct. This commit fixes it. (check-in: d401358329 user: drh tags: trunk) | |
15:39 | Add new assert() statements, which if they had existed three years ago, would have detected the code generator problem fixed by the previous check-in. (check-in: 166d1e5d26 user: drh tags: trunk) | |
14:16 | Silently ignore redundant ON CONFLICT clauses in an UPSERT. (check-in: e546d8c685 user: drh tags: branch-3.44) | |
14:11 | Silently ignore redundant ON CONFLICT clauses in an UPSERT. (check-in: 46245855a0 user: drh tags: branch-3.45) | |
14:01 | Silently ignore redundant ON CONFLICT clauses in an UPSERT. Only the first ON CONFLICT for each index is active. Do not issue an error, since that might break legacy queries. But ignore the redundant ON CONFLICT clauses to prevent problems such as described in forum post 919c6579c8. (check-in: d0ea6b6ba6 user: drh tags: trunk) | |
13:49 | Omit some extra tests for the intck extension in OMIT_VIRTUAL_TABLE or OMIT_PRAGMA builds. (check-in: 29d9eb7d55 user: dan tags: trunk) | |
11:13 | Fix pragma6.test so that it works with ENABLE_OVERSIZE_CELL_CHECK builds. (check-in: a02551de4c user: dan tags: trunk) | |
11:08 | Do not run tests for the intck extension in OMIT_VIRTUAL_TABLE or OMIT_PRAGMA builds. (check-in: de8130c020 user: dan tags: trunk) | |
03:24 | Must use sqlite3IntFloatCompare() for accurate comparisons between very large integer and floating point values in RTREE. Otherwise the comparison does not work on all platforms. Further fix to [027e5336acc26f57]. (check-in: 820f106acf user: drh tags: trunk) | |
2024-03-07
| ||
19:29 | Introducing JS worker1 promiser v2, which initializes via Promise (instead of a callback function) and can be loaded as an ESM module. (check-in: 2fbaf2f51d user: stephan tags: trunk) | |
18:53 | Resolve duplicate loading of promiser v2 demo code (a side effect of having done precisely what it was told to do). Consolidate demo-worker1-promiser(-esm).html/(m)js variants into central copies processed with c-pp. (Closed-Leaf check-in: 9347d9b9a6 user: stephan tags: wasm-promiser1-v2) | |
18:47 | Improved error handling. (Leaf check-in: cf2d1ad036 user: drh tags: exp-values-clause) | |
17:56 | wasm promiser.v2 is essentially working but the demo code is double-loading the module for as-yet-undetermined reasons. (check-in: aa877ce0c3 user: stephan tags: wasm-promiser1-v2) | |
17:11 | Simplify the parser changes on this branch. (check-in: 89a6c7b527 user: dan tags: exp-values-clause) | |
16:25 | Merge all the latest trunk enhancements into the exp-values-clause branch. (check-in: c4923f266f user: drh tags: exp-values-clause) | |
16:04 | Initial work at getting sqlite3Worker1Promiser.v2() to return a Promise instead of using an onready() callback, and also creating an ESM build for promiser1 per user request. It seems to work but requires more testing. (check-in: 0e272123ac user: stephan tags: wasm-promiser1-v2) | |
15:58 | Fix harmless compiler warnings in test code for the intck extension. (check-in: 7fbdc1a849 user: drh tags: trunk) | |
15:44 | Add further tests for the code on this branch. (check-in: 5d8065e801 user: dan tags: exp-values-clause) | |
12:34 | Do not allow the query planner to be tricked into thinking that an index on a constant expression might be useful for something. Problem reported on forum post ecdfc02339. This is a follow-up to the fixes at [44200596aa943963] and [2d2b91cc0f6fed8c]. (check-in: 720ce06d93 user: drh tags: trunk) | |
2024-03-06
| ||
21:53 | Fix a memory leak in new memdb1.test test cases that were added by [e638d5e408ea2e18]. No changes to SQLite itself. (check-in: f0a49dc8bc user: drh tags: branch-3.45) | |
21:22 | Fix harmless compiler warning seen with MSVC. (check-in: 5aa809bcfe user: mistachkin tags: branch-3.45) | |
21:08 | Fix harmless compiler warnings seen with MSVC. (check-in: c0f6152410 user: mistachkin tags: branch-3.45) | |
21:06 | Fix a minor test file locking issue on Windows. (check-in: a44752806f user: mistachkin tags: branch-3.45) | |
21:00 | Work around obscure floating point issue seen with older versions of MSVC. (check-in: 6055715feb user: mistachkin tags: branch-3.45) | |
20:59 | Fix two -Werror=lto-type-mismatch warnings reported in forum post ef62b57bd5. (check-in: d4e423f3a4 user: mistachkin tags: branch-3.45) | |
20:58 | The quote() SQL function should convert +Inf into 9.0e+999 and -Inf into -9.0e+999. See forum post 6675b25108. (check-in: 07a9ef888d user: mistachkin tags: branch-3.45) | |
20:58 | Make sure key comprisons are done correctly if the index key contains NaN values that have not been shifted into NULLs. That can only happen due to database corruption, but we need to deal with it nevertheless. (check-in: 7ed922d99c user: mistachkin tags: branch-3.45) | |
20:56 | When inserting a 3-byte cell into a btree, ensure that the extra padding byte is 0x00. This is not necessary for security, as far as I can tell, but it seems like a reasonable precaution. (check-in: f3e841873d user: mistachkin tags: branch-3.45) | |
20:55 | Rig sqlite3_serialize() so that it will initialize a previously uninitialized database prior to serializing it, so that it does not have a zero-byte size and does not return NULL (except for OOM). Forum thread 498777780e16880a. (check-in: 22a33f133e user: mistachkin tags: branch-3.45) | |
20:54 | When doing a text-affinity comparison between two values where one or both have both a text and a numeric type, make sure the numeric type does not confuse the answer. This is a deeper fix to the problem observed by forum post 3776b48e71. The problem bisects to [25f2246be404f38b] on 2014-08-24, prior to version 3.8.7. (check-in: 6d385ccda8 user: mistachkin tags: branch-3.45) | |
20:52 | Ensure that the replace() SQL function always returns a TEXT value even when its first argument is numeric and its second argument is an empty string. Fix for the issue reported by forum post 3776b48e71. (check-in: a7c98c8f19 user: mistachkin tags: branch-3.45) | |
20:49 | Add the json_pretty() SQL function. (check-in: ceb51c1cc3 user: drh tags: trunk) | |
20:38 | Add test cases for json_pretty(). (Closed-Leaf check-in: 6448b90708 user: drh tags: json-pretty) | |
20:34 | Avoid making too many calls to sqlite3Select/sqlite3WhereBegin() when processing large VALUES clauses. (check-in: 356158c192 user: dan tags: exp-values-clause) | |
20:24 | Work around obscure floating point issue seen with older versions of MSVC. (check-in: 42d39f9140 user: mistachkin tags: trunk) | |
14:55 | Handle VALUES clauses having different number of values in different rows. Also the case where SQLITE_LIMIT_COMPOUND_SELECT is set to 0. (check-in: f5074b29d9 user: dan tags: exp-values-clause) | |
14:42 | Add a couple of json_pretty() examples to /fiddle. (check-in: d5e1687b1d user: stephan tags: json-pretty) | |
14:30 | Add the json_pretty(J) function for pretty-printing of JSON. An optional 2nd argument is text used for indentation, with a default value being four spaces. (check-in: 39552bd36c user: drh tags: json-pretty) | |
12:28 | Correction to the previous check-in. (check-in: 483fa2969e user: drh tags: trunk) | |
11:35 | Fix handling of "id=?" corner cases in rtree when the value on the RHS is a real value. Problem reported by forum post 1bb055be17. (check-in: 027e5336ac user: dan tags: trunk) | |
08:45 | Wasm build tweaks to attempt to get the node.js-for-node.js build to use Emscripten's nodefs filesystem driver for persistent storage. This is completely untested - validating it requires a nodeist. (Closed-Leaf check-in: 0bcbde7c54 user: stephan tags: wasm-nodefs) | |
2024-03-05
| ||
20:33 | Add comments for the new code on this branch. (check-in: 551caba93b user: dan tags: exp-values-clause) | |
18:41 | Remove code that added a P4 parameter to the OP_Variable opcode. This is no longer required. (check-in: dd5977c9a8 user: dan tags: trunk) | |
18:03 | Merge trunk changes into this branch. (check-in: a003fffafd user: dan tags: exp-values-clause) | |
17:48 | Fix a problem with large values clauses and named variables. (check-in: 4784a92e56 user: dan tags: exp-values-clause) | |
17:39 | Reformulate [34439fe3aeea7cbb] slightly to resolve a false-positive OOM reported in forum post 2eadfe94e3. (check-in: 320ccb5d5f user: stephan tags: branch-3.45) | |
17:33 | Reformulate [34439fe3aeea7cbb] slightly to resolve a false-positive OOM reported in forum post 2eadfe94e3. (check-in: 8290646792 user: stephan tags: trunk) | |
17:23 | Simplify changes on this branch by avoiding any special handling until SQLITE_LIMIT_COMPOUND_SELECT rows are reached. (check-in: 9cbceaac8f user: dan tags: exp-values-clause) | |
16:59 | The value returned by the json_each.json field needs to survive longer than the json_each virtual table itself, in the event that the value is used in an aggregate expression. dbsqlfuzz 5120bd0b3bb0b73eebbcb79ac37c6b0663fccad6 (check-in: 040946b342 user: drh tags: branch-3.45) | |
16:47 | The value returned by the json_each.json field needs to survive longer than the json_each virtual table itself, in the event that the value is used in an aggregate expression. dbsqlfuzz 5120bd0b3bb0b73eebbcb79ac37c6b0663fccad6 (check-in: 952ed71b9b user: drh tags: trunk) | |
12:48 | /fiddle: reorder/replace example entries to make them more coherent when tried in order and clear the example selection list when the input area is cleared, both based on forum feedback. (check-in: b4ce270b3f user: stephan tags: trunk) | |
08:48 | /fiddle 'Mandlebrot' typo fix reported in the forum. (check-in: ceefe6ba38 user: stephan tags: trunk) | |
07:55 | Update fiddle.make to account for Makefile changes in [178b7d46f9]. (check-in: 7a5d810549 user: stephan tags: trunk) | |
06:31 | /fiddle: before resetting a db, roll back any transactions (resolves problem reported in forum post 0b41a25d65) and remove an obsolete/broken reference to a long-gone API which could cause initialization to fail prematurely. (check-in: ee164ca73c user: stephan tags: trunk) | |
2024-03-04
| ||
18:50 | Fix some problems with "VALUES(...) UNION ..." and similar on this branch. (check-in: 5d6797716d user: dan tags: exp-values-clause) | |
18:22 | Fix a compiler warning in date.c. Update makefiles to include all necessary dependencies for building shell.c. (check-in: 178b7d46f9 user: drh tags: trunk) | |
18:02 | The ability to DROP multiple tables (or views or indexes or triggers) at once, as implemented by this branch, appears to work. However, this branch adds over 1000 bytes to the code footprint. And the changes is significant, adding risk. The benefit of being able to drop multiple tables in a single statement is not seen to be enough to overcome those downsides, and so there are no immediate plans to merge this branch. (Leaf check-in: 1a49788afd user: drh tags: multi-drop) | |
16:44 | Change test results in corruptC.test to account for the added detail in the output of "PRAGMA integrity_check" from [b736519d3d2e93c7]. (check-in: 0d19eeaafb user: drh tags: trunk) | |
16:18 | Fix harmless compiler warnings in the increment integrity_check extension. (check-in: 596668e662 user: drh tags: trunk) | |
13:58 | Adjust date/time functions so that they do a better job of keeping track of whether the current time is UTC or localtime, and no-op the 'utc' and 'localtime' modifiers accordingly. See forum post e7a939e074. Also add the datedebug() function, available only under -DSQLITE_DEBUG, for improved visibility of the DateTime object during debugging and testing. (check-in: dc56968374 user: drh tags: trunk) | |
11:12 | Fix assert() statements in date/time computations: The month and day numbers can be zero if an error has been seen. (check-in: fc773f6c76 user: drh tags: trunk) | |
09:56 | Document why the wasm build does not use Emscripten's -sSTRICT=1 flag and account for a behaviour change in emsdk 3.1.55 regarding the HEAPxyz symbols. (check-in: f6e8872033 user: stephan tags: trunk) | |
09:23 | When warning about multiple invocations of JS's sqlite3ApiBootstrap(), use the warning logger installed by the first invocation, rather than console.warn. (check-in: d162af2d99 user: stephan tags: trunk) | |
06:54 | After wasm bootstrapping has read the optional global-scope config objects, delete those objects because any further changes would not have any useful effect. Expand the docs regarding the sqlite3ApiBootstrap() config object and explain the necessary evil of a separate global-scope object for that configuration. (check-in: e6b14f7313 user: stephan tags: trunk) | |
2024-03-03
| ||
20:15 | Back out the previous change. Replace it with new date modifiers "ceiling" and "floor". (check-in: f0831cced2 user: drh tags: trunk) | |
2024-03-02
| ||
21:02 | New date/time modifiers "mnth" and "yr" work like "month" and "year" but resolve day-of-month overflow by truncating rather than rolling over into the next month. Forum thread 232d1abb5d (check-in: 5d392c16bb user: drh tags: trunk) | |
20:50 | Change the magic time-interval names that do truncate-to-same-month to be "mnth" and "yr" - "month" and "year" without the vowels. (Closed-Leaf check-in: 296b46c529 user: drh tags: month-truncate) | |
20:39 | Attempt to use less memory when handling a large VALUES clause attached to an INSERT statement. This branch is buggy. (check-in: 6d4f1ae2fc user: dan tags: exp-values-clause) | |
13:38 | Proof-of-concept for new time-interval operator "pg-month" and "pg-year" that use the truncate-to-month algorithm for month overflow instead of the wrap-to-next-month algorithm that is used by SQLite by default. (check-in: b606c09657 user: drh tags: month-truncate) | |
12:17 | Remove an unused line of code. (check-in: 2627259069 user: drh tags: multi-drop) | |
11:02 | Simplifications to multi-DROP logic. (check-in: e70d6be751 user: drh tags: multi-drop) | |
00:29 | Improved rebustness against OOM and corruption. (check-in: 3992f45033 user: drh tags: multi-drop) | |
2024-03-01
| ||
22:42 | When doing DROP TABLE or DROP INDEX, use a heap to ensure that the various btrees are dropped in the right order for autovacuum. (check-in: e5bf9556ff user: drh tags: multi-drop) | |
19:08 | RTREE uses multi-DROP to erase shadow tables. (check-in: cf8a58d679 user: drh tags: multi-drop) | |
18:05 | Omit unreachable branches in the parser. (check-in: 90de1f73f9 user: drh tags: multi-drop) | |
15:56 | Fix harmless compiler warning. (check-in: 33d3bb848b user: drh tags: multi-drop) | |
14:47 | Improved handling of foreign-key constraints on a multi-drop of tables. (check-in: 144e332f44 user: drh tags: multi-drop) | |
12:21 | When doing a multi-drop, delete btrees beginning with the largest root page first and working toward smaller root pages, to avoid problems with root page renumbering due to autovacuum. (check-in: 37d4c5e207 user: drh tags: multi-drop) | |
2024-02-29
| ||
19:40 | Attempt to fix multi-object DROP. Working better, but still not perfect. (check-in: 02f9fc73ee user: drh tags: multi-drop) | |
13:44 | Add the ability to DROP one or more objects of the same class in a single statement by listing the objects as multiple arguments to the DROP command. (check-in: 2266086cf0 user: drh tags: multi-drop) | |
10:55 | Fix two -Werror=lto-type-mismatch warnings reported in forum post ef62b57bd5. (check-in: 803481f250 user: stephan tags: trunk) | |
03:45 | Fix two -Werror=lto-type-mismatch warnings reported in forum post ef62b57bd5. (Closed-Leaf check-in: 29f94610dc user: stephan tags: lto-type-mismatch) | |
2024-02-28
| ||
19:44 | Put NEVER() on a branch in STAT4 that appears to be unreachable. (Closed-Leaf check-in: 0ca35e9278 user: drh tags: mistake) | |
15:32 | Add in a VdbeCoverage() macro needed by STAT4 that should have been part of check-in [63ef234e88857a65]. (check-in: d51c699ae4 user: drh tags: trunk) | |
01:12 | Always convert 32-bit integer literals into EP_IntValue notation, even if they contain "_" separators. (check-in: 2dfc427f67 user: drh tags: trunk) | |
2024-02-27
| ||
20:19 | Fix an eputf() macro without its argument in the CLI. (check-in: c2f5e257d2 user: drh tags: trunk) | |
19:57 | Add an assert() to help scan-build recognize that a variable is initialized. (check-in: 10d26f1ee8 user: drh tags: trunk) | |
16:36 | Adjust a VdbeCoverage() macro in PRAGMA integrity_check to account for the fact that arguments to the OP_Eq opcode used are never NULL. (check-in: 759ccea3f6 user: drh tags: trunk) | |
16:25 | Adjust a VdbeCoverage() macro in PRAGMA integrity_check to account for the fact that arguments to the OP_Eq opcode used are never NULL. (Closed-Leaf check-in: 8c788fc4b2 user: drh tags: wrong-branch) | |
15:56 |
| |
15:33 | Remove unreachable branches from the PRAGMA integrity_check enhancement of [b736519d3d2e93c7]. (check-in: 6d02fb233f user: drh tags: trunk) | |
14:31 | Ensure memory cells are properly freed before they are overwritten by OP_IntegrityCk. (check-in: e50acaf934 user: dan tags: trunk) | |
11:03 | Have "PRAGMA quick_check" compare the number of entries in tables and indexes. (check-in: b736519d3d user: dan tags: trunk) | |
11:02 | Extend sqlite3.c makefile rule to support EXTRA_SRC=list-of-c-files to append to the generated sqlite3.c, as discussed in/around forum post ccda88cf6f1754c5. (check-in: 61676f1e18 user: stephan tags: trunk) | |
10:52 | Allow "_" characters to appear between any two digits in an integer, real or hexadecimal SQL literal. (check-in: 0e6700f43f user: dan tags: trunk) | |
00:58 | Bring the extra-src branch up to date with the trunk. (Closed-Leaf check-in: 12ff5c5c41 user: stephan tags: extra-src) | |
2024-02-26
| ||
22:28 | The quote() SQL function should convert +Inf into 9.0e+999 and -Inf into -9.0e+999. See forum post 6675b25108. (check-in: 85dd79a6ed user: drh tags: trunk) | |
15:27 | When inserting a 3-byte cell into a btree, ensure that the extra padding byte is 0x00. This is not necessary for security, as far as I can tell, but it seems like a reasonable precaution. (check-in: 5766f1279d user: drh tags: trunk) | |
12:16 | Add the intck extension. For performing incremental integrity-check on a database. (check-in: 141d8bb059 user: dan tags: trunk) | |
11:51 | Fix header comments on test scripts. (Closed-Leaf check-in: 9fe9670c97 user: drh tags: incr-integrity-check) | |
11:43 | Remove a local variable from sqlite3IntFloatCompare() that was being optimized out anyhow, in order to get back to 100% MC/DC. (check-in: 52b13d6acb user: drh tags: trunk) | |
10:56 | Merge latest trunk changes into this branch. (check-in: b6371ff9f5 user: dan tags: incr-integrity-check) | |
2024-02-25
| ||
21:30 | Make sure key comprisons are done correctly if the index key contains NaN values that have not been shifted into NULLs. That can only happen due to database corruption, but we need to deal with it nevertheless. (check-in: 7e4c743f9e user: drh tags: trunk) | |
2024-02-24
| ||
19:58 | Add two GIFs that contain the feather logo. (check-in: 5f21e6a8ee user: drh tags: trunk) | |
16:26 | Add further tests for the intck module. (check-in: c253e276b2 user: dan tags: incr-integrity-check) | |
2024-02-23
| ||
20:51 | Add tests for the new code on this branch. (check-in: 351d46b237 user: dan tags: incr-integrity-check) | |
18:21 | Add the ".intck ?STEPS_PER_UNLOCK?" command to the shell tool. (check-in: cfd051836b user: dan tags: incr-integrity-check) | |
18:02 | Typo fixes reported in the forum. No code changes. (check-in: 67d8bae0f6 user: stephan tags: trunk) | |
17:10 | Fix detection of surplus index entries when all indexed fields are NULL. (check-in: 5f310fb7be user: dan tags: incr-integrity-check) | |
15:13 | Fix problems with resuming integrity-check operations on indexes with mixed ASC and DESC columns, and on indexes that contain NULL values. (check-in: 0f68b35a00 user: dan tags: incr-integrity-check) | |
2024-02-22
| ||
18:15 | Fix harmless compiler warning seen with MSVC. (check-in: e5db089931 user: mistachkin tags: trunk) | |
00:50 | Fix debugging code so that it compiles on MSVC. (check-in: ce5df19dc4 user: drh tags: trunk) | |
2024-02-21
| ||
20:58 | Fix various issues in sqlite3intck.c. (check-in: 8a7bfa7452 user: dan tags: incr-integrity-check) | |
20:21 | Fix typo in comment. Fossil forum post cc20266bf2. (check-in: 7e3c46eed1 user: drh tags: trunk) | |
19:31 | Simplify the way the restart key is saved internally by the intck extension. (check-in: 0e39962baa user: dan tags: incr-integrity-check) | |
19:17 | Add documentation to ext/intck/sqlite3intck.h. (check-in: 4cc19bd74f user: dan tags: incr-integrity-check) | |
16:15 | Ensure intck tests are run by testrunner.tcl. (check-in: 11d6816c06 user: dan tags: incr-integrity-check) | |
16:12 | Merge trunk changes into this branch. (check-in: 63e8846ac1 user: dan tags: incr-integrity-check) | |
2024-02-20
| ||
20:18 | Have the intck extension better handle corruption at the b-tree layer. (check-in: ecd775d108 user: dan tags: incr-integrity-check) | |
18:17 | Use fewer cycles to generate the "next key" value used by sqlite3_intck_suspend() function in the intck extension. (check-in: 95f01426f9 user: dan tags: incr-integrity-check) | |
16:04 | Consider using "=" and IS operators with even low-quality indexes in cases where they are selected explicitly using an INDEXED BY clause. (check-in: 43cbbea821 user: dan tags: incr-integrity-check) | |
15:38 | Fixes to comments associated with the recent PRAGMA optimize enhancements. No changes to code. (check-in: 27a2113d78 user: drh tags: trunk) | |
13:11 | Remove an unreachable branch from printf(). Change it into an assert(). (check-in: 4c9886b692 user: drh tags: trunk) | |
13:10 | Remove an unused variable from the merge in the previous check-in. (check-in: 5c26bf379e user: drh tags: trunk) | |
12:48 | Enhancements to PRAGMA optimize and ANALYZE. Add the 0x10000 flag to PRAGMA optimize. ANALYZE now records zero-size partial indexes in the sqlite_stat1 table. PRAGMA optimize looks for both growth and shrinkage in table sizes, and uses tighter bounds (10x rather than 25x) to trigger a re-analyze. PRAGMA optimize automatically uses are reasonable analysis_limit to prevent excessive runtimes. (check-in: 63ef234e88 user: drh tags: trunk) | |
12:14 | Another simplification of the PRAGMA optimize logic for improved coverage. (Closed-Leaf check-in: 6c5a0c8545 user: drh tags: better-pragma-optimize) | |
2024-02-19
| ||
23:58 | Minor fixes. (check-in: ed5afebc41 user: drh tags: better-pragma-optimize) | |
20:47 | Fix a minor hiccup in the computation of the number of btrees to be scanned. (check-in: 91302d9b27 user: drh tags: better-pragma-optimize) | |
20:15 | Use more efficient SQL to verify that indexes contain entries that match their tables. (check-in: c01e008c28 user: dan tags: incr-integrity-check) | |
20:12 | If there is no mention of a table in sqlite_stat1, use OP_Rewind to see if the table is empty prior to invoking ANALYZE. (check-in: 0cc93b19de user: drh tags: better-pragma-optimize) | |
19:56 | In PRAGMA optimize, scale back the analysis_limit when many different tables and indexes must be scanned. (check-in: 636615358a user: drh tags: better-pragma-optimize) | |
18:55 | Merge trunk fixes into the better-pragma-optimize branch. (check-in: 2cf78a5b5f user: drh tags: better-pragma-optimize) | |
18:03 | Add implementation of sqlite3_intck_suspend(). (check-in: c36ada868d user: dan tags: incr-integrity-check) | |
16:22 | If a table has one or more rows and it has a partial index has zero rows, still make an entry in the sqlite_stat1 table for the partial index, so that we know that "PRAGMA optimize" does not need to redo the whole table. (check-in: e147b18991 user: drh tags: better-pragma-optimize) | |
13:50 | Simplifications to PRAGMA optimize to make it easier to use. It always tries to ANALYZE unanalyzed indexes. The 0x10000 flag just makes it check for size changes in all tables. (check-in: 44ed7f4cd0 user: drh tags: better-pragma-optimize) | |
13:06 | Change the 0x20000 bit (use analysis limit) to 0x10, meaning that this feature is on by default. The default analysis limit is changed to 2000 which is almost always sufficient for accurate analysis results. (check-in: 4abd47b591 user: drh tags: better-pragma-optimize) | |
12:20 | Extend the strerror_r() result type discrepancy check in os_unix.c to include the Android NDK, as reported in forum post 3f13857fa4062301. The NDK's strerror_r() signature is version-dependent, whereas this change assumes int return (POSIX semantic) across all versions. (check-in: f18b2524da user: stephan tags: trunk) | |
2024-02-18
| ||
01:12 | Hold a transaction during PRAGMA optimize, for performance. (check-in: d13b79eae6 user: drh tags: better-pragma-optimize) | |
2024-02-17
| ||
20:55 | Add start of extension for incremental integrity-checks to ext/intck/. (check-in: 444e3c9210 user: dan tags: incr-integrity-check) | |
16:39 | Add new MASK bits to PRAGMA optimize: 0x70000. (check-in: dd44970625 user: drh tags: better-pragma-optimize) | |
03:36 | Fix rounding in zero-precision %f and %g printf conversions. (check-in: 1ebea57ff2 user: drh tags: branch-3.45) | |
03:32 | Fix rounding in zero-precision %f and %g printf conversions. Forum post 393708f4a8. This bug was introduced by check-in [32befb224b254639] and first appeared in version 3.43.0. (check-in: 7fca1bc482 user: drh tags: trunk) | |
01:12 | The PRAGMA optimize command invokes ANALYZE if a table shrinks by 25 times in addition to if it grows by 25 times. (check-in: 40532ffba9 user: drh tags: better-pragma-optimize) | |
2024-02-16
| ||
21:34 | Fix the subtype on the value column from json_each/json_tree for cases when the value is an array or object. (check-in: b278ae3980 user: drh tags: branch-3.45) | |
21:30 | Fix the subtype on the value column from json_each/json_tree for cases when the value is an array or object. Fix for the bug reported by forum post ecb94cd210. (check-in: 1c33c5db2e user: drh tags: trunk) | |
18:34 | Retweak last check-in to retain compile-time checking of xprintf() arguments. (check-in: 670174916c user: larrybr tags: trunk) | |
16:04 | Work around a __VA_ARGS__ complaint in fiddle builds. (check-in: 7d750248c5 user: stephan tags: trunk) | |
12:57 | Rename the TF_StatsUsed flag to TF_MaybeReanalyze, to more accurately reflect its usage. No logic changes. (check-in: b4790da5e0 user: drh tags: trunk) | |
11:41 | Handle an OOM case in fts5 code to query tokendata=1 tables. (check-in: 01222d96b9 user: dan tags: trunk) | |
11:05 | Fix a problem with the sqlite3_log() message identifying the table or index that a conflicting page belongs to. (check-in: 11a4178f0e user: dan tags: bedrock) | |
11:03 | Fix a problem with the sqlite3_log() message identifying the table or index that a conflicting page belongs to. (check-in: d6c629f165 user: dan tags: begin-concurrent) | |
2024-02-13
| ||
18:44 | Fix a bug in PRAGMA integrity_check introduced by enhancement (8a) in release 3.42.0. (check-in: 60dccb23b1 user: drh tags: branch-3.45) | |
18:41 | Fix a bug in PRAGMA integrity_check introduced by enhancement (8a) in release 3.42.0 and first reported by forum post ee4f6fa5ab. (check-in: 460353dfff user: drh tags: trunk) | |
17:11 | Changes to vtabCallConstructor() to avoid a harmless static analyzer warning and to help prove that the UAF reported by forum post cafbe582e8 is a false-positive. (check-in: 4892440b93 user: drh tags: trunk) | |
2024-02-12
| ||
19:12 | Replace the assert() that was removed by [f023cb541b5dd72c] because [1cd5d4623f44af25] made it true again. (check-in: 189a49f165 user: drh tags: trunk) | |
17:01 | Have rtree avoid keeping a blob handle open following an error. (check-in: 26978f34bd user: drh tags: branch-3.45) | |
16:12 | Have rtree avoid keeping a blob handle open following an error. (check-in: 1cd5d4623f user: dan tags: trunk) | |
14:44 | Add a new sqlite3FaultSim() to btree for better fault analysis. (check-in: 2c675bd305 user: drh tags: trunk) | |
13:51 | Add a new sqlite3FaultSim() call in the btree logic, for testing. (Closed-Leaf check-in: e0558f79b8 user: drh tags: new-btree-faultsim) | |
13:28 | Add support for the ".testctrl fault_install" dot-command in the CLI when launched with the --unsafe-testing option. (check-in: 5ba7fee1a9 user: drh tags: trunk) | |
2024-02-11
| ||
23:25 | Cherrypick multiple fixes for trifling faults from trunk, so that all 834 dbsqlfuzz run clean with ASAN on branch-3.45. dbsqlfuzz. (check-in: c080560c2d user: drh tags: branch-3.45) | |
22:56 | In the RTREE extension, allow the xBeginTransaction() entry point to be invoked multiple times without intervening calls to xEndTransaction(). (check-in: f023cb541b user: drh tags: trunk) | |
20:53 | If a term of an ORDER BY or GROUP BY contains an aggregate function or column, then it is not an alias that needs to be resolved, so don't try to. This fixes a harmless assertion found by dbsqlfuzz. This yet another problem that orginated at check-in [6e6b3729e0549de0]. (check-in: d4ec2a5d22 user: drh tags: trunk) | |
18:53 | Improved AggInfo tracing in debug builds. No changes to deliverable code. (check-in: bb31f9c447 user: drh tags: trunk) | |
2024-02-10
| ||
03:12 | Further clarify sqlite3_exec() callback parameter lifetime. (check-in: 044ce823a4 user: larrybr tags: branch-3.45) | |
03:11 | Further clarify sqlite3_exec() callback parameter lifetime. (check-in: 993a1a8431 user: larrybr tags: trunk) | |
2024-02-08
| ||
01:23 | Mention limited lifetime of string arrays passed to sqlite3_exec() callback. (check-in: d14a9d81a5 user: larrybr tags: branch-3.45) | |
01:19 | Mention limited lifetime of string arrays passed to sqlite3_exec() callback. (check-in: 717f67f318 user: larrybr tags: trunk) | |
2024-02-07
| ||
20:45 | Fix an #endif (added in the wrong place by [8f4b1ceafe4a271b]) so that the build works with SQLITE_OMIT_VIRTUAL_TABLE. (check-in: 7070924eeb user: drh tags: trunk) | |
19:52 | Bring test cases into alignment with the latest enhancements. (check-in: cd017c28d5 user: drh tags: trunk) | |
19:17 | Turns out the branch is reachable, so back out the NEVER(). (check-in: 0af36a3223 user: drh tags: trunk) | |
19:09 | Checked into the wrong branch. (Closed-Leaf check-in: 81bd7aee09 user: drh tags: mistake) | |
14:16 | Detect and respond to an OOM on the jsonStringTerminate() call of jsonReturnStringAsBlob() routine. (check-in: 77431aca6e user: drh tags: branch-3.45) | |
14:05 | Detect and respond to an OOM on the jsonStringTerminate() call of jsonReturnStringAsBlob() routine. (check-in: 881f814c09 user: drh tags: trunk) | |
2024-02-06
| ||
18:33 | Slight change to OOM handling in JSON to catch a corner case found by dbsqlfuzz. (check-in: 6a2b3266c5 user: drh tags: trunk) | |
13:36 | Return SQLITE_ABORT if the underlying shadow tables change in the middle of an rtree query in such a way as to invalidate an rtree internal priority queue entry. This replaces the SQLITE_ABORT_ROLLBACK mechanism added in [97cffff331b]. (check-in: 061af0d74a user: drh tags: branch-3.45) | |
08:59 | Correct docs about the first OFPS VFS's importDb() method being synchronous (it's not, whereas the second VFS's importDb() is). (check-in: ae7505fa5e user: stephan tags: trunk) | |
08:25 | Make explicit that using the importDb() methods of the OPFS VFSes has undefined results if the being-imported db is currently open. Doc changes only. (check-in: f28b9924b4 user: stephan tags: trunk) | |
2024-02-05
| ||
17:54 | Return SQLITE_ABORT if the underlying shadow tables change in the middle of an rtree query in such a way as to invalidate an rtree internal priority queue entry. This replaces the SQLITE_ABORT_ROLLBACK mechanism added in [af5c4251]. (check-in: 32f85a5ce8 user: dan tags: trunk) | |
17:35 | Return SQLITE_ABORT if the underlying shadow tables change in the middle of an rtree query in such a way as to invalidate an rtree internal priority queue entry. (Closed-Leaf check-in: 478280ef67 user: dan tags: rtree-fix) | |
03:56 | Extend [d294a23ed6d] to apply to all wasm speedtest1 builds. (check-in: 26f848e5e0 user: stephan tags: trunk) | |
03:37 | wasm: pass the promiser function to the promiser onready() callback to simplify access to it in certain usage patterns. (check-in: f8a8b9ee2e user: stephan tags: trunk) | |
02:36 | wasm: squelch a new (and, in our case, invalid) warning from emcc 3.1.52. (check-in: d294a23ed6 user: stephan tags: trunk) | |
2024-02-04
| ||
04:18 | Fix a minor test file locking issue on Windows. (check-in: 6cd70b71df user: mistachkin tags: trunk) | |
04:01 | Fix harmless compiler warnings seen with MSVC. (check-in: e52c87420b user: mistachkin tags: trunk) | |
2024-02-03
| ||
19:41 | Following a ROLLBACK that reverts changes to an RTREE, any pending queries against that same RTREE abort with code SQLITE_ABORT_ROLLBACK. (check-in: 97cffff331 user: drh tags: branch-3.45) | |
19:19 | Following a ROLLBACK that reverts changes to an RTREE, any pending queries against that same RTREE abort with code SQLITE_ABORT_ROLLBACK. dbsqlfuzz de7d17b72d0e842352c998dd86a47b7d0f707be9. (check-in: af5c425114 user: drh tags: trunk) | |
2024-02-02
| ||
18:42 | More extensive use of SQLITE_CORRUPT_PGNO. (check-in: 3838332cff user: drh tags: trunk) | |
16:51 | Have "PRAGMA quick_check" compare the number of entries in tables and indexes. (Closed-Leaf check-in: cc294c041b user: dan tags: quick-check-counts) | |
11:37 | Fix typo in vdbe.c comment. No changes to code. (check-in: 62010ba488 user: dan tags: trunk) | |
2024-02-01
| ||
15:42 | Ensure the fts5 xIntegrity method correctly returns error codes unrelated to corruption or missing SQL elements. (check-in: d18d9a05c2 user: dan tags: trunk) | |
15:21 | Ensure the fts3 xIntegrity method correctly returns error codes unrelated to corruption or missing SQL elements. (check-in: 1bdb8cbaf7 user: dan tags: trunk) | |
14:57 | In PRAGMA integrity_check, defer running xIntegrity on virtual tables until after all ordinary tables have been checked. (check-in: 8f4b1ceafe user: drh tags: trunk) | |
14:17 | Add tracing logic to the shared-cache locks in btree.c. The tracing is off by default. Enable by changing a single "#if 0" into "#if 1" and recompiling. Debugging code only - no changes to release builds. (check-in: f2b943f97a user: drh tags: trunk) | |
11:38 | Add the test_oom_breakpoint() routine on debug builds, to serve as a convenient breakpoint to intercept OOM conditions. (check-in: e45df7dcd6 user: drh tags: trunk) | |
2024-01-31
| ||
20:11 | Replace an conditional assignment that was made obsolete by [d4c193f0b49f4950] with an assert(). The conditional was added by [d6fd512f50513ab7] as a fix for tickets [c36cdb4afd504dc1], [4051a7f931d9ba24], and [d6fd512f50513ab7] which means now [d4c193f0b49f4950] is the correct fix for those tickets. that check-in (check-in: 44b5524d52 user: drh tags: trunk) | |
15:29 | Allow control characters in JSON5 string literals. Forum thread 05182119f69c3a92. (check-in: 380f09c194 user: drh tags: trunk) | |
15:20 | Add NEVER() and ALWAYS() macros for the JSON5-control-character change. Also fix an incorrect comparison used to determine if a buffer needed to be resized. (Closed-Leaf check-in: e3c0c0e686 user: drh tags: json5-ctrl-char) | |
14:44 | Fix failure to detect unterminated string literals in json_valid() in the previous check-in. (check-in: 5d72564462 user: drh tags: json5-ctrl-char) | |
13:46 | Allow control characters in JSON5 string literals. (check-in: 34709c7cc9 user: drh tags: json5-ctrl-char) | |
12:15 | Fix a memory allocation bug in the (debug-use-only) json_parse() SQL function. (check-in: 32ce7dacf5 user: drh tags: trunk) | |
2024-01-30
| ||
17:02 | Merge the 3.45.1 patches into the reuse-schema branch. (check-in: f98a99fce5 user: drh tags: reuse-schema-3.45) | |
16:56 | Merge the 3.45.1 patch release changes into the bedrock branch. (check-in: 5955853a86 user: drh tags: bedrock-3.45) | |
16:53 | Merge the changes from the 3.45.1 patch release into the wal2 branch. (check-in: 5e980265c8 user: drh tags: wal2-3.45) | |
16:50 | Merge the 3.45.1 patch release into the begin-concurrent branch. (check-in: d1f20a47f7 user: drh tags: begin-concurrent-3.45) | |
16:01 | Version 3.45.1 (check-in: e876e51a0e user: drh tags: release, version-3.45.1, branch-3.45) | |
2024-01-29
| ||
21:29 | Detect malformed nested JSONB earlier and stop rendering to avoid long delays. (check-in: ab40e28246 user: drh tags: branch-3.45) | |
21:09 | Detect malformed nested JSONB earlier and stop rendering to avoid long delays. (check-in: 72f3e1d0ec user: drh tags: trunk) | |
20:36 | When generated text JSON from JSONB, do not continue descending into nested structures after an error is seen. This avoids long loops and wait times. (check-in: 97666ec052 user: drh tags: trunk) | |
19:30 | Consider an index for queries like "SELECT count(DISTINCT col) FROM ...", even if the index records are not smaller than the table records. (check-in: ad06868807 user: dan tags: trunk) | |
16:49 | Avoid a potential buffer overread when handling corrupt json blobs. (check-in: ac402cc551 user: drh tags: branch-3.45) | |
15:30 | Avoid a potential buffer overread when handling corrupt json blobs. (check-in: 738473dc0a user: dan tags: trunk) | |
12:58 | When rendering JSONB back into text JSON, report an error if a zero-length integer or floating-point node is encountered. Otherwise, if the node occurs at the very end of the JSONB, the rendering logic might read one byte past the end of the initialized part of the BLOB byte array. OSSFuzz 66284. (check-in: 3ab08ac75d user: drh tags: branch-3.45) | |
12:50 | When rendering JSONB back into text JSON, report an error if a zero-length integer or floating-point node is encountered. Otherwise, if the node occurs at the very end of the JSONB, the rendering logic might read one byte past the end of the initialized part of the BLOB byte array. OSSFuzz 66284. (check-in: b0eb279ea8 user: drh tags: trunk) | |
2024-01-28
| ||
20:42 | Use __ppc__ instead of __POWERPC__ to identify 32-bit PowerPC processors. Forum post 34794846ce. (check-in: c974d9313b user: drh tags: trunk) | |
17:44 | Automatically disable the DISTINCT optimization during query planning if the ORDER BY clause exceeds 63 terms. (check-in: 6edbdcc02d user: drh tags: branch-3.45) | |
17:39 | Automatically disable the DISTINCT optimization during query planning if the ORDER BY clause exceeds 63 terms. dbsqlfuzz afd1d61fc27d14938a0d78a50970fa1e9fbfee58. (check-in: d4c193f0b4 user: drh tags: trunk) | |
00:35 | Apply the same fix found in [99057383acc8f920] to descending scans. (check-in: 593d6a1c2e user: drh tags: branch-3.45) | |
00:31 | Apply the same fix found in [99057383acc8f920] to descending scans. dbsqlfuzz afd1d61fc27d14938a0d78a50970fa1e9fbfee5. (check-in: e1d463c2d6 user: drh tags: trunk) | |
2024-01-27
| ||
20:17 | Improvements to parser stack overflow testing. Forum post 99e181b5bf. (check-in: 556c43a937 user: drh tags: trunk) | |
12:47 | Performance enhancements to the parser template. (check-in: 2db8b30acd user: drh tags: trunk) | |
12:25 | Use an alternative memory allocator for parser stack space that includes a call to sqlite3FaultSim() to facilitate testing. (check-in: 7c36d560ff user: drh tags: trunk) | |
11:35 | Allocate new parser stack space from the heap if needed, eliminating the possibility of a "parser stack overflow" error as long as heap memory is available. (check-in: d87a205477 user: drh tags: trunk) | |
02:21 | Optimizations to ParseFinalize() to make up for the extra cleanup associated with the allocated parser stack. This branch now runs faster than trunk and is less than 300 bytes larger. (Closed-Leaf check-in: f7290db63c user: drh tags: growable-parser-stack) | |
01:35 | Omit the "parser stack overflow" error message, since it no longer occurs. Replace it with an ordinary "out of memory". (check-in: 33f17ec248 user: drh tags: growable-parser-stack) | |
2024-01-26
| ||
20:57 | Bug fixes in the function that expands the parser stack. (check-in: e91179fe84 user: drh tags: growable-parser-stack) | |
20:34 | Experimental changes that prevent parser stack overflows by growing the parser stack with heap memory when it reaches its limit. (check-in: 3fd062905f user: drh tags: growable-parser-stack) | |
2024-01-24
| ||
21:08 | Add NEVER() to a branch that is no longer reachable. (check-in: 9411337a7b user: drh tags: trunk) | |
19:54 | Update ext/wasm/SQLTester for recent internal-API reorgs. (check-in: 996cfdf9b5 user: stephan tags: trunk) | |
2024-01-23
| ||
21:10 | Slight adjustment to test results for Windows in mmap1.test due to the previous check-in. (check-in: a8043eaed8 user: drh tags: branch-3.45) | |
21:10 | Slight adjustment to test results for Windows in mmap1.test due to the previous check-in. (check-in: 5cf9ea9b1f user: drh tags: trunk) | |
16:21 | In os_unix.c and os_win.c, do not allow xFetch() to return a pointer to a page buffer that is right at the end of the mapped region - if the database is corrupted in a specific way such a page buffer might be overread by several bytes. (check-in: 198a1daae0 user: drh tags: branch-3.44) | |
16:17 | In os_unix.c and os_win.c, do not allow xFetch() to return a pointer to a page buffer that is right at the end of the mapped region - if the database is corrupted in a specific way such a page buffer might be overread by several bytes. (check-in: d131cab652 user: drh tags: branch-3.45) | |
16:09 | In os_unix.c and os_win.c, do not allow xFetch() to return a pointer to a page buffer that is right at the end of the mapped region - if the database is corrupted in a specific way such a page buffer might be overread by several bytes. (check-in: 2684feac3b user: dan tags: trunk) | |
15:04 | Fix harmless "unused parameter" compiler warning in the new fts3IntegrityMethod implementation. (check-in: 9d459f6b50 user: drh tags: branch-3.45) | |
14:45 | Improved error message when a double-quoted identifier name cannot be resolved - ask the user if they intended to use a string literal. (check-in: efc5c3c5e6 user: drh tags: trunk) | |
13:58 | Bump the version number to 3.45.1 (check-in: 54d34edb89 user: drh tags: branch-3.45) | |
13:53 | When a JSON input is a blob, but it looks like valid JSON when cast to text, then accept it as valid JSON. This replicates a long-standing bug in the behavior of JSON routines, and thus avoids breaking legacy apps. (check-in: 4c2c1b97dc user: drh tags: branch-3.45) | |
13:51 | When a JSON input is a blob, but it looks like valid JSON when cast to text, then accept it as valid JSON. This replicates a long-standing bug in the behavior of JSON routines, and thus avoids breaking legacy apps. Forum thread 012136abd5292b8d. (check-in: e5dc81d5c7 user: drh tags: trunk) | |
13:28 | Fix typo in the tag-20240123-a in a comment. (Closed-Leaf check-in: 1f09541eb4 user: drh tags: blob-as-json) | |
13:21 | If a BLOB looks like JSON when cast to text, then treat it as if it really were JSON. This replicates a long-standing bug in the JSON processing routines, and thereby avoids breaking legacy. (check-in: d79a37690c user: drh tags: blob-as-json) | |
12:51 | Change the shell's --help flag to exit with code 0 instead of 1, per /forum and /chat discussions. (check-in: df563a1857 user: stephan tags: trunk) | |
11:20 | Add extra checks for the validity of a numeric literal to sqlite3DequoteNumber(). (Closed-Leaf check-in: d57407ef59 user: dan tags: digit-separators) | |
10:47 | Ensure that the xIntegrity methods of fts3 and fts5 work on read-only databases. (check-in: e79b97369f user: dan tags: branch-3.45) | |
2024-01-22
| ||
20:49 | Simplification of the error reporting logic. (Closed-Leaf check-in: 59eb9d29e7 user: drh tags: blob-as-json, improved-dqs-error-msg) | |
19:42 | Fix a problem in the previous commit with hex literals that start with "0X" instead of "0x". (check-in: c063c89b11 user: dan tags: digit-separators) | |
19:38 | Allow underscores to occur in hex literals. (check-in: 81a5622946 user: dan tags: digit-separators) | |
19:00 | Add extra tests for the code on this branch. (check-in: b15bbb201a user: dan tags: digit-separators) | |
17:18 | Do not allow digit separators that are not surrounded on both sides by digits. (check-in: 5bbc378a30 user: drh tags: digit-separators) | |
15:26 | Improved error message when a double-quoted string is used and it seems likely that the user wanted a single-quoted string literal. (check-in: 0a834bd811 user: drh tags: blob-as-json, improved-dqs-error-msg) | |
14:16 | The -DSQLITE_JSON_BLOB_INPUT_BUG_COMPATIBLE compile-time option causes blob inputs to JSON functions that are not JSONB to be processed as if they where text, immulating historical bugging behavior which some applications have come to rely upon. See forum thread 012136abd5292b8d for discussion. (check-in: 6557222358 user: drh tags: blob-as-json) | |
14:01 | Fix test script literal.test so that it works with SQLITE_OMIT_ALTER_TABLE builds. (check-in: 4dc00f5776 user: dan tags: trunk) | |
12:56 | Fix userauth so that it works together with SQLITE_OMIT_SHARED_CACHE. (Forum post 0bfc5888a384d430). However, also change to code to issue a deprecation warning whenever SQLITE_USER_AUTHENTICATION is used. (check-in: 249048b0cb user: drh tags: trunk) | |
12:30 | Add a notice to the user-authentication documentation to say that the extension is deprecated and may disappear in the future. (check-in: fe6fc7b91a user: drh tags: trunk) | |
11:12 | Fix test script literal.test so that it works with SQLITE_OMIT_ALTER_TABLE builds. (check-in: b57327be4b user: dan tags: digit-separators) | |
01:11 | Make CLI .dump immune to pragma reverse_unordered_selects, as reported in Forum thread c42be01880e961eb. (check-in: 488caed244 user: larrybr tags: trunk) | |
2024-01-21
| ||
21:20 | Fix a harmless typo in a comment. (check-in: 382a8f94bf user: drh tags: trunk) | |
2024-01-20
| ||
18:45 | Merge trunk changes into this branch. (check-in: 03ade4a810 user: dan tags: digit-separators) | |
18:41 | Ensure that values generated by DEFAULT clauses that specify real numbers that can be expressed as 64-bit integers (e.g. -1234.0) are not silently converted to integers. (check-in: 298d697728 user: dan tags: trunk) | |
18:26 | Simplifications to the strftime() logic. (check-in: aaa5a044d8 user: drh tags: trunk) | |
18:21 | Fix a memory leak in new memdb1.test test cases that were added by [e638d5e408ea2e18]. No changes to SQLite itself. (check-in: bb2b7a658e user: drh tags: trunk) | |
16:46 | Add test cases for the new code on this branch. (check-in: 49f29a7b4f user: dan tags: digit-separators) | |
16:38 | Make sure that %V and %G are testing for every since day in between 1970-01-01 and 2023-01-19. (check-in: 39c475f5fb user: drh tags: trunk) | |
16:29 | Rig sqlite3_serialize() so that it will initialize a previously uninitialized database prior to serializing it, so that it does not have a zero-byte size and does not return NULL (except for OOM). Forum thread 498777780e16880a. (check-in: e638d5e408 user: drh tags: trunk) | |
16:18 | Allow "_" characters to appear following any digit in an integer or real SQL literal. (check-in: 401650aacc user: dan tags: digit-separators) | |
15:13 | When doing a text-affinity comparison between two values where one or both have both a text and a numeric type, make sure the numeric type does not confuse the answer. This is a deeper fix to the problem observed by forum pose 3776b48e71. The problem bisects to [25f2246be404f38b] on 2014-08-24, prior to version 3.8.7. (check-in: 709841f88c user: drh tags: trunk) | |
13:18 | Ensure that the replace() SQL function always returns a TEXT value even when its first argument is numeric and its second argument is an empty string. Fix for the issue reported by forum post 3776b48e71. (check-in: 01868ebcd2 user: drh tags: trunk) | |
12:19 | When backing out a character in a constructed string in JSON, first make sure the string has not been reset by on OOM. (check-in: 950bf9fe78 user: drh tags: branch-3.45) | |
12:13 | When backing out a character in a constructed string in JSON, first make sure the string has not been reset by on OOM. dbsqlfuzz 2fffbea91a5376526ea118d4fe4188c8dd35e317. (check-in: 666690eb43 user: drh tags: trunk) | |
12:00 | Fix the version number in the TEA configure script. This should have been changed by [1481baf3d55effcc] three check-ins ago. It is unclear how testing missed this. (check-in: eaf2cf73fc user: drh tags: trunk) | |
00:31 | Implement a new algorithm for computing ISO week values in strftime() based on the idea (from Nuno Cruces) of shifting the date being tested to the Thursday of the same week. (check-in: b06ab46a9e user: drh tags: trunk) | |
2024-01-19
| ||
16:51 | Allow large hexadecimal literals to be used as DEFAULT values. (check-in: 8cccc1f27d user: dan tags: trunk) | |
2024-01-18
| ||
16:52 | Increase the version number to 3.46.0 to begin the next development cycle. (check-in: 1481baf3d5 user: drh tags: trunk) | |
16:50 | Add support in the strftime() SQL function for conversion letters %G, %g, %U, and %V. (check-in: e1155d6aa4 user: drh tags: trunk) | |
2024-01-16
| ||
16:14 | Fix harmless "unused parameter" compiler warning in the new fts3IntegrityMethod implementation. (check-in: bb1fe53a97 user: drh tags: trunk) | |
16:05 | Ensure that the xIntegrity methods of fts3 and fts5 work on read-only databases. (check-in: b855886c4c user: dan tags: trunk) | |
15:04 | Clutter the code with "fall-through" comments in order to suppress nuisance compiler warnings. No logic changes. (check-in: 05d2cf5e90 user: drh tags: trunk) | |
14:54 | Remove the LLONG_MAX preprocessor macro from the series.c extension as it is apparently only C99 and later. Forum post 4af649419b. (check-in: f106bc0d21 user: drh tags: trunk) | |
14:28 | wasm build: reformulate an awk invocation to account for awks which do not support the -e flag. Problem reported on the forum via a docker-hosted build. (check-in: 90dd51153f user: stephan tags: branch-3.45) | |
14:24 | Various build- and code-reorg cleanups for ext/wasm. No functional changes. (check-in: 835bd4a11e user: stephan tags: trunk) | |
2024-01-15
| ||
17:01 | Version 3.45.0 (check-in: 1066602b2b user: drh tags: trunk, release, version-3.45.0) | |
2024-01-13
| ||
20:38 | Merge latest trunk changes into this branch. (check-in: bb9a715748 user: dan tags: reuse-schema) | |
20:36 | Merge latest wal2 changes into this branch. (check-in: c39f658522 user: dan tags: bedrock) | |
20:21 | Merge latest trunk changes into this branch. (check-in: 68c2b8d0eb user: dan tags: wal2) | |
19:57 | Merge latest trunk changes into this branch. (check-in: 95bf4bc2e2 user: dan tags: begin-concurrent) | |
2024-01-12
| ||
16:33 | Fix a usan complaint about signed integer overflow. (Leaf check-in: 16aa729774 user: drh tags: branch-3.43) | |
15:38 | Fix a signed integer overflow usan complaint in fts5. This is fixed on trunk by [a76a636b23], but that is a large commit that adds new features. (check-in: 4b2d02f260 user: dan tags: branch-3.43) | |
11:44 | Have the shell tool automatically enable SQLITE_CONFIG_DQS_DDL when executing a ".dump" script against an empty db. (check-in: f47a5f4e0c user: dan tags: trunk) | |
2024-01-11
| ||
16:10 | wasm build: reformulate an awk invocation to account for awks which do not support the -e flag. Problem reported on the forum via a docker-hosted build. (Closed-Leaf check-in: 5836657929 user: stephan tags: wasm-post-3.45) | |
14:21 | Internal JS doc cleanups. (check-in: c8284170f6 user: stephan tags: wasm-post-3.45) | |
14:13 | Fix a comment in sessions. No functional changes. Forum post 8c20dc935b. (check-in: b0eb6d3628 user: drh tags: trunk) | |
14:03 | In fts5, flush the contents of the in-memory hash table whenever the secure-delete option is toggled. This prevents spurious corruption reports under some circumstances. (check-in: ccf552319a user: dan tags: trunk) | |
12:56 | Remove some dead JS code. Minor doc cleanups. (check-in: bf23cf2049 user: stephan tags: wasm-post-3.45) | |
12:31 | Split the JS vfs/vtab helper code into discreet units as a step towards a build which optionally elides those pieces. This is an internal restructuring change and does not affect the API. (check-in: ede945fd23 user: stephan tags: wasm-post-3.45) | |
2024-01-10
| ||
20:13 | Fix a few compiler gripes. Update 2024-04-16: Closed, since the solution to Windows console I/O already on trunk is better. Update 2024-08-26: Reopened, since people inside of Microsoft want this. (check-in: 2e74a938f7 user: larrybr tags: win-dupe-crt-fio) | |
05:52 | For CLI shell and other utilities, optionally avoid C runtime file I/O on Windows in favor of WIN32 calls, while nominally preserving FILE* API interfaces. (a WIP, awaiting build and testing) (check-in: 6be68be179 user: larrybr tags: win-dupe-crt-fio) | |
2024-01-09
| ||
23:15 | Put an SQLITE_ENABLE_SETLK_TIMEOUT branch inside the appropriate ifdef with an assert on the else since the condition is always false if SETLK_TIMEOUT is not available. (check-in: d81e7a036a user: drh tags: trunk) | |
12:28 | Improved resolution of unqualified names in the REINDEX command. Forum thread 74cd0ceabd. (check-in: 97709ce2a1 user: drh tags: trunk) | |
2024-01-08
| ||
19:55 | Automatically turn off DEFENSIVE mode in the shell tool when executing scripts generated by the ".dump" command against an empty database. Add a warning to the top of generated ".dump" scripts that populate virtual tables. (check-in: cd016f26bb user: dan tags: trunk) | |
18:53 | Fix date on new file shell9.test. (Closed-Leaf check-in: c82da71211 user: dan tags: shell-dump-fix) | |
18:46 | Automatically turn off DEFENSIVE mode in the shell tool when executing scripts generated by the ".dump" command against an empty database. Add a warning to the top of generated ".dump" scripts that populate virtual tables. (check-in: 6e9e96b7e7 user: dan tags: shell-dump-fix) | |
15:23 | Minor change to os_unix.c to facilitate 100% MC/DC testing. (check-in: 0dfa7b4da1 user: drh tags: trunk) | |
13:38 | Ensure that SQLITE_PROTOCOL is not returned too early when a SQLITE_ENABLE_SETLK_TIMEOUT build fails to open a transaction on a wal mode database in cases where blocking locks are not being used. (check-in: a8e9af1356 user: dan tags: trunk) | |
07:52 | Make explicit which JS APIs are for internal use only by moving the JS-bound internal-use-only functions out of client-visible reach and renaming the WASM-exported ones from sqlite3_wasm... to sqlite3__wasm... (with two underscores). These have always been documented as internal-use-only, so this is not a breaking change except for clients which have ignored the docs. (check-in: 0eddc20f37 user: stephan tags: wasm-post-3.45) | |
2024-01-07
| ||
20:27 | Remove an ALWAYS() from RTREE. Dbsqlfuzz found a way to make it false. (check-in: 40f0a29e6d user: drh tags: trunk) | |
00:45 | Updates to RTREE to facility testing. (check-in: 7a5b42ff74 user: drh tags: trunk) | |
2024-01-06
| ||
19:16 | Ensure that SQLITE_PROTOCOL is not returned too early when a SQLITE_ENABLE_SETLK_TIMEOUT build fails to open a transaction on a wal mode database in cases where blocking locks are not being used. (Closed-Leaf check-in: b934a33671 user: dan tags: enable-setlk-fix) | |
15:22 | Update JSON performance testing procedures for clarity and to describe how to do performance testing of JSONB. (check-in: b115b4f75b user: drh tags: trunk) | |
13:58 | Update extension ext/misc/totext.c to avoid both ubsan warnings and dubious real->integer conversions. (check-in: 541436004d user: dan tags: trunk) | |
2024-01-05
| ||
15:53 | Update extension ext/misc/totext.c to avoid both ubsan warnings and dubious real->integer conversions. (Closed-Leaf check-in: c626aa108a user: dan tags: totype-fix) | |
2024-01-04
| ||
17:33 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: e07f2451e8 user: drh tags: reuse-schema) | |
17:13 | Avoid errors with SQLITE_OMIT_VIRTUALTABLE builds in json106.test and unionall.test. (check-in: 8940e2a105 user: drh tags: trunk) | |
16:28 | Merge the latest trunk enhancements into the bedrock branch. (check-in: 707f79c70c user: drh tags: bedrock) | |
16:16 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 8fb42df89a user: drh tags: wal2) | |
16:15 | Testing code left in by accident. (Closed-Leaf check-in: 90e8a23354 user: dan tags: mistake) | |
15:49 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: c407d3bb99 user: drh tags: begin-concurrent) | |
13:01 | Restructure some code to fix what appears to be a false-positive UBSAN warning. (check-in: fe952c1290 user: drh tags: trunk) | |
2024-01-03
| ||
20:40 | Fix a #ifdef in sqlite3_test_control() that was preventing builds with SQLITE_OMIT_WSD. (check-in: d546a9c94c user: drh tags: trunk) | |
16:41 | Convert the JSON functions to use lookaside memory allocation whenever feasible, to avoid hitting the global memory allocator mutex. (check-in: a79a244954 user: drh tags: trunk) | |
15:49 | Change a constant from decimal to hex to avoid a compiler warning on Mac. (check-in: e3acb8a43a user: drh tags: trunk) | |
14:13 | Enhance sqlite3_analyzer.exe so that it uses the ext/consio extension. (check-in: 769de0b98e user: drh tags: trunk) | |
12:26 | Update the sqldiff.exe utility program so that it uses the sqlite3_str string interface, and so that it does console output using the ext/consio extension. (check-in: 4443b7e592 user: drh tags: trunk) | |
2024-01-02
| ||
22:49 | Back out [b517a52fa36df0a0] which is no longer reachable due to early error detection enhancements in [166e82dd20efbfd3]. (check-in: 704943e96f user: drh tags: trunk) | |
21:37 | Adjust the sqlite3PagerDirectReadOk() routine (part of the SQLITE_DIRECT_OVERFLOW_READ optimization) to use less code and to be more easily testable. (check-in: eed670ea2a user: drh tags: trunk) | |
21:08 | Fix a problem in fts5 caused by a COMMIT involving fts5 data that immediately follows a ROLLBACK TO that does not. (check-in: 55c61f6a8d user: dan tags: trunk) | |
20:34 | Increase the default "max_page_count" to its theoretical maximum of 4294967294. (check-in: ffb35f1784 user: drh tags: trunk) | |
09:20 | Elaborate on the various build flavors used by ext/wasm/. Doc changes only. (check-in: d489232aa4 user: stephan tags: trunk) | |
09:03 | Update and clean up the in-makefile docs for ext/wasm. (check-in: 7a7b295e6d user: stephan tags: trunk) | |
2024-01-01
| ||
23:28 | Back out [99d11e6d0ae6] (enabling of STAT4 in WASM/JNI), per /chat discussion. (check-in: cd7929ee2e user: stephan tags: trunk) | |
19:20 | New logic to avoid using indexes that ANALYZE has identified as of little practical use. Also a performance optimization in ANALYZE. (check-in: bcac937526 user: drh tags: trunk) | |
17:58 | Remove some unnecessary computations from ANALYZE so that ANALYZE runs with fewer CPU cycles. These changes were spotted while working on the nearby enhanced-stat1 branch. So even if enhanced-stat1 is abandoned, that effort put into it will not have been in vain. (Closed-Leaf check-in: 5527e8c4ab user: drh tags: avoid-low-quality-indexes) | |
17:48 | Extra steps taken to avoid using low-quality indexes in a query plan. This branch accomplishes the same end as the nearby enhanced-stat1 branch, but with much less change and hence less risk. (check-in: c030e64626 user: drh tags: avoid-low-quality-indexes) | |
15:49 | Improved defenses against deliberately corrupted sqlite_stat1 tables. (Closed-Leaf check-in: ee34db31a0 user: drh tags: enhanced-stat1) | |
15:35 | Fix a harmless compiler warning. (check-in: b5aa1aea38 user: drh tags: enhanced-stat1) | |
14:13 | Omit the uneven=N argument in sqlite_stat1 and replace it with var=N1,N2,... so that the variation in each column is reported separately. Omit the "slow" argument from sqlite_stat1, computing that flag internally. PRAGMA stats is enhanced with a new column "est" that shows the aiRowLogEst array for each index after it has been modified by "var=..." and also the "slow" flag. (check-in: 4a8fc17365 user: drh tags: enhanced-stat1) | |
06:58 | JNI: move the ByteBuffer-using APIs from public to package visibility for the time being because they have UB-inducing possibilities which need to be worked out. Update test code to account for a change in custom FTS5 columntext() impls. (check-in: dc501275fc user: stephan tags: trunk) | |
05:58 | WASM: various build cleanups and add initial infrastructure for a build which elides the oo1 API and its dependents (worker1 and promiser). Sidebar: an attempt was made to move generation of the build rules to an external script, but the mixed-mode make/script was even less legible than the $(eval) indirection going on in the makefile. (check-in: 563d313163 user: stephan tags: trunk) | |
2023-12-31
| ||
20:04 | Better comments. Slight tuning of parameters. (check-in: 1cc32eccda user: drh tags: enhanced-stat1) | |
12:38 | Ensure that all elements of aiRowLogEst[] have been initialized even if the stat entry is truncated. (check-in: c216921b11 user: drh tags: enhanced-stat1) | |
04:01 | Use SQLITE_ENABLE_STAT4 in both the WASM and JNI builds. (check-in: 99d11e6d0a user: stephan tags: trunk) | |
2023-12-30
| ||
22:00 | In sqlite_stat1, revert the number of rows to the average, not adjusted for the maximum. Instead add "uneven=NNN" where NNN is a multiplier to apply to the average to get the maximum. "uneven" is only reported if NNN is 10 or more. Also add the "slow" argument is the maximum number of rows reported by a full equality match is so large that a table scan seems likely to be faster. (check-in: 41773fa760 user: drh tags: enhanced-stat1) | |
15:07 | Omit the "noquery" argument in sqlite_stat1. Instead, add the "uneven" argument for indexes that have an uneven distribution of values. Modify the query planner to avoid doing equality look-ups on uneven indexes. (check-in: 0ec4b880bb user: drh tags: enhanced-stat1) | |
2023-12-29
| ||
21:07 | Revise the "noquery" decision algorithm again. The index now must select more than 150 rows on average, and the number of rows select must be enough that it seems faster to do a full scan of the associated table. (check-in: f516ef80a0 user: drh tags: enhanced-stat1) | |
20:31 | Fix an issue in the "noquery" decision in the previous check-in. Also add comments explaining the algorithm. (check-in: 6aaa65adfc user: drh tags: enhanced-stat1) | |
20:08 | Add the "noquery" argument as an option for the stat column of sqlite_stat1. If set, then the index will not be used to optimize a query. Enhance ANALYZE to set that argument on very low selectivity indexes. (check-in: e514d3fa83 user: drh tags: enhanced-stat1) | |
19:03 | Attempt to improve the ANALYZE command so that it does a better job of detecting lopsided indexes and makes appropriate changes to the sqlite_stat1 table. (check-in: 4b70b94616 user: drh tags: enhanced-stat1) | |
04:29 | Minor doc touchup in the JS bits. (check-in: 8d2120c354 user: stephan tags: trunk) | |
2023-12-28
| ||
21:02 | Enable SQLITE_DIRECT_OVERFLOW_READ unless it is specifically disabled using the -DSQLITE_DIRECT_OVERFLOW_READ=0 compile-time option. (check-in: 630604a4e6 user: drh tags: trunk) | |
20:54 | Update fts5origintext4.test to work with SQLITE_DIRECT_OVERFLOW_READ. (check-in: 15ed002aed user: dan tags: trunk) | |
19:18 | Performance improvement by unwinding a loop in jsonAppendString(). (check-in: 190ab3c084 user: drh tags: trunk) | |
16:25 | Fix harmless compiler warnings in FTS5. (check-in: 3cd5ef44e4 user: drh tags: trunk) | |
16:21 | Enhance the (undocumented, debug-only) json_parse() SQL function so that it returns the text rendering of the JSONB parse of the input, rather than printing the rendering on stdout. (check-in: 056de8d551 user: drh tags: trunk) | |
14:07 | Merge the latest trunk changes into the reuse-schema branch. (check-in: 3d1b0403d6 user: drh tags: reuse-schema) | |
14:01 | Merge the latest trunk changes into the bedrock branch. (check-in: 5a17b972ed user: drh tags: bedrock) | |
13:44 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 1f592dd32d user: drh tags: wal2) | |
13:40 | Merge recent trunk enhancements into the begin-concurrrent branch. (check-in: b3a2adfda7 user: drh tags: begin-concurrent) | |
2023-12-27
| ||
16:24 | Fix a problem in the shell tool (not library) causing an out-of-bounds write if an ".open" command failed, then the user pressed ctrl-c to interrupt a query running on the substitute in-memory database. (check-in: 026618b9e3 user: dan tags: trunk) | |
2023-12-26
| ||
15:52 | Ensure that the xColumnText(), xQueryPhrase() and xPhraseFirstColumn() APIs all return SQLITE_RANGE if they are passed a bad column or phrase number. (check-in: 1a8a9b1c89 user: dan tags: trunk) | |
13:20 | Improved handling of malformed unicode within JSON strings. (check-in: e252bdf5f5 user: drh tags: trunk) | |
2023-12-24
| ||
12:02 | Remove an ALWAYS() added in [c50e6c2ace49d092] because it is sometimes false. dbsqlfuzz c393a4f783d42efd9552772110aff7e5d937f15e. (check-in: b9daf37e57 user: drh tags: trunk) | |
11:43 | Fix harmless compiler warnings associated with [5db30bcc338aac1c] (check-in: e55d1c2333 user: drh tags: trunk) | |
11:31 | Avoid signed integer overflow during integrity_check of FTS5. (check-in: 5937df3b25 user: drh tags: trunk) | |
2023-12-23
| ||
19:03 | Improvements to the query planner to address the inefficiency described by forum post 2568d1f6e6. (check-in: 72fcc12cda user: drh tags: trunk) | |
11:31 | Add debugging output routines sqlite3ShowWhereLoop(X) and sqlite3ShowWhereLoopList(X) that can be invoked from a debugger to show a summary of the content of a single WhereLoop object or a list of WhereLoop objects. No change in release builds. (check-in: 5db30bcc33 user: drh tags: trunk) | |
2023-12-22
| ||
21:22 | Change parameters on a debugging function to include "const". (check-in: 94c3e1110c user: drh tags: trunk) | |
16:03 | Add the -fno-sanitize-recover=undefined to the sanitizer builds used for sdevtest and release testing. To ensure that any test that provokes undefined behaviour fails. (check-in: 89563311ad user: dan tags: trunk) | |
15:42 | Update #ifdef checks in pager.c and util.c to account for [0462a2612d1fc1d0] to resolve the build problem reported in forum post 9819032aac. (check-in: 7374c2342e user: stephan tags: branch-3.44) | |
15:41 | Update #ifdef checks in pager.c and util.c to account for [0462a2612d1fc1d0] to resolve the build problem reported in forum post 9819032aac. (check-in: 0f22d809a1 user: stephan tags: trunk) | |
14:47 | Fix a usan complaint about signed integer overflow. (check-in: e65907e027 user: dan tags: trunk) | |
12:57 | Add a new comment to debugging output routine sqlite3WhereLoopPrint() to remind us of what the various fields of the debug output mean. No changes to code. (check-in: da5f34fd40 user: drh tags: trunk) | |
2023-12-21
| ||
18:08 | Add internal core-developer-only documentation of the JSONB format. (check-in: 4d30478863 user: drh tags: trunk) | |
2023-12-20
| ||
19:33 | Fix SQLITE_ENABLE_SETLK_TIMEOUT assert() statements in os_unix.c to avoid reading past the end of the unixShmNode.aMutex[] array. (check-in: 029a05cd29 user: dan tags: trunk) | |
11:34 | Avoid harmless integer overflow in pager status statistics gathering. Response to forum post 7f4cdf23f9. (check-in: 206d8c650d user: drh tags: trunk) | |
2023-12-19
| ||
21:39 | In JSON - minor code cleanup and refactoring with a small size reduction and performance increase. (check-in: 215fabda38 user: drh tags: trunk) | |
15:51 | Remove redundant conditional from sqlite3ExprCanBeNull(). (check-in: 257f96a2d2 user: drh tags: trunk) | |
15:10 | On second thought, we don't really need sqlite_dbdata accessible to the CLI. (check-in: 36fe6a61ef user: drh tags: trunk) | |
15:06 | Fix harmless compiler warning in the randomjson.c extension. (check-in: debe7060b1 user: drh tags: trunk) | |
14:54 | More precise computation of the size of data structures in the query planner. Response to Forum post 7d8685d49d. (check-in: 0c8d88e411 user: drh tags: trunk) | |
14:53 | Add ALWAYS() and NEVER() on branches made unreachable by recent changes. (check-in: c50e6c2ace user: drh tags: trunk) | |
13:45 | Ignore COLLATE operators when determining whether the result of a subexpression should be shallow-copied or deep-copied. (check-in: 34ae36a45e user: drh tags: trunk) | |
13:00 | Test case for the previous check-in. (check-in: df5a07e1a5 user: drh tags: trunk) | |
13:00 | When unable to resolve an identifier, change the Expr node into TK_NULL rather than TK_COLUMN, to prevent any downstream misuse of the non-existent column. (check-in: 8f770d14d3 user: drh tags: branch-3.44) | |
12:49 | When unable to resolve an identifier, change the Expr node into TK_NULL rather than TK_COLUMN, to prevent any downstream misuse of the non-existent column. dbsqlfuzz 71869261db80a95e4733afa10ff5724bf3c78592. (check-in: d2e6117e4f user: drh tags: trunk) | |
12:23 | Always make the sqlite_dbdata virtual table available in the CLI. (check-in: e5fd3b32ad user: drh tags: trunk) | |
11:57 | Extra ALWAYS() macros to verify state in the sqlite3ExprCanBeNull() routine. (check-in: be19b84c9f user: drh tags: trunk) | |
00:07 | Remove a stray comment in the JSON code. (check-in: 6618bdf067 user: drh tags: trunk) | |
2023-12-18
| ||
19:18 | New JSON invariant test cases. (check-in: a6a1367b0b user: drh tags: trunk) | |
18:50 | Add NEVER() to an unfalsifiable branch. (check-in: 9a0c67db36 user: drh tags: trunk) | |
18:31 | Fix JSON to JSONB translation so that it deals correctly with Infinity and NaN. (check-in: 178cb84f36 user: drh tags: trunk) | |
15:53 | Ensure that the insert/delete size delta on JSONB objects in the JSON cache are always set to zero. (check-in: 4b4581668a user: drh tags: trunk) | |
14:24 | Add randomjson.c to testfixture. Use it for a new set of invariant tests against JSON functions. (check-in: f1c040606b user: drh tags: trunk) | |
14:16 | Ensure that all object labels for individual objects generated by randomjson.c are unique. (check-in: 29c46aca23 user: drh tags: trunk) | |
13:51 | Bug fix in the randomjson.c extension. (check-in: 1f3a33df53 user: drh tags: trunk) | |
12:18 | Enhancements to ext/misc/randomjson.c. (check-in: a4e6d1f86f user: drh tags: trunk) | |
2023-12-17
| ||
20:41 | Enhancements to the "randomjson.c" extension. Automatically load that extension into fuzzcheck. (check-in: 70620405ab user: drh tags: trunk) | |
2023-12-16
| ||
15:48 | Enable SQLITE_STRICT_SUBTYPE for default builds of the shell, fuzzcheck, and testfixture. (check-in: 5a0c517ed7 user: drh tags: trunk) | |
10:50 | New test case based on Chromium bug report 1511689. (check-in: 2c7ef4b4d2 user: drh tags: trunk) | |
2023-12-15
| ||
21:39 | Fix a spurious "misuse of aggregate function" error that could occur when an aggregate function was used within the FROM clause of a sub-select of the select that owns the aggregate. (check-in: 122cd0bada user: drh tags: branch-3.43) | |
20:13 | In the count-of-view optimization, deferring freeing obsolete parts of the parse tree, on the off-chance that some other part of the code might be holding a pointer to those parts. (check-in: da44257885 user: drh tags: trunk) | |
19:26 | Avoid expiring prepared statements in the middle of an integrity-check. (check-in: 88beb48472 user: dan tags: trunk) | |
16:28 | Add mention of --buildonly and --dryrun to the testrunner.tcl usage screen. (check-in: 23b92d915c user: drh tags: trunk) | |
15:22 | Fix a new JSON test case so that it works even if SQLITE_OMIT_VIRTUALTABLE is defined. (check-in: b995aae510 user: drh tags: trunk) | |
15:17 | Do not run test script fts5origintest4.test with either "memsubsys1" or "mmap" permutations. (check-in: 05a63d9603 user: dan tags: trunk) | |
14:33 | Avoid running the "no_mutex_try" tests with SQLITE_ENABLE_SETLK_TIMEOUT builds as part of the release test. (check-in: 6b4e1344a2 user: dan tags: trunk) | |
13:38 | Correct --enable-sab flag in ext/wasm/GNUmakefile to fix a silent alhttpd args-parsing error. (check-in: 7b9b757d87 user: stephan tags: trunk) | |
2023-12-14
| ||
22:01 | Use SQLITE_STRICT_SUBTYPE=1 by default for the JNI and WASM builds unless they're explicitly built with SQLITE_STRICT_SUBTYPE=0. (check-in: 990211357b user: stephan tags: trunk) | |
16:34 | Add assert()s to FTS5 to fix static analyzer warnings. (check-in: 27d4a89a5f user: drh tags: trunk) | |
15:38 | Fix harmless compiler warnings in JSON and FTS5. (check-in: 90135efccf user: drh tags: trunk) | |
15:31 | Improve the error message returned by an fts5 'rebuild' command on an external content table if there is a problem with the content table or view. (check-in: 0fbf4b8a58 user: dan tags: trunk) | |
15:11 | Enhance aggregate order-by so that it transmits subtype information through the sorter. Fix for the deficiency reported by forum post 87347ad2fb5a8f76. (check-in: d302a38946 user: drh tags: trunk) | |
13:58 | Pass subtype information through the aggregate ORDER BY sorter for aggregate functions that use subtype information. (Closed-Leaf check-in: 3536f4030e user: drh tags: agg-orderby-subtype) | |
2023-12-13
| ||
20:37 | In CLI, fix .read inability to open 2GB+ files on WIN32. (check-in: 56c80a62d2 user: larrybr tags: trunk) | |
16:50 | Avoid invoking sqlite3ExprColUsage() on an unresolve column reference. (check-in: 6e0e2ee7c7 user: drh tags: branch-3.44) | |
16:45 | Avoid invoking sqlite3ExprColUsage() on an unresolve column reference. dbsqlfuzz fc34aa62df4de103705d11b807074687ffafbda5. (check-in: ac9314c0e3 user: drh tags: trunk) | |
15:27 | Bug fix in the JSONB validator. dbsqlfuzz ac6fa521a08609a642198e7decf64180e750b3c4 (check-in: 3e940a6a08 user: drh tags: trunk) | |
14:31 | Improvements to UTF8 handling, and especially the handling of invalid UTF8, in the JSON routines. (check-in: 1b229c1101 user: drh tags: trunk) | |
2023-12-12
| ||
18:38 | Fix the JSON object label comparison object so that it works correctly even if the label ends with escaped whitespace. (check-in: 4d5353cadd user: drh tags: trunk) | |
17:55 | Worker1 Promiser API: when multiple db connections are active then use the requested connection instead of always the first-opened connection. Bug reported in forum post 894c330e7f23b177. (check-in: 3874e5a328 user: stephan tags: branch-3.44) | |
17:52 | Worker1 Promiser API: when multiple db connections are active then use the requested connection instead of always the first-opened connection. Bug reported in forum post 894c330e7f23b177. (check-in: 194276e18e user: stephan tags: trunk) | |
17:31 | The json_valid(*,8) function does a much better check of the validity of the JSONB input. The json_error_position() function returns an approximate byte offset to the point of the first detected error in the JSONB. (check-in: 840efb33a3 user: drh tags: trunk) | |
17:13 | Add NEVER to two unreachable branches in JSON. (Closed-Leaf check-in: c96ebb086f user: drh tags: jsonb-valid) | |
14:33 | Improvements to JSONB validation - catch more cases where the input does not conform to spec. (check-in: be1864eac4 user: drh tags: jsonb-valid) | |
02:31 | Validity checking of text nodes in JSONB. (check-in: fa5160687c user: drh tags: jsonb-valid) | |
2023-12-11
| ||
21:00 | The json_error_position() function now reports an approximate byte offset to the problem in a JSONB if there is a problem. (check-in: 80d5d94dff user: drh tags: jsonb-valid) | |
20:44 | json_error_position() now uses jsonValidityCheck() to find the approximate position of an error in a JSONB blob. (check-in: c3d60cf702 user: drh tags: jsonb-valid) | |
20:19 | json_valid(*,8) allows minus-signs on hexadecimal literals. (check-in: c0d7f4520d user: drh tags: jsonb-valid) | |
19:21 | Activate JSON_SELFCHECK within fuzzcheck. (check-in: 4d14e733bb user: drh tags: jsonb-valid) | |
19:00 | Rename the new test-control to SQLITE_TESTCTRL_JSON_SELFCHECK. Make it so that the current value of the setting can be interrogated. (check-in: 7aff1d9a4c user: drh tags: jsonb-valid) | |
17:03 | Add SQLITE_TESTCTRL_VALIDATE_JSONB, which if enabled under SQLITE_DEBUG causes cross-checking of generate JSONB. (check-in: b410a4db74 user: drh tags: jsonb-valid) | |
14:01 | Work toward enhanced functionality for json_valid() with deep checking of the JSONB (second argument has bit 0x08). (check-in: c370d57319 user: drh tags: jsonb-valid) | |
13:48 | Different fix for the fts5 COMMIT-following-OOM problem first fixed by [fba3129d]. This one does not cause problems if an fts5 table is renamed and then dropped within the same transaction. (check-in: 67da596d82 user: dan tags: branch-3.44) | |
02:39 | Fix a potential use of uninitialized value in json_valid() with 2nd argument of 8. (check-in: fa102036fe user: drh tags: trunk) | |
2023-12-08
| ||
16:56 | Fix a harmless UBSAN warning. (check-in: 1503cba6d1 user: drh tags: trunk) | |
14:54 | Fix a potential problem RCStr access on a JsonString object that is not really and RCStr. Fuzzer/UBSAN find. (check-in: d2f2174ce2 user: drh tags: trunk) | |
12:58 | Fix a harmless compiler warning about "confusing indentation". (check-in: 34f9e9a8c4 user: drh tags: trunk) | |
12:04 | Avoid dropping an error code in new fts5 tokendata=1 code. (check-in: a66596e33d user: dan tags: trunk) | |
2023-12-07
| ||
21:09 | Ensure an fts5vocab table never uses a special tokendata=1 merge cursor. (check-in: 1e26510e83 user: dan tags: trunk) | |
20:46 | Avoid an assert() failure when querying an fts5vocab table that accesses a tokendata=1 fts5 table with corrupt %_data records. (check-in: 386ba9e204 user: dan tags: trunk) | |
19:08 | Fix a null-pointer dereference in fts5 tokendata=1 code. (check-in: d69fa8f050 user: dan tags: trunk) | |
18:41 | Fix a problem with handling OOM and other errors in fts5 when querying tokendata=1 tables. (check-in: bc911ab595 user: dan tags: trunk) | |
14:41 | Different fix for the fts5 COMMIT-following-OOM problem first fixed by [fba3129d]. This one does not cause problems if an fts5 table is renamed and then dropped within the same transaction. (check-in: d8c6b24694 user: dan tags: trunk) | |
14:09 | Rework the jsonEachPathLength() routine in json_tree() so that it is less susceptible to problems due to goofy object labels. (check-in: 858b76a00e user: drh tags: trunk) | |
13:14 | Add ALWAYS() on branches added in [ec0ae4030968c782] that are always true. (check-in: 451cef8609 user: drh tags: trunk) | |
12:55 | Improved detection of corrupt JSONB in the jsonReturnFromBlob() function. (check-in: b014736c1f user: drh tags: trunk) | |
2023-12-06
| ||
22:22 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: 5c36819c42 user: drh tags: reuse-schema) | |
21:18 | Merge the latest trunk changes into the bedrock branch. (check-in: c2e53000f4 user: drh tags: bedrock) | |
21:11 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 457724e738 user: drh tags: wal2) | |
21:05 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: b1c58f485f user: drh tags: begin-concurrent) | |
18:34 | Fix compiler warning about shadowed variable in fts5_index.c. (check-in: ee70e4c1c9 user: dan tags: trunk) | |
18:25 | Work around LLVM's newfound hatred of function pointer casts. Forum post 1a7d257346636292. (check-in: ec0ae40309 user: drh tags: trunk) | |
18:10 | Update documentation comments in fts5.h. (check-in: 38c50e22c9 user: dan tags: trunk) | |
17:50 | Do correct comparisons between object labels in JSON even when the two labels contain different JSON escapes. (check-in: bda2e30cc2 user: drh tags: trunk) | |
17:39 | Correctly handle 8-byte sizes in the JSONB format. Forum post 283daf08e91183fc. (check-in: 73d390f39c user: drh tags: trunk) | |
16:57 | Fix the routine that determines the json_tree.path value for the first row so that it correctly takes into account escape sequences in the path argument. (Closed-Leaf check-in: b9243ee8a3 user: drh tags: json-label-compare) | |
16:27 | In CLI, move -interactive flag handling back to arg-loop pass 2. (check-in: 63cb05a862 user: larrybr tags: trunk) | |
15:50 | Test cases for object label matching with escape sequences. (check-in: c6f2aa38e9 user: drh tags: json-label-compare) | |
15:35 | The rule for the RHS of the ->> and -> operators when the RHS does not begin with $ is that it must be (1) all digits, or (2) all alphanumerics, or (3) contained within [..] or else it will become a quoted label. (check-in: 0e059a546e user: drh tags: json-label-compare) | |
14:50 | Increased rigor in comparisons between object labels in JSON. (check-in: 2bc86d145f user: drh tags: json-label-compare) | |
14:36 | Add the tokendata=1 option and related APIs to fts5. (check-in: a76a636b23 user: dan tags: trunk) | |
14:30 | Merge trunk changes into this branch. (Closed-Leaf check-in: 8f46eace86 user: dan tags: fts5-token-data) | |
12:30 | README.md typo fix reported in the forum and update all links from http: to https:. (check-in: 5c48acdbb4 user: stephan tags: trunk) | |
2023-12-05
| ||
19:45 | Rework the JSON functions so that they use the JSONB format internally. The original JsonNode parse tree design is removed. All JSON functions that accept text JSON also accept JSONB. New functions generate JSONB. (check-in: 7f0c79b94e user: drh tags: trunk) | |
19:24 | Use extra assert() statement to silence harmless static analyzer warnings. (Closed-Leaf check-in: 174c2b2eef user: drh tags: jsonb) | |
18:36 | Further tests for the new code on this branch. (check-in: 59d008b6c2 user: dan tags: fts5-token-data) | |
18:28 | Miscellaneous comment cleanup and typo fixes. (check-in: 59446dc0bd user: drh tags: jsonb) | |
12:52 | Use strspn() to accelerate whitespace bypass in the JSON parser. (check-in: 843197df08 user: drh tags: jsonb) | |
12:22 | Small performance gain by unwinding the string literal delimiter search loop in the JSON parser by one more level. (check-in: 4c587feac1 user: drh tags: jsonb) | |
12:20 | Clean up the JSONB performance test script. (check-in: 905301075a user: drh tags: jsonb) | |
01:44 | Use an assert() to fix a harmless static analyzer warning. (check-in: a249ca657e user: drh tags: jsonb) | |
00:17 | Fix OOM and corrupt JSONB handling in json_patch(). (check-in: 1910feb0b7 user: drh tags: jsonb) | |
2023-12-04
| ||
23:12 | Rename the internal routine jsonMergePatchBlob() to just jsonMergePatch(). (check-in: ebf667b616 user: drh tags: jsonb) | |
19:48 | Add further tests for xInstToken(). (check-in: 8582707f16 user: dan tags: fts5-token-data) | |
19:32 | Fixes to error handling in json_array_length(). (check-in: aa85df2d26 user: drh tags: jsonb) | |
19:14 | Do not make the input JSONB editable in json_remove() if there are no PATH argument. (check-in: 66594544f3 user: drh tags: jsonb) | |
18:53 | Fix errors in rendering JSON5 escape sequences embedded in JSONB. (check-in: f1a51ae386 user: drh tags: jsonb) | |
18:45 | Fixes for xInstToken() with tokendata=0 tables. And with prefix queries. (check-in: 78fbb71598 user: dan tags: fts5-token-data) | |
17:58 | Fix memory leak in new code on this branch. (check-in: ebc160b9a0 user: dan tags: fts5-token-data) | |
17:45 | Fix a problem with the xInstCount() API and "ORDER BY rank" queries. (check-in: 317a50563d user: dan tags: fts5-token-data) | |
17:40 | Continuing simplifications and code cleanup. (check-in: ddf92b5059 user: drh tags: jsonb) | |
17:05 | Fix bug in xInstToken() causing the wrong token to be returned. (check-in: da78d07e77 user: dan tags: fts5-token-data) | |
16:01 | Remove reachable ALWAYS and NEVER macros. (check-in: f601de3eea user: drh tags: jsonb) | |
15:22 | Two new NEVER macros. (check-in: 52632c92cb user: drh tags: jsonb) | |
15:08 | Add tests for using tokendata=1 and contentless_delete=1 together. (check-in: a2506b8c97 user: dan tags: fts5-token-data) | |
13:12 | Repair issues and inefficiencies found during testing. (check-in: ae973cb151 user: drh tags: jsonb) | |
01:14 | Better pre-scan size estimations for objects in the JSON parser resulting in fewer reallocations and memmove operations. (check-in: 526b27f908 user: drh tags: jsonb) | |
00:31 | Back off on the use of strlen() for situations where sqlite3_value_bytes() will work as well, for performance. (check-in: 79fb54fbb8 user: drh tags: jsonb) | |
2023-12-03
| ||
23:38 | Remove dead code. Improved reporting of errors in JSON inputs. (check-in: 2eaa738e6b user: drh tags: jsonb) | |
23:30 | Avoid problems when the path argument to json_tree() contains embedded U+0000 characters. (check-in: 9f055091af user: drh tags: jsonb) | |
20:11 | Ensure that OOM conditions in the generation of the "bad JSON path" error message result in an SQLITE_NOMEM error. (check-in: aa0e02b5c2 user: drh tags: jsonb) | |
19:59 | Enable incorrect JSONB to be rendered into text without hitting an assertion for a bad whitespace escape in a string. (check-in: 4d6a9a217d user: drh tags: jsonb) | |
19:32 | Partial hand-merge of shell.c.in (not buildable) (Leaf check-in: 62e90c9ba8 user: larrybr tags: cli_extension_wip) | |
11:54 | Do not let bad hexadecimal digits in malformed JSONB cause an assertion fault. (check-in: 8dec1ba1e5 user: drh tags: jsonb) | |
00:51 | Minor code changes for consistency and to simplify testing. (check-in: df272bd837 user: drh tags: jsonb) | |
2023-12-02
| ||
21:39 | Implement strict JSONB checking in the json_valid() function. (check-in: 0f26d38880 user: drh tags: jsonb) | |
20:37 | Fix harmless compiler warnings reported by MSVC. (check-in: 419652c0c8 user: drh tags: jsonb) | |
20:35 | Fix various compiler warnings and other problems with the new code on this branch. (check-in: 3a623cfa17 user: dan tags: fts5-token-data) | |
20:25 | Code and comment cleanup. Everything should work the same. (check-in: c640754df0 user: drh tags: jsonb) | |
18:17 | Fix harmless compiler warnings. Refactor some identifier names for clearer presentation. (check-in: 7e39415027 user: drh tags: jsonb) | |
18:14 | When tokendata=1 queries require multiple segment-cursors, allow those cursors to share a single array of in-memory tombstone pages. (check-in: e0175d07e4 user: dan tags: fts5-token-data) | |
18:04 | Take extra care to ensure that JSONB values that are in cache are actually owned by the JSON subsystem, and that ownership of such values is not handed back to the bytecode engine. (check-in: 1304534001 user: drh tags: jsonb) | |
17:32 | Ensure that tokendata=1 queries avoid loading large doclists for queries like "common AND uncommon", just as tokendata=0 queries do. (check-in: 7bda09ab40 user: dan tags: fts5-token-data) | |
16:11 | Protect a memcpy() against OOM conditions. (check-in: 26144d1c25 user: drh tags: jsonb) | |
15:59 | Do not allow a JsonParse object to be considered "editable" after an OOM. (check-in: c6bacf57bd user: drh tags: jsonb) | |
15:06 | Fix potential unsigned integer underflow in jsonAppendString(). (check-in: d2fba2cbdc user: drh tags: jsonb) | |
14:55 | Minor fix to the header comment on jsonXlateTextToBlob(). (check-in: c3677ba410 user: drh tags: jsonb) | |
14:16 | Performance optimization in jsonAppendString(). (check-in: fdf00e9623 user: drh tags: jsonb) | |
13:36 | Simplification and optimization of the JSON parser. (check-in: f5ec948511 user: drh tags: jsonb) | |
12:23 | Remove a NEVER that can be true if a virtual table column is declared to have a DEFAULT. See forum post 3d4de8917627d058. (check-in: 8abc2ccaf8 user: drh tags: trunk) | |
01:38 | Unroll a loop in the parser for a performance increase. (check-in: a6dc29e4d5 user: drh tags: jsonb) | |
01:06 | Fix harmless compiler warnings and enhance performance the parser. (check-in: 285633da6d user: drh tags: jsonb) | |
2023-12-01
| ||
22:01 | Performance optimization in the JSON parser. (check-in: 68d191f40e user: drh tags: jsonb) | |
20:37 | Remove old code for tokendata=1 queries. (check-in: b0a489e8e1 user: dan tags: fts5-token-data) | |
20:10 | Merge latest trunk with this branch. (check-in: 8258967411 user: dan tags: fts5-token-data) | |
20:09 | Different approach to querying a tokendata=1 table. Saves cpu and memory. (check-in: c523f40895 user: dan tags: fts5-token-data) | |
18:49 | JSON cache is now more effective. (check-in: 443a3f3a8e user: drh tags: jsonb) | |
18:46 | Fix up the JSON cache to work better. (Closed-Leaf check-in: 1fdbc39521 user: drh tags: jsonb-cache) | |
13:28 | Cache is working better, but does not preserve the hasJson5 flag. (check-in: a12add7ab9 user: drh tags: jsonb-cache) | |
12:57 | First attempt to get the JSON text-to-binary cache working. All test cases pass, but the cache seems not to help much. (check-in: 25ed295f30 user: drh tags: jsonb) | |
2023-11-30
| ||
23:36 | Remove all trace of JsonNode from the JSON implementation. The JSONB format is used as the internal binary encoding for searching and editing. (check-in: 11ebb5f712 user: drh tags: jsonb) | |
20:57 | Convert json_valid() over to using only JSONB as its internal format. (check-in: 7b5756fa6d user: drh tags: jsonb) | |
20:34 | Add a basic batch-mode SQL runner for the SAH Pool VFS, for use in comparing it against WebSQL. Bring the WebSQL batch runner up to date, noting that it cannot run without addition of an "origin trial" activation key from Google because that's now the only way to enable WebSQL in Chrome (that part is not checked in because that key is private). Minor code-adjacent cleanups. (check-in: 883990e793 user: stephan tags: trunk) | |
19:29 | Convert json_type() to use JSONB internally. (check-in: 83074835b9 user: drh tags: jsonb) | |
19:11 | Convert json_insert(), json_replace(), and json_set() over to using only JSONB internally. (check-in: 4e2083e86f user: drh tags: jsonb) | |
19:06 | Enhance json_set() and json_insert() so that they create missing substructure. (Closed-Leaf check-in: cc7a641ab5 user: drh tags: jsonb-insert) | |
16:17 | Simplification of the new JSON insert/set test cases. (check-in: 04c0d56443 user: drh tags: jsonb-insert) | |
16:16 | New JSON test cases showing insert or set with missing substructure. (check-in: 6802b6459d user: drh tags: trunk) | |
12:04 | New test cases for insert/set/replace with paths that indicate substructure that does not yet exist. (check-in: 146c717c51 user: drh tags: jsonb-insert) | |
10:00 | Update some OPFS-related help text in WASM tests. Minor cleanups in speedtest1-worker.js. (check-in: 263f6d3a77 user: stephan tags: trunk) | |
00:52 | Convert json_insert(), json_replace(), json_set() to use JSONB internally. Mostly working, but some corner cases are still not quite right. (check-in: 99c8f6bd5c user: drh tags: jsonb-insert) | |
2023-11-29
| ||
20:06 | Convert the json_error_position() routine to use only JSONB internally. (check-in: e7a8ba35bf user: drh tags: jsonb) | |
17:36 | The json_patch() function now operates exclusively on JSONB. This patch also includes improvements to JSONB debug printing routines. (check-in: fee19d0098 user: drh tags: jsonb) | |
16:22 | Fix signed integer overflow in fts5. (check-in: 60e46c7ec6 user: dan tags: fts5-token-data) | |
13:47 | In the recovery extension, if a payload size is unreasonably large, it is probably corrupt, so truncate it. (check-in: 988c3179e9 user: drh tags: trunk) | |
12:18 | Merge all the latest trunk enhancements into the jsonb branch. (check-in: 1a59fcab21 user: drh tags: jsonb) | |
02:53 | Increase the patch level to 3.44.3. (check-in: bb4d35e262 user: drh tags: branch-3.44) | |
02:50 | Reference count the Table passed into the OP_VCheck opcode. (check-in: 79e6496bb1 user: drh tags: branch-3.44) | |
02:45 | The assertion change at check-in [7946c79567b0ccd3] is insufficient to fix the problem of a Table object being deleted out from under the OP_VCheck opcode. We need to reference count the Table, which is accomplished here. (check-in: cad269d5e2 user: drh tags: trunk) | |
01:38 | Convert the json_array_length() function to use JSONB instead of JsonNodes. (check-in: 5ab790736d user: drh tags: jsonb) | |
2023-11-28
| ||
23:26 | Fix all known problems with JSONB json_extract(). (check-in: d5f48c57e9 user: drh tags: jsonb) | |
23:18 | Do not set the J subtype when the output is JSONB. (Closed-Leaf check-in: 4f106b64fe user: drh tags: jsonb-extract) | |
20:33 | Preserve flexibility in the format of the RHS of -> and ->> operators found in legacy. (check-in: 6231ec43ad user: drh tags: jsonb-extract) | |
20:25 | Attempt to get json_extract() working with pure JSONB only, and without the use of JsonNode. Mostly working, but there are some differences from legacy in corner cases. (check-in: 8c324af1ec user: drh tags: jsonb-extract) | |
19:43 | Merge latest trunk updates into this branch. (check-in: 554fc13f2c user: dan tags: fts5-token-data) | |
18:16 | The json_remove() function now uses only JSONB, never JsonNodes, internally. (check-in: b69786e746 user: drh tags: jsonb) | |
17:47 | Update this branch with latest changes from trunk. (check-in: bead0d8f5a user: dan tags: begin-concurrent) | |
17:32 | Update this branch with latest changes from trunk. (check-in: 7f1b61a3ea user: dan tags: wal2) | |
17:12 | In SQLITE_ENABLE_SETLK_TIMEOUT builds, use blocking locks in place of sleep() calls when opening a read-transaction. (check-in: 4c055b7a6e user: dan tags: trunk) | |
15:29 | Handle an SQLITE_BUSY_TIMEOUT error if one occurs while attempting a shared lock on a read-lock slot. (Closed-Leaf check-in: 5fbf3906d2 user: dan tags: blocking-dms-lock) | |
13:38 | Activate the ability of json_patch() to work on JSONB. (check-in: 11aba347ff user: drh tags: jsonb) | |
13:35 | All legacy tests are passing. (Closed-Leaf check-in: 2c436806b8 user: drh tags: jsonb-patch) | |
12:28 | The json_patch() code for JSONB compiles and works sometimes, but there are still issues. Incremental check-in. (check-in: e0099464a0 user: drh tags: jsonb-patch) | |
00:27 | More aggressive use of jsonBlobEdit(). Improvements to the MergePatch implementation sketch. (check-in: fbca9570fd user: drh tags: jsonb) | |
2023-11-27
| ||
23:46 | Add untested (#ifdefed-out) code for the MergePatch algorithm against JSONB. Add (and test) the jsonBlobEdit() routine that is needed by the new MergePatch. (check-in: 4d353387fc user: drh tags: jsonb) | |
20:37 | Have SQLITE_ENABLE_SETLK_TIMEOUT builds block when locking a read-lock slot. (check-in: f797baf47c user: dan tags: blocking-dms-lock) | |
19:22 | In SQLITE_ENABLE_SETLK_TIMEOUT builds, use blocking locks in place of sleep() when opening a read-transaction. (check-in: a51ef39998 user: dan tags: blocking-dms-lock) | |
17:13 | Enhance the (SQLITE_DEBUG-only) json_parse() routine so that it shows a decoding of JSONB when given a BLOB argument. (check-in: af26786856 user: drh tags: jsonb) | |
15:57 | Give the json_valid() function an optional second argument that determines what is meant by "valid". (check-in: a4e19ad43d user: drh tags: jsonb) | |
15:08 | Pickup stray oput?() calls that should have gone to stdout. Simplify console line reading, sacrificing speed (which does not matter then) for code size. (Leaf check-in: 8e20645cc2 user: larrybr tags: console-io-lib) | |
12:36 | Convert the json_tree() and json_each() virtual tables over to use JSONB has their internal representation. (check-in: ec18caa3f7 user: drh tags: jsonb) | |
12:30 | All tests passing. (Closed-Leaf check-in: b5a5660ca2 user: drh tags: jsonb-tree) | |
2023-11-26
| ||
00:56 | Fix corner-case error conditions. (check-in: ec23d34ab7 user: drh tags: jsonb-tree) | |
00:48 | Same results as the legacy JsonNode implementation on a small set of test cases. (check-in: c3da4b079a user: drh tags: jsonb-tree) | |
2023-11-25
| ||
23:00 | Remove unused elements from the json_tree() cursor. (check-in: 914a50117d user: drh tags: jsonb-tree) | |
20:59 | Remove the vestigal JsonNode logic from json_tree() and json_each(). (check-in: 66c2ab9ebb user: drh tags: jsonb-tree) | |
19:28 | Almost working. Path is still not exactly right when Root is defined on json_tree(). (check-in: 9225824691 user: drh tags: jsonb-tree) | |
18:11 | Generate the fullkey and path columns of json_tree(). (check-in: ffaa468ab8 user: drh tags: jsonb-tree) | |
13:40 | Handle the path argument to json_tree() and json_each(). (check-in: fded888469 user: drh tags: jsonb-tree) | |
2023-11-24
| ||
21:57 | Continuing work on json_tree() against a JSONB. (check-in: 3df891cb11 user: drh tags: jsonb-tree) | |
20:14 | Add the --buildonly and --dryrun options to testrunner.tcl. (check-in: a0c87ae9d3 user: dan tags: trunk) | |
18:44 | Incremental progress toward getting json_each() and json_tree() to work directly off of a JSONB blob. (check-in: f8cab41b3b user: drh tags: jsonb-tree) | |
18:33 | Allow a pattern to filter test scripts to be appended to testrunner.tcl "mdevtest", "sdevtest" and "release" commands. e.g. "tclsh test/testrunner.tcl sdevtest fts5%". (check-in: f8ea0b58b3 user: dan tags: trunk) | |
16:17 | Get all CLI print calls which went to stdout in 3.44.0 to do so again. (check-in: d65d9579ee user: larrybr tags: console-io-lib) | |
15:58 | Get all CLI print calls which went to stdout in 3.44.0 to continue going to stdout. (check-in: e9951ede18 user: larrybr tags: trunk) | |
14:25 | Fix jsonParseReset() to properly clear the JsonParse.aBlob element. (check-in: ab2644aacf user: drh tags: jsonb) | |
14:03 | Omit precompiled binaries from the source tree. (check-in: 7dbc2f496d user: drh tags: jsonb) | |
14:02 | Omit precompiled binaries from the source tree. (check-in: 3a8a75bfd2 user: drh tags: console-io-lib) | |
14:01 | Omit the precompiled binary from the source tree. (check-in: 4ff103d294 user: drh tags: trunk) | |
13:41 | Merge the latest trunk enhancements and fixes into the jsonb branch. (check-in: a838ebcbbd user: drh tags: jsonb) | |
13:30 | CLI .output/.once to not redirect ".timer on" results. (check-in: 626c4353f2 user: larrybr tags: console-io-lib) | |
13:26 | CLI .output/.once to not redirect ".timer on" results. (check-in: ce766ed51f user: larrybr tags: trunk) | |
12:48 | Merge 3.44.2 changes into the reuse-schema-3.44 sub-branch. (Leaf check-in: 2b9d5ff78f user: drh tags: reuse-schema-3.44) | |
12:42 | Merge 3.44.2 changes into the bedrock-3.44 sub-branch. (Leaf check-in: 1d9dfad077 user: drh tags: bedrock-3.44) | |
12:38 | Merge 3.44.2 changes into the wal2-3.44 sub-branch. (Leaf check-in: 0118e8c981 user: drh tags: wal2-3.44) | |
12:33 | Merge 3.44.2 changes into the begin-concurrent-3.44 sub-branch. (Leaf check-in: 6d97426fff user: drh tags: begin-concurrent-3.44) | |
11:41 | Version 3.44.2 (check-in: ebead0e723 user: drh tags: release, branch-3.44, version-3.44.2) | |
2023-11-23
| ||
12:12 | Another assertion fault fix, similar to [a9443dbfbe25e588]. (check-in: f796da626b user: drh tags: branch-3.44) | |
11:59 | Fix a incomplete assert() statement in sqlite3SubqueryColumnTypes(). (Closed-Leaf check-in: 844e05ed82 user: drh tags: mistake) | |
11:45 | Fix harmless compiler warnings in debugging code. (check-in: db40272c36 user: drh tags: branch-3.44) | |
11:29 | Fix an fts5 problem that could occur when mixing regular and secure delete operations on a single table. (check-in: 25fb5a540b user: drh tags: branch-3.44) | |
11:21 | Increase the version number to 3.44.2. (check-in: 73d3cb7909 user: drh tags: branch-3.44) | |
11:18 | Fix an fts5 problem that could occur when mixing regular and secure delete operations on a single table. (check-in: 8eb3f40021 user: dan tags: trunk) | |
07:10 | Fix output redirect bug reported in the forum. (check-in: 60bdd5c3d9 user: larrybr tags: console-io-lib) | |
07:08 | Fix output redirect bug reported in the forum. (check-in: ce542fee6f user: larrybr tags: trunk) | |
07:06 | Fix output redirect bug reported in the forum. (check-in: 2ab256bc0b user: larrybr tags: branch-3.44) | |
2023-11-22
| ||
22:59 | Minor doc fix in src/betreeInt.h, prompted by an email report. No code changes. (check-in: 30d49aaed2 user: stephan tags: trunk) | |
21:24 | For CLI build with unused function warnings on, #ifdef out a console I/O function, fPutbUtf8(). (check-in: da36f90d94 user: larrybr tags: trunk) | |
21:15 | Add documentation for new fts5 auxiliary function APIs. (check-in: 9be8969edd user: dan tags: fts5-token-data) | |
20:02 | Defer building xInstToken() hash-table until it is to be used. (check-in: 9b005085ff user: dan tags: fts5-token-data) | |
19:02 | Fix tokendata=1 and xInstToken() APIs for detail=none and detail=column tables. (check-in: 37b271c19d user: dan tags: fts5-token-data) | |
17:13 | Correct the URL for loading sqlite3-worker1-bundler-friendly.mjs from sqlite3-worker1-promiser-bundler-friendly.js, so that the promiser can be used in bundler-using environments. Problem reported via email. (check-in: b1128838f9 user: stephan tags: branch-3.44) | |
17:11 | Correct the URL for loading sqlite3-worker1-bundler-friendly.mjs from sqlite3-worker1-promiser-bundler-friendly.js, so that the promiser can be used in bundler-using environments. Problem reported via email. (check-in: 753a752189 user: stephan tags: trunk) | |
16:32 | Merge the 3.44.1 patches into a new sub-branch of reuse-schema. (check-in: 24fc47afbd user: drh tags: reuse-schema-3.44) | |
16:15 | Merge the version 3.44.1 patch into a new sub-branch of bedrock. (check-in: 84f4215716 user: drh tags: bedrock-3.44) | |
15:34 | Merge the 3.44.1 patches into a sub-branch of wal2. (check-in: 2672572cc3 user: drh tags: wal2-3.44) | |
15:29 | Merge the 3.44.1 patches into a new sub-branch of begin-concurrent. (check-in: 7a1a114baf user: drh tags: begin-concurrent-3.44) | |
14:18 | Version 3.44.1 (check-in: d295f48e8f user: drh tags: release, branch-3.44, version-3.44.1) | |
2023-11-21
| ||
22:36 | Inserts invalid JSONB should return "malformed JSON", not a json path error. (check-in: 306ee66fbd user: drh tags: jsonb) | |
20:13 | Direct editing of JSONB using json_insert() and json_set(). (check-in: fffb7a9538 user: drh tags: jsonb) | |
19:05 | Correct blob-to-text rendering in some corner cases. (check-in: 7822e0e59f user: drh tags: jsonb) | |
18:46 | Pickup minor stylistic changes related to console I/O and, for Windows builds, get fact of UTF-16 translation into the sign-on banner. (a straight cherry-pick) (check-in: d7a59e7946 user: larrybr tags: branch-3.44) | |
18:37 | Pickup minor changes related to console I/O. (check-in: 24774e77c7 user: larrybr tags: console-io-lib) | |
18:26 | Merge console I/O changes for Windows CLI. (check-in: 935a8a8ee7 user: larrybr tags: trunk) | |
18:23 | Fix the translation of JSON5 numeric values from BLOB into text. (check-in: 40c4fb441f user: drh tags: jsonb) | |
17:54 | Merge all recent trunk fixes and enhancements into the jsonb branch. (check-in: 6d78d50ed2 user: drh tags: jsonb) | |
17:51 | Make edits directly to the JSONB BLOB when the input to json_replace() is a JSONB. (check-in: d69c6acef5 user: drh tags: jsonb) | |
15:55 | Sync w/trunk as pre-merge-to-trunk sanity check. (check-in: 448d6a1182 user: larrybr tags: console-io-lib) | |
12:02 | Fix the trace3-4.4 test to be more rebust against timing quirks. (check-in: 8936daa082 user: drh tags: trunk) | |
2023-11-20
| ||
15:58 | Back out an incorrect change to the sqlite3ExprCompareSkip() function from long ago. (check-in: 89658abbcd user: drh tags: branch-3.44) | |
15:54 | Back out an incorrect change to the sqlite3ExprCompareSkip() function that was added way back on 2019-08-22 for [44578865fa7baf97|check-in 44578865fa7ba] and which was only today discovered to be incorrect by forum post 45ec3d9788. (check-in: f5b3eb0fc8 user: drh tags: trunk) | |
13:59 | Arrange to not compile unused console I/O function. (check-in: 184a0cd2e8 user: larrybr tags: branch-3.44) | |
13:12 | Convert an assert in OP_VCheck into a branch that aborts the opcode, as this can happen on some very obscure conditions, as discovered by dbsqlfuzz. (check-in: 0d5f68717c user: drh tags: branch-3.44) | |
13:06 | Convert an assert in OP_VCheck into a branch that aborts the opcode, as this can happen on some very obscure conditions, as discovered by dbsqlfuzz. Test case in TH3. (check-in: 7946c79567 user: drh tags: trunk) | |
12:00 | Cherry pick additional assert() fixes from trunk into the branch-3.44 branch. (check-in: 6d8a8b7002 user: drh tags: branch-3.44) | |
11:50 | Fix an assert() in fts5 that could be true following an OOM or IO error in contentless-delete mode. (check-in: 80a0bd7a69 user: drh tags: branch-3.44) | |
11:40 | Fix an assert() in fts5 that could be true following an OOM or IO error in contentless-delete mode. (check-in: 3fe89238c3 user: dan tags: trunk) | |
00:21 | Cherrypick shell1.test fix. (check-in: 91c888eddb user: larrybr tags: trunk) | |
00:20 | Cherrypick shell1.test fix. (check-in: 39e30c5f9c user: larrybr tags: console-io-lib) | |
2023-11-19
| ||
17:33 | Fix test 5.0 in shell1.test for Windows. (A double-quote wrapped single-quote needs no further treatment to be recognized as a single single-quote.) (check-in: aaa73400c4 user: larrybr tags: branch-3.44) | |
2023-11-18
| ||
22:10 | Merge changes to do Windows console I/O with UTF-16. (check-in: f782054e7c user: larrybr tags: branch-3.44) | |
20:24 | Correct conditional compilation issue seen with MSVC in the Win32 mutex subsystem. (check-in: 6c069c5d66 user: drh tags: branch-3.44) | |
18:36 | Correct conditional compilation issue seen with MSVC in the Win32 mutex subsystem. (check-in: 6f8f4bfe60 user: mistachkin tags: trunk) | |
17:20 | When ENABLE_SETLK is defined, avoid ever blocking on the lock mutex in os_unix.c when requesting an exclusive lock. (check-in: eb36d475e9 user: dan tags: trunk) | |
12:06 | Adjust an assert() in fts5WritePoslistData() so that it only applies if there have been no prior errors. dbsqlfuzz 25dca9b2568f67dc78a0e32ff280133fe71994bd. (check-in: 257cdbab90 user: drh tags: trunk) | |
11:23 | Another assertion fault fix, similar to [a9443dbfbe25e588]. dbsqlfuzz 2d9af4e94aca188e0092900eec711401c5d51687. (check-in: 3afaeac56d user: drh tags: trunk) | |
2023-11-17
| ||
19:01 | When SQLITE_ENABLE_SETLK_TIMEOUT is defined, use a separate mutex in os_unix.c for each shm locking slot. (check-in: 64691df980 user: dan tags: trunk) | |
17:55 | Add the new "run-fuzzcheck" target on the autoconf unix makefile. Requires that FUZZDB be set to the name of the fuzz-data database file. (check-in: 8fa3915dbf user: drh tags: trunk) | |
17:25 | Add an assert() to prove the sqlite3_prepare() always either returns SQLITE_OK or else leaves *ppStmt set to NULL. See forum post 70bb8576c6c084c2. (check-in: feadd40242 user: drh tags: trunk) | |
17:10 | When SQLITE_ENABLE_SETLK_TIMEOUT is defined, use a separate mutex in os_unix.c for each shm locking slot. (Closed-Leaf check-in: 4098df9652 user: dan tags: unix-setlk-timeout-mutexes) | |
17:03 | Merge the latest trunk enhancements and fixes into the jsonb branch. (check-in: 162f0509ef user: drh tags: jsonb) | |
12:22 | Fix harmless compiler warnings in debugging code. (check-in: ce6a75622e user: drh tags: trunk) | |
11:58 | Fix an incorrect assert() associated with ALTER TABLE where an unknown aggregate function contains an ORDER BY clause. dbsqlfuzz e0900262dadd5c78c2226ad6a435c7f0255be2cd. (check-in: a9443dbfbe user: drh tags: trunk) | |
2023-11-16
| ||
21:11 | When querying a tokendata=1 fts5 table, do not use a prefix cursor for the case where the term has only one variant. (check-in: d711c96ba8 user: dan tags: fts5-token-data) | |
20:50 | Cherrypick changes to simplify and make more rational how console I/O package features are selected. (Leaf check-in: b20c9f1785 user: larrybr tags: consio-3.44) | |
18:31 | Simplify and make more rational how console I/O package features are selected. (Motivated by Fiddle and other command-line utilities to soon use the package.) No substantive code-execution changes. (check-in: 1cde05877b user: larrybr tags: console-io-lib) | |
2023-11-15
| ||
20:32 | Both json_remove() jsonb_remove() work on pure JSONB as long as the input is JSONB. (check-in: 68d551730b user: drh tags: jsonb) | |
19:21 | Some simple test cases for JSONB direct remove. (check-in: 8cb4d2cbfc user: drh tags: jsonb) | |
19:19 | Changes so that if SQLITE_ENABLE_SETLK_TIMEOUT is defined as 2 instead of 1, all blocking locks are taken for a single millisecond and the default busy-handler invoked as normal. (check-in: 79e24ec3dd user: dan tags: trunk) | |
18:55 | jsonb_remove() now works without having to use a JsonNode parse, assuming that the input is JSONB. (check-in: 5207679e92 user: drh tags: jsonb) | |
18:47 | The jsonb_remove() routine now appears to be working. (Closed-Leaf check-in: e76d48137e user: drh tags: jsonb-remove) | |
16:54 | Get Fiddle build to succeed. (It runs, too, but not from changes here.) (check-in: 957ebaa2be user: larrybr tags: consio-3.44) | |
16:10 | Work toward getting jsonb_remove() to work directly on JSONB blobs. (check-in: a79ff8e58f user: drh tags: jsonb-remove) | |
15:20 | Changes to console I/O for Fiddle build, to always defer to C library (as before.) A WIP, pending testing with Fiddle build. (check-in: 45b8061e75 user: larrybr tags: consio-3.44) | |
14:09 | Improvements to the description of sqlite3_errmsg() and sqlite3_errstr(). (check-in: fe5cc4169c user: drh tags: trunk) | |
13:23 | Merge all the latest enhancements and fixes from trunk into the jsonb branch. (check-in: ba91408f4c user: drh tags: jsonb) | |
11:45 | Add implementation of xInstToken() API. (check-in: a34b26fe7f user: dan tags: fts5-token-data) | |
11:31 | Fix an exception misuse in test-opfs-vfs.js. (check-in: 9264955e6e user: stephan tags: trunk) | |
08:59 | JNI: add more wrapper1 Sqlite.Blob tests. (check-in: d63f6e1ffd user: stephan tags: trunk) | |
08:29 | JNI: clear out the sqlite3_context native pointer after calling UDF callbacks which do not have an argv (as was already done for those which have an argv). Add related tests and code commentary. (check-in: 138f40543b user: stephan tags: trunk) | |
06:28 | JNI doc updates. (check-in: 1b1f36a206 user: stephan tags: trunk) | |
06:10 | JNI: add the @Experimental annotation and mark all java.nio.ByteBuffer-related methods with it. (check-in: 0f4b223102 user: stephan tags: trunk) | |
05:08 | JNI test code cleanups. (check-in: 09142ac143 user: stephan tags: trunk) | |
04:55 | JNI: add CONFIG_LOG and CONFIG_SQLLOG support to wrapper1. Code-adjacent cleanups. (check-in: 83c49b9e71 user: stephan tags: trunk) | |
03:02 | JNI: apply an internal level of API indirection to avoid having to work with massively-mangled names for the various sqlite3_config() overloads. (check-in: 24f20663b1 user: stephan tags: trunk) | |
2023-11-14
| ||
16:53 | Add NEVER() to a branch made unreachable by [6f9eed826f5b3d1c]. (check-in: 26dcaa34e3 user: drh tags: trunk) | |
14:59 | JNI: reimplement Tester2.execSql() using the high-level API. (check-in: 3a69679e41 user: stephan tags: trunk) | |
14:50 | Fix another obscure problem with nested aggregates. dbsqlfuzz 04408efc51. This might be a better fix than the one at [4a587c3492faa994]. (check-in: 6f9eed826f user: dan tags: trunk) | |
14:38 | JNI: add Sqlite.Stmt.step(boolean) overload which returns the result code of sqlite3_step() unless passed true, in which case it throws for any result other than ROW or DONE. The intent is to simplify handling of LOCKED and BUSY errors. (check-in: f4f1cc201a user: stephan tags: trunk) | |
13:51 | Extra PRAGMA vdbe_addoptrace output showing when OP_Column gets translated into OP_Copy due to using a coroutine instead of a cursor. (check-in: eba180e779 user: drh tags: trunk) | |
05:33 | JNI: use ByteBuffer.limit() instead of ByteBuffer.capacity() when figuring out where the logical end of a ByteBuffer is, for reasons explained at length in new code comments. This is unfortunately slower but is the correct way to do it. (check-in: 51539419ed user: stephan tags: trunk) | |
04:59 | JNI: add sqlite3_blob_read_nio_buffer() and iron out the blob/ByteBuffer interface somewhat. (check-in: 7df317b448 user: stephan tags: trunk) | |
03:31 | Cherry-pick some assert()s to cover misuse of *Put*() from 500+ shell.c callers. (check-in: c1a53c28a4 user: larrybr tags: consio-3.44) | |
03:24 | Add a few asserts into *Put*() functions to catch calls that might cause an address fault. (check-in: 2341f9b6a4 user: larrybr tags: console-io-lib) | |
02:43 | JNI: change sqlite3_prepare_multi()'s exception-handling semantics to be more C-like and, to support that, add the package-private sqlite3_jni_db_error() method to set the db error state from package-level Java code. (check-in: 46656b3543 user: stephan tags: trunk) | |
01:33 | JNI: add sqlite3_blob_write() overload which accepts a java.nio.ByteBuffer. Cleanups in adjacent code. (check-in: ca32af8542 user: stephan tags: trunk) | |
2023-11-13
| ||
23:11 | JNI: add sqlite3_column_nio_buffer() and sqlite3_value_nio_buffer() using an only-slightly roundabout approach to creating properly-sized ByteBuffer objects. (check-in: efbc82b218 user: stephan tags: trunk) | |
18:35 | JNI: add sqlite3_result_nio_buffer() and tests. Discover that we cannot create sensible sqlite3_column_nio_buffer() or sqlite3_value_nio_buffer() counterparts because of ByteBuffer interface limitations. (check-in: 44b4df01ff user: stephan tags: trunk) | |
17:45 | Manual merge of branch-3.44 with 3 sources affected/created by console-io-lib changes. (check-in: 18ebcf117a user: larrybr tags: consio-3.44) | |
17:26 | Mistaken creation by a Fossil expert-to-be-maybe. (Leaf check-in: 2e3e98a4a7 user: larrybr tags: mistake) | |
15:59 | Cure many warnings from gcc, clang and CL.exe. (check-in: 29ea2a3aad user: larrybr tags: console-io-lib) | |
14:58 | JNI: add sqlite3_bind_nio_buffer() and initial tests for binding ByteBuffer objects as blobs on JVMs which have JNI support for nio buffers. (check-in: b10ce1ef82 user: stephan tags: trunk) | |
14:29 | Add new fts5 API xQueryToken(). (check-in: 828566392b user: dan tags: fts5-token-data) | |
13:01 | Fix var-intro after executable code departure from old C. (check-in: 08996f4fd5 user: larrybr tags: console-io-lib) | |
12:53 | Slight cleanup of length-limited strpbrk() replacement, and eliminate strpbrk() call. (check-in: 97e2c9621e user: larrybr tags: console-io-lib) | |
12:05 | Remove an incorrect ALWAYS() and NEVER(). (check-in: 94f6209386 user: drh tags: branch-3.44) | |
05:24 | Enhance console_io to permit emits limited in various ways, such as valid UTF-8, upto control chars, or with counted limits, all getting away from 0-termination as the sole limit. In CLI, use this capability to avoid certain emit-chars-singly procedures that were breaking up UTF-8 characters. This fixes broken json mode output (on Windows) and (maybe) C-literal-like emits. (check-in: 906c5c4082 user: larrybr tags: console-io-lib) | |
2023-11-12
| ||
19:57 | Add sqlite3_x86.exe unversioned binary. (check-in: a731cdddbb user: larrybr tags: console-io-lib) | |
03:58 | Use setOutputStream() to designate implicit output for oput{z,f}() emit functions, and use them extensively. (check-in: 7850fb98a1 user: larrybr tags: console-io-lib) | |
00:43 | Write BOM without fwrite(), using sputz() so that if it goes to the console, it is translated "properly". (check-in: 06ef96a823 user: larrybr tags: console-io-lib) | |
2023-11-11
| ||
22:53 | Remove SHELL_LEGACY_CONSOLE_IO PP symbol and code it made active. (It is in the repo if ever needed/wanted, but it is just inferior or dead code now.) (check-in: 27c5bf6563 user: larrybr tags: console-io-lib) | |
20:46 | Complete shell transition to using {f,o,e}put{f,z}() emit functions. (check-in: 923c6b8b3a user: larrybr tags: console-io-lib) | |
14:50 | JNI wrapper1: when checking for an out-of-bounds statement column index, perform the is-statement-finalized check before the range check so that the former exception trumps the latter. (check-in: 0832f9a8e9 user: stephan tags: trunk) | |
14:43 | Do not cache a statement's column count in the JNI wrapper1 API because an ALTER TABLE via another statement may invalidate it, as reported in forum post 6d80efd58d4591c7. (check-in: a6ab88e9a6 user: stephan tags: trunk) | |
13:09 | Fix malf with redirected input due to bad assumption that stdin is a console in the fgets() replacement. (check-in: 79d1f2c101 user: larrybr tags: console-io-lib) | |
06:20 | Pervasive changes to console_io.{c,h} in support of simplifying ubiquitous emit ops in shell, and to get better control of console streams that might be opened only via .read or .output commands. Changes to shell to use {s,o,e}put{f,z}(...) calls for initial testing, but this check-in has few such conversions so that most will be in a separate check-in. Many renames to better follow recent coding convention. This code seems to be working, but has not been tested on difficult platforms or with multiple console hosts yet. So it is a WIP. (check-in: 14762a004c user: larrybr tags: console-io-lib) | |
2023-11-10
| ||
21:03 | Fix another problem with mixed join types and the RIGHT JOIN strength-reduction optimization. (check-in: 8f01f8b260 user: drh tags: branch-3.44) | |
20:55 | Fix another problem with mixed join types and the RIGHT JOIN strength-reduction optimization. Forum post befdab472d. (check-in: f1eae19231 user: dan tags: trunk) | |
20:46 | Additional debugging information on the tree-dump of the BETWEEN operator. (check-in: aca31e49d1 user: drh tags: trunk) | |
20:35 | Remove an incorrect ALWAYS() that was inserted yesterday [1e039b6eb59c0001]. (check-in: 12885e298b user: drh tags: trunk) | |
18:59 | Merge recent trunk enhancements and fixes into the jsonb branch. (check-in: 091a5f058d user: drh tags: jsonb) | |
17:49 | Ensure 8-byte alignment of data structues in sqlite3_database_file_object(). This should have appeared on trunk originally and then be cherry-picked onto the branch. Oh well.... (check-in: ac39800bb2 user: drh tags: trunk) | |
16:29 | Remove a NEVER() from whereAddIndexedExpr() that is reachable if there is an unknown indexed function in the schema. (check-in: a976b7208f user: drh tags: trunk) | |
15:20 | Fix an obscure problem with the join-strength-reduction optimization that could occur when mixing LEFT and RIGHT joins in the same query. (check-in: dcf1c13781 user: drh tags: branch-3.44) | |
15:03 | Fix an obscure problem with the join-strength-reduction optimization that could occur when mixing LEFT and RIGHT joins in the same query. Forum post 7f74ce0bee and separately post d64f0abe723ac98e. The problem was introduced by check-in [d747afda5683ca5f]. (check-in: 530d10e93a user: dan tags: trunk) | |
15:01 | Expose the missing SQLITE_SUBTYPE to wasm. (check-in: 7bebfe20e7 user: stephan tags: branch-3.44) | |
15:00 | Expose the missing SQLITE_SUBTYPE to wasm. (check-in: ac9534b2ce user: stephan tags: trunk) | |
15:00 | Expose the missing SQLITE_SUBTYPE to JNI. (check-in: 0f92f4c90e user: stephan tags: trunk) | |
14:15 | Expose SQLITE_RESULT_SUBTYPE to JNI. (check-in: 3bf75875b8 user: stephan tags: trunk) | |
13:13 | Fix a potential UAF caused by JSON parser cache spill. (Leaf check-in: ce3fc4fc23 user: drh tags: bedrock-3.43) | |
2023-11-09
| ||
18:41 | Ensure 8-byte alignment of data structues in sqlite3_database_file_object(). (check-in: 3cfcaafaff user: drh tags: branch-3.44) | |
17:55 | Expose SQLITE_RESULT_SUBTYPE to wasm. (check-in: fc03988650 user: stephan tags: branch-3.44) | |
17:53 | Expose SQLITE_RESULT_SUBTYPE to wasm. (check-in: 6d2fe9848b user: stephan tags: trunk) | |
17:42 | Add the SQLITE_RESULT_SUBTYPE flag for application-defined functions. Add the -DSQLITE_STRICT_SUBTYPE=1 compile-time option that raises an error if any function invokes sqlite3_result_subtype() without the SQLITE_RESULT_SUBTYPE flag. SQLITE_RESULT_SUBTYPE prevents an indexed value of that function from being used to replace an equivalent expression, since the indexed expression does not carry the subtype. (check-in: 65a9cfc466 user: drh tags: branch-3.44) | |
17:36 | Add the SQLITE_RESULT_SUBTYPE flag for application-defined functions. Add the -DSQLITE_STRICT_SUBTYPE=1 compile-time option that raises an error if any function invokes sqlite3_result_subtype() without the SQLITE_RESULT_SUBTYPE flag. SQLITE_RESULT_SUBTYPE prevents an indexed value of that function from being used to replace an equivalent expression, since the indexed expression does not carry the subtype. Fix for the problem described at forum post 68d284c86b082c3e. (check-in: ba789a7804 user: drh tags: trunk) | |
17:28 | Fix compilation issue seen with MSVC. (check-in: 0dfe790d81 user: mistachkin tags: trunk) | |
17:26 | Put an ALWAYS on an true branch. (Closed-Leaf check-in: 1e039b6eb5 user: drh tags: func-rw-subtype) | |
16:52 | Futher documentation refinements. (check-in: 311c2eba93 user: drh tags: func-rw-subtype) | |
15:01 | Fixes: (1) In the ->> function, instead of setting a subtype and clearing it, do not set it in the first place, as doing the set would trigger an error under SQLITE_STRICT_SUBTYPE. (2) Allow the SQLITE_STRICT_SUBTYPE through the property filter on sqlite3_create_function(). (check-in: 6195468b14 user: drh tags: func-rw-subtype) | |
13:00 | A .class file build dependencies fix in the JNI build. (check-in: 8cc3291516 user: stephan tags: trunk) | |
12:58 | Add the SQLITE_STRICT_SUBTYPE compile-time option. This change reveals that the current SQLITE_RESULT_SUBTYPE design does not work unless we tag the ->> operator with SQLITE_RESULT_SUBTYPE. But that will disable an important optimization. (check-in: e98a9a65dd user: drh tags: func-rw-subtype) | |
12:48 | Add some notes about the JNI pointer-passing approach and convert a couple of potential NullPointerExceptions into appropriate C result codes. Clarify that invocation of undefined behaviour from the Java API does not (due to the addition of defensive code) mean the same thing as it does in C (e.g. no NULL pointer dereferences). (check-in: 19c4778f45 user: stephan tags: trunk) | |
12:17 | Do not replace expressions that return subtypes with values taken from an index. (check-in: a35d13db09 user: drh tags: func-rw-subtype) | |
12:08 | Omit the new SQLITE_VALUE_SUBTYPE name. Stay with legacy SQLTIE_SUBTYPE. Add extra documentation to sqlite3_value_subtype() and sqlite3_result_subtype() indicating that the SQLITE_SUBTYPE and SQLITE_RESULT_SUBTYPE properties are required on functions that use those interfaces. (check-in: 563ad3be60 user: drh tags: func-rw-subtype) | |
12:01 | Two more JNI build fixes for Windows/MinGW, reported in forum post 4f949edc312d2a75. (check-in: a3f9c39086 user: stephan tags: trunk) | |
01:56 | JSON5 bug fix: Escape double-quotes that occur inside of single-quoted strings. (check-in: 6cc57bb2ce user: drh tags: branch-3.44) | |
01:54 | JSON5 bug fix: Escape double-quotes that occur inside of single-quoted strings. Forum post ddcad3e884. (check-in: 1c98d46d60 user: drh tags: trunk) | |
2023-11-08
| ||
21:38 | Make a distinction between functions that consume subtypes and functions that generate subtypes. (check-in: 48a92e3ad8 user: drh tags: func-rw-subtype) | |
18:08 | Do not cover expressions using an indexed expression if the indexed expression is a function that might set a subtype. (Closed-Leaf check-in: e908b26a99 user: drh tags: idx-expr-fix) | |
17:11 | Merge recent trunk enhancements into the jsonb branch, and especially the finer-grain characterization of JSON function properties. (check-in: 72393b003f user: drh tags: jsonb) | |
16:37 | More precise characterization of JSON functions. Indicate when functions might return JSON (subtype 'J') and when they make use of the function argument cache. (check-in: b2b62546c4 user: drh tags: trunk) | |
15:56 | Have the shell tool emit a warning if the user attempts to use ".scanstats vm" in a non-SQLITE_ENABLE_BYTECODE_VTAB build. (check-in: 3978c084a5 user: dan tags: trunk) | |
15:51 | Remove old files related to wapptest.tcl from test/ directory. (check-in: dd3e7b5bca user: dan tags: trunk) | |
15:49 | Avoid blocking as part of passive checkpoint operations, even if SQLITE_ENABLE_SETLK_TIMEOUT is defined. (check-in: e5ecc404ca user: dan tags: trunk) | |
15:34 | Remove an unused/invalid test from the wasm suite. (check-in: 916ae89874 user: stephan tags: trunk) | |
14:55 | Add declarations for new fts5 API functions. (check-in: b8a48cc18c user: dan tags: fts5-token-data) | |
12:56 | JNI build fixes for platforms where the jint type is not the same as int, as reported in forum post 9089d2049a. (check-in: b32b087327 user: stephan tags: trunk) | |
00:45 | Suppress harmless UBSAN warnings about memory overflow in OP_AddImm. The exact same machine code is generated by GCC. (check-in: b0594383b9 user: drh tags: trunk) | |
00:12 | Changes a no-op call to freeP4() into an assert(). (check-in: 32a7b1bd4d user: drh tags: trunk) | |
2023-11-07
| ||
20:56 | Add -DSQLITE_ENABLE_SETLK_TIMEOUT=1 to a release-test configuration. (check-in: cd3e38fb0f user: dan tags: trunk) | |
20:11 | Fix an assert() that could fail within calls to sqlite3_snapshot_open() in SQLITE_ENABLE_SETLK_TIMEOUT builds. (check-in: 84634bc268 user: dan tags: trunk) | |
19:39 | An attempt to work around compilation errors on MinGW reported in forum post 9089d2049a. (check-in: d5658a3ee4 user: stephan tags: trunk) | |
19:30 | Refactor MBCS/UTF-8 translation to avoid extra allocations, supporting non-formatted (faster) output. Some code cleanup. Wrap .system/.shell command exection with restoration of startup console mode and renewing mode setup. Changes to make legacy MBCS build work better (than legacy did, even with --no-utf8.) (check-in: d5e88fcde5 user: larrybr tags: console-io-lib) | |
19:15 | Update the documentation to the sqlite3_set_auxdata() and sqlite3_get_auxdata() routines to make it clear that they do not work as one might expect when they are called during query planning, instead of during query execution. The JSON routines misuse those interfaces, so add a special flag to JSON routines that prevents them from being invoked during query planning. (check-in: 36259009c5 user: drh tags: branch-3.44) | |
19:03 | Update the documentation to the sqlite3_set_auxdata() and sqlite3_get_auxdata() routines to make it clear that they do not work as one might expect when they are called during query planning, instead of during query execution. The JSON routines misuse those interfaces, so add a special flag to JSON routines that prevents them from being invoked during query planning. Fix for the problem in forum post a655ee159eca1ea5. (check-in: 796a23f9ee user: drh tags: trunk) | |
19:02 | Do not allow aggregate or window functions in UPDATE statements. (Leaf check-in: fce776ccce user: dan tags: no-aggregates-in-update) | |
17:15 | JNI: during static init record whether the current JVM supports JNI-level access to java.nio.ByteBuffer raw memory, and add sqlite3_jni_supports_nio() to query that. (check-in: fb8dbb77a4 user: stephan tags: trunk) | |
15:56 | Add Sqlite.prepareMulti() to JNI wrapper1, for preparing multiple statements from a single input. (check-in: e4670d68b5 user: stephan tags: trunk) | |
13:44 | Diverse minor cleanups in the JNI pieces. (check-in: 35233dd900 user: stephan tags: trunk) | |
13:22 | Flesh out [7a63b5b65a79] to be able to build JNI with or without SQLITE_ENABLE_COLUMN_METADATA. (check-in: fcee41b3d4 user: stephan tags: trunk) | |
02:41 | Get dependencies into make recipes. Get legacy console I/O (-DSHELL_LEGACY_CONSOLE_IO) working. Due to movement of MBCS/UTF-8 translation into traditional stream I/O simulacra, the input translation does not happen the same way. (It works the same, but fails differently and a bit better.) Added printf() and fputs() look-alikes, and made CLI use them. (check-in: 1721dc6a43 user: larrybr tags: console-io-lib) | |
2023-11-06
| ||
21:57 | Add -DSQLITE_ENABLE_COLUMN_METADATA to the JNI build, as per forum post 9205518c0568fdf0. Add tests for the functions that flag enables so that the build will fail if that flag is missing. (check-in: 7a63b5b65a user: stephan tags: trunk) | |
19:16 | Merge latest trunk into this branch. (check-in: 3a869cf1f8 user: dan tags: fts5-token-data) | |
19:08 | Update the srctree-check.tcl script and child script so that they can be run on a read-only source tree and so that if any inconsistencies are found, the script returns a non-zero exit code and thus halts the build. (check-in: a0cc7e8117 user: drh tags: branch-3.44) | |
19:01 | Fix an fts5 problem where a transaction consisting of (a) a DELETE on rowid X, (b) a prefix query, and (c) an INSERT on rowid X, could corrupt the index. (check-in: 34af510a56 user: drh tags: branch-3.44) | |
18:40 | Fix an fts5 problem where a transaction consisting of (a) a DELETE on rowid X, (b) a prefix query, and (c) an INSERT on rowid X, could corrupt the index. (check-in: c2058a045b user: dan tags: trunk) | |
16:32 | Merge trunk changes into this branch. (check-in: ac5570614e user: dan tags: fts5-token-data) | |
15:31 | Move console_io lib to its own subdirectory, etc/consio . (check-in: 1d0583f2eb user: larrybr tags: console-io-lib) | |
15:15 | Some renaming, warnings cured, and more coding convention conformance. (check-in: 58815f0ad2 user: larrybr tags: console-io-lib) | |
13:24 | Add an fputs() equivalent to console I/O lib, and use in CLI. (check-in: d661f90724 user: larrybr tags: console-io-lib) | |
03:09 | Cause CLI to use console_io library. (check-in: bf66a7c1d3 user: larrybr tags: console-io-lib) | |
00:15 | Make MSVC accept it, too. (Cannot use static const int as part of a constant expression?) (check-in: bb278d2496 user: larrybr tags: console-io-lib) | |
2023-11-05
| ||
23:55 | Make it buildable. Pull test program from testee. Zap stray fprintf(). (check-in: 2b850aca1e user: larrybr tags: console-io-lib) | |
19:42 | Input working. No line-editor provisions yet. (WIP, but suitable for testing.) (check-in: e8568b1d92 user: larrybr tags: console-io-lib) | |
04:20 | Add incremental blob I/O support to JNI wrapper1. (check-in: 7f1c76fe93 user: stephan tags: trunk) | |
03:37 | JNI wrapper1 normalizeSql() now throws UnsupportedOperationException, instead of returning null, if built without SQLITE_ENABLE_NORMALIZE. Remove SQLITE_PREPARE_NORMALIZE from the JNI interface because it's a legacy no-op. (check-in: d081a12669 user: stephan tags: trunk) | |
01:55 | Add authorizer support to JNI wrapper1. (check-in: 773f987386 user: stephan tags: trunk) | |
01:39 | Add progress-handler support to JNI wrapper1. Correct the return type of the extended_result_codes() JNI binding and expose it to wrapper1. (check-in: 6c0acfdce2 user: stephan tags: trunk) | |
01:21 | Setup, takedown, mode set and output working. No input yet. (WIP) (check-in: dfea85be1f user: larrybr tags: console-io-lib) | |
01:14 | Add update-hook support to JNI wrapper1. (check-in: 6c584cf271 user: stephan tags: trunk) | |
00:48 | Add commit/rollback hook support to JNI wrapper1. (check-in: ff3d44fe42 user: stephan tags: trunk) | |
00:02 | Add busy-handler support to JNI wrapper1. (check-in: dcf579ab2d user: stephan tags: trunk) | |
2023-11-04
| ||
23:37 | Bind collation and collation-needed to JNI wrapper1 and correct the callback return type for collation-needed callbacks in the lower-level JNI binding. (check-in: 0f67314068 user: stephan tags: trunk) | |
22:47 | Wrap the sqlite3_backup API in the JNI wrapper1 API. (check-in: 3ee6cc29d2 user: stephan tags: trunk) | |
21:51 | Reimplement auto-extensions in Java for use with the JNI wrapper1 API. (check-in: 14ed4c6453 user: stephan tags: trunk) | |
21:44 | Ensure that the YYYY-MM-DD input to date and time functions has been normalized prior to returning a result. Forum post 6bb476897e. (check-in: b692eb8ccb user: drh tags: trunk) | |
16:01 | Expose context_db_handle() to the JNI wrapper1 API and clean up some related tests. (check-in: c23123af7d user: stephan tags: trunk) | |
13:37 | Rework the JNI wrapper1 variants of status() and db_status() to be more Java-esque. (check-in: 40ad392067 user: stephan tags: trunk) | |
13:16 | Bind the bool-flag sqlite3_db_config() variants to the JNI wrapper1 API. (check-in: b5cdcb9279 user: stephan tags: trunk) | |
12:53 | Bind the trace API to the JNI wrapper1 API and add a way to map the native-level db/stmt types to their high-level counterparts (required for translating callbacks such as tracers). (check-in: 702910e0d1 user: stephan tags: trunk) | |
02:22 | Define interface between project command-line apps and a console I/O "library". (check-in: 64abef8314 user: larrybr tags: console-io-lib) | |
2023-11-03
| ||
18:45 | Back out the ALWAYS inserted late yesterday. The fuzzer discovered a counter-example. (check-in: 570635575c user: drh tags: trunk) | |
17:20 | Fix a case where adjacent tokens are handled incorrectly by the fts5 snippet() function. (check-in: 8f5e9c192f user: dan tags: trunk) | |
13:00 | Wrap more of the stmt API behind the JNI wrapper1 API. (check-in: 8fea23dc3a user: stephan tags: trunk) | |
12:09 | Enhance the JSONB lookup routine with logic to apply edits. The new logic is currently unused and hence untested but does not create any regressions. (check-in: b12110276f user: drh tags: jsonb) | |
11:53 | Bind the sqlite3_keyword_...() and sqlite3_compileoption_...() family of functions to the JNI wrapper1 API. (check-in: b27242414d user: stephan tags: trunk) | |
11:41 | Update the tool/srctree-check.tcl script so that it verifies that autoconf has been run following edits to VERSION. (check-in: 52ab3deba4 user: drh tags: trunk) | |
11:35 | Merge all the latest trunk fixes and enhancements into the jsonb branch. (check-in: b089bf4637 user: drh tags: jsonb) | |
10:15 | Update the version number to 3.45.0 to begin the next development cycle. (check-in: 15b618e92a user: drh tags: trunk) | |
2023-11-02
| ||
22:39 | Mark a branch made always-true by the penultimate check-in with ALWAYS(). (check-in: 268b5984a4 user: drh tags: trunk) | |
22:11 | In the previous check-in, use a u32 instead of an int, to make it easier to prove that the integer will never overflow. (check-in: 51002079e0 user: drh tags: trunk) | |
21:02 | Fix a spurious "misuse of aggregate function" error that could occur when an aggregate function was used within the FROM clause of a sub-select of the select that owns the aggregate. e.g. "SELECT (SELECT x FROM (SELECT sum(t1.a) AS x)) FROM t1". Forum post c9970a37ed. (check-in: 4470f657d2 user: dan tags: trunk) | |
18:22 | Add the "remove_diacritics" option to the fts5 trigram tokenizer. (check-in: 0d50172477 user: dan tags: trunk) | |
18:10 | Fix a problem with amalgamation builds on this branch. (Closed-Leaf check-in: 8f046c82c9 user: dan tags: fts5-trigram-diacritics) | |
18:08 | Merge latest JNI pieces into trunk. (check-in: e8c97faec3 user: stephan tags: trunk) | |
17:31 | Add the "remove_diacritics" option to the fts5 trigram tokenizer. (check-in: 83da80135b user: dan tags: fts5-trigram-diacritics) | |
13:10 | One more tweak to tool/srctree-check.tcl so that a complete build can be accomplished from a read-only source tree. (check-in: cba9f0601c user: drh tags: trunk) | |
12:05 | Update the srctree-check.tcl script and child script so that they can be run on a read-only source tree and so that if any inconsistencies are found, the script returns a non-zero exit code and thus halts the build. (check-in: 58eb5440d7 user: drh tags: trunk) | |
11:14 | Update the version number to 3.44.1 (check-in: 34f23c3d0d user: drh tags: branch-3.44) | |
11:08 | CLI to compile with older MSVC compiler. (check-in: c8bf4f7a6a user: drh tags: branch-3.44) | |
11:04 | CLI to compile with older MSVC compiler. (check-in: c89f75f8ee user: larrybr tags: trunk) | |
2023-11-01
| ||
20:09 | Remove some outdated JNI docs. (Closed-Leaf check-in: 52aef3d015 user: stephan tags: jni-post-3.44) | |
19:35 | Update the windows build documentation to provide the exact command used to build the DLLs that appear on the download page. (check-in: 3524a8914c user: drh tags: trunk) | |
14:33 | Fix testrunner.tcl so that it accepts a relative path as an argument to the --zipvfs switch. (check-in: c1ed7ed022 user: dan tags: trunk) | |
14:12 | Bring the jsonb branch up-to-date with version 3.44.0 changes. (check-in: a420a4f7ff user: drh tags: jsonb) | |
12:50 | Version 3.44.0 for the reuse-schema branch. (check-in: 30403ce26c user: drh tags: reuse-schema) | |
12:45 | Version 3.44.0 for the bedrock branch. (check-in: 827cf67fb3 user: drh tags: bedrock) | |
12:41 | Version 3.44.0 for the wal2 branch (check-in: 470152fd28 user: drh tags: wal2) | |
12:38 | Version 3.44.0 for the begin-concurrent branch. (check-in: 291d6b4403 user: drh tags: begin-concurrent) | |
11:23 | Version 3.44.0 (check-in: 17129ba1ff user: drh tags: trunk, release, major-release, version-3.44.0) | |
2023-10-31
| ||
17:40 | Fix harmless compiler warnings in test code. (check-in: d1895dd8f5 user: drh tags: trunk) | |
17:39 | Fix a problem with SQLITE_ENABLE_FTS5 builds of the non-amalgamation testfixture.exe in Makefile.msc. (check-in: 544091cc0f user: dan tags: trunk) | |
2023-10-30
| ||
23:20 | Remedy CLI non-UTF8 handling detection flaw noted in a forum post. (check-in: a4c7954b93 user: larrybr tags: trunk) | |
23:05 | Merge the latest 3.44.0 release candidate changes into the reuse-schema branch. (check-in: 28f9a55928 user: drh tags: reuse-schema) | |
23:04 | Remedy CLI non-UTF8 handling detection flaw noted in a forum post. (Leaf check-in: 2666b80d2c user: larrybr tags: win-utf8-io-split) | |
22:57 | Merge the latest 3.44.0 release candidate patches into the bedrock branch. (check-in: 956b03a462 user: drh tags: bedrock) | |
21:46 | Merge the latest 3.44.0 changes into wal2 branch. (check-in: 4f65ae2df0 user: drh tags: wal2) | |
21:39 | Merge the latest trunk changes into the begin-concurrent branch. (check-in: 9fa405eb5a user: drh tags: begin-concurrent) | |
20:35 | Update the autoconf/Makefile.msc so that it aligns with Makefile.msc. (check-in: c4f724de27 user: drh tags: trunk) | |
19:50 | Dodge a nuisance warning from MSVC in CLI use of Prepared Statement Scan Status. (Yes, C rules are fine.) (check-in: 166c96d91d user: larrybr tags: trunk) | |
19:03 | Add a cast to i64 for an integer in an sqlite3OsWrite() offset calculation. The cast is not strictly necessary, but it helps human readers see that the code is correct. (check-in: 7564ff1ba2 user: drh tags: trunk) | |
18:48 | Fix another comment typo. No code changes. (check-in: 3203256c02 user: drh tags: trunk) | |
18:17 | Add FTS5 to default Makefile.msc builds. And UNKNOWN_SQL_FUNCTION and STMT_SCANSTATUS to default Makefile.msc shell builds. (check-in: e41fde2fdb user: dan tags: trunk) | |
18:09 | Make the new sqlite3_get_clientdata() and sqlite3_set_clientdata() interfaces available to run-time loaded extensions. (check-in: 8fc9aa0f89 user: drh tags: trunk) | |
18:07 | Fix problems with previous commit on Makefile.msc. Also some win32-specific test failures in fts5misc.test. (Closed-Leaf check-in: 527f2237a6 user: dan tags: shell-build-changes) | |
17:56 | Fix typo in a comment. No code changes. (check-in: 424ef9550a user: drh tags: trunk) | |
17:13 | Add FTS5 to default Makefile.msc builds. And UNKNOWN_SQL_FUNCTION and STMT_SCANSTATUS to default Makefile.msc shell builds. (check-in: bf99ebba23 user: dan tags: shell-build-changes) | |
16:38 | Predicate Windows CLI UTF-8 console I/O on a runtime capability check rather than an OS version check. (check-in: 0058ea6a69 user: larrybr tags: trunk) | |
13:56 | Predicate Windows CLI UTF-8 console I/O on a runtime capability check rather than an OS version check. (check-in: f89d062f88 user: larrybr tags: win-utf8-io-split) | |
12:09 | With SQLITE_ENABLE_BLOCK_ATOMIC_WRITE enabled, if a transaction is committing and there is a new freelist page at the end of the database file which would cause the database file size to grow, ensure that page is written and the file size grows before the block-atomic-write commits. Fix for the problem identified by forum post 3bd8d497b2 (check-in: c9fdd6805d user: drh tags: trunk) | |
2023-10-29
| ||
20:05 | For Windows CLI, institute a version check to determine default MBCS or UTF-8 translation on console I/O. (Default to UTF-8 where known possible.) (check-in: ddc6ead645 user: larrybr tags: trunk) | |
19:55 | Simplify code slightly. Improve comments on added code and its use. (check-in: 046c842966 user: larrybr tags: win-utf8-io-split) | |
16:26 | Properly close a handle. Use a putatively effective runtime test for UTF-8 console I/O capability. (This makes the version test useful mainly for avoiding a warning that UTF-8 console I/O could not be setup.) (check-in: dc91eb9172 user: larrybr tags: win-utf8-io-split) | |
00:24 | Condition default UTF-8 console I/O for Windows builds on OS version 10 or more. This is to accomodate an IsValidCodePage() API which may happily report CP_UTF8 as a valid code page when the stock console cannot, in fact, do UTF-8 I/O. (check-in: 6b9b2a886f user: larrybr tags: win-utf8-io-split) | |
2023-10-28
| ||
16:19 | Limit the range of integer unix timestamps in date4.test, since some systems (RaspberryPI) cannot deal with timestamp values that exceed pow(2,31). (check-in: 765290663b user: drh tags: trunk) | |
11:53 | Update documentation for sqlite3_errmsg() to try to make it clear that if the schema of a database contains table names or similar with invalid UTF, then the error message generated by SQLite might also contain invalid UTF. No changes to code. (check-in: 33ba13c7c4 user: drh tags: trunk) | |
11:40 | Since SQLite considers NaN to be like NULL and NULL sorts before any integer, make sure the sqlite3IntFloatCompare() routine reports that the integer argument is larger if the floating-point argument is NaN. (check-in: de1cf31a34 user: drh tags: trunk) | |
04:11 | Remove the SQLITE_MAX_ALLOCATION_SIZE flag (set to 536mb) from the WASM build because it can unduly limit db exports via sqlite3_serialize(), as reported in forum post 75524f7342c1ba45. (check-in: 747b4e3a9e user: stephan tags: branch-3.43) | |
03:56 | Merge trunk into jni-post-3.44 branch. (check-in: 9670eb2496 user: stephan tags: jni-post-3.44) | |
03:54 | Remove the SQLITE_MAX_ALLOCATION_SIZE flag (set to 536mb) from the WASM build because it can unduly limit db exports via sqlite3_serialize(), as reported in forum post 75524f7342c1ba45. It now defaults to whatever sqlite3.c uses, which is currently just shy of 2gb. (check-in: f6e1137919 user: stephan tags: trunk) | |
2023-10-27
| ||
23:02 | Add missing docs for the JS Worker1 export method, as pointed out in forum post 75524f7342. (check-in: a7b267bd11 user: stephan tags: jni-post-3.44) | |
21:44 | Fix cosmetic flaw in SQLITE_TXN_* doc. (no code change) (check-in: 72d7c18f80 user: larrybr tags: trunk) | |
21:05 | Export sqlite3_get_autocommit() to WASM and add tests for it. (check-in: 7cb6d3cd39 user: stephan tags: jni-post-3.44) | |
18:16 | Disable two rtree test cases for Linux-i686. We do not have that platform available for testing. The test cases work on all other 64-bit and 32-bit platforms that we have at hand. So there is no way for us to debug this problem. Better to disable the test. forum post ffcbf789b5386573. (check-in: fed4d6e90b user: drh tags: trunk) | |
17:40 | Add makefile targets for fuzzcheck-asan and fuzzcheck-ubsan. (check-in: 27fc14303a user: drh tags: trunk) | |
15:31 | Fix to Makefile.in so that the "tool-zip" target can be run from outside the source tree. (check-in: cd118da9db user: dan tags: trunk) | |
13:59 | Cleanup shell.c comments. Hide -utf8 option, as it is undocumented and accepted only for backward compatibility. No functional changes except for -help content. (check-in: 3a87995560 user: larrybr tags: trunk) | |
10:49 | Back out [2904fcbeebba9189], mostly. The page bitmap is needed even for a partial integrity_check in order to avoid an infinite loops while walking the database. (check-in: dd6e03b373 user: drh tags: trunk) | |
2023-10-26
| ||
18:41 | In CLI for Windows builds, do MBCS/UTF-8 translation independently for input and output. (And cure an MSVC warning.) (check-in: 80f0b6f9c7 user: larrybr tags: trunk) | |
18:24 | Handle utf8 mode restore better for redirected input or output. Move utf8 mode setup to before any invocation command processing. Sync w/trunk. (Leaf check-in: 59452e7c72 user: larrybr tags: win-utf8-io-split) | |
17:30 | Enhance the "tool-zip" makefile target on Windows so that it uses more universally available commands to build the ZIP archive. Fix other minor issues with that makefile target at the same time. (check-in: d2f2f91265 user: drh tags: trunk) | |
16:59 | Further enhancements to make sure the correct returnning trigger is run when there are nested INSERT RETURNING statements. (check-in: d83405e870 user: drh tags: trunk) | |
16:05 | Handle the case where a virtual table xBestIndex method called while coding a trigger fired by a top-level statement with a RETURNING clause prepares a statement that also contains a RETURNING clause. (check-in: ec6bffa3b0 user: dan tags: trunk) | |
15:12 | Ready for merge, but could use testing on some dusty old Windows machines. (check-in: 2022061562 user: larrybr tags: win-utf8-io-split) | |
12:59 | Deal with the case of a reentrant INSERT on a virtual table where the outer INSERT has a RETURNING clause but the inner does not. dbsqlfuzz 3ac9a1e33f676254e02c0f297263b0a7aeb0c1a5. Fault injected by [a2449bcc2c71d0f4], first appearing in release 3.40.1. (check-in: 8aba78e4db user: drh tags: trunk) | |
2023-10-25
| ||
20:44 | Cure a harmless MSVC warning. (no other changes) (check-in: 02234ef85e user: larrybr tags: win-utf8-io-split) | |
20:27 | In CLI for Windows builds, do MBCS/UTF-8 translation independently for input and output. (WIP) (check-in: 47b13e66e0 user: larrybr tags: win-utf8-io-split) | |
20:08 | Updates to the mktoolzip.tcl to work on win32. (Closed-Leaf check-in: 166b775bb5 user: dan tags: win32-mktoolzip) | |
19:06 | Fix harmless compiler warnings. (check-in: cc8efe0494 user: drh tags: trunk) | |
18:53 | Provide dummy parameter names in the prototype for the new xIntegrity method of the sqlite3_module object. (check-in: 131374d720 user: drh tags: trunk) | |
18:35 | Fix minor problems with the "showwal" utility program. Add a missing header to the zipfile.c extension. (check-in: 7b3f866e61 user: drh tags: trunk) | |
17:26 | Test module altermalloc3.test requires DQS_DDL to be turned on. (check-in: c4d02f4b07 user: drh tags: trunk) | |
15:30 | Add an ALWAYS on branch that was made always-true by the DISTINCT ORDER BY fix. (check-in: c29ebcb0be user: drh tags: trunk) | |
14:54 | When doing a DISTINCT aggregate that contains an ORDER BY, only the arguments to the aggregate need to be distinct, not the ORDER BY terms. (check-in: d2dbbdf719 user: drh tags: trunk) | |
12:58 | Fix the amalgamation generator so that when it is reporting the Fossil version number in the header comment of the amalgamation, it does not elide the first hex digit of the version hash. (check-in: cc66f526bd user: drh tags: trunk) | |
10:37 | Enhance the new xIntegrity method of the sqlite3_module object with new parameters that provide the name of the table being checked and a flag to indicate a "quick_check". Based on feedback in forum post 965c0d02ea. (check-in: bc8afa3f15 user: drh tags: trunk) | |
2023-10-24
| ||
19:56 | Implement check-in [477577120b897bf1] differently, so as not to disrupt non-standard build configuration. See forum post c11523ca2df50293. (check-in: 50448fe4fd user: drh tags: trunk) | |
19:05 | Fix a test case in fts3corrupt4.test by bypassing the fast-prng. (check-in: 540ce72b50 user: dan tags: bedrock) | |
17:45 | Test cases for COLLATE and NULLS FIRST/LAST in the ORDER BY for an aggregate function. (check-in: 641f928feb user: drh tags: trunk) | |
16:16 | New #ifdefs to fix certain compile-time options. (check-in: 688c6279ef user: drh tags: trunk) | |
16:06 | Fix a problem with the fts5 highlight() and snippet() functions when used with tokenizers like "trigram" that output overlapping tokens. Forum post 63735293ec. (check-in: e952db86fa user: dan tags: trunk) | |
15:53 | Fix a problem with the fts5 highlight() and snippet() functions when used with tokenizers like "trigram" that output overlapping tokens. Forum post 63735293ec. (Closed-Leaf check-in: d570aa02f7 user: dan tags: fts5-trigram-snippet-fix) | |
15:11 | Spelling improvements, in comments only (check-in: 9ee25eeaf1 user: larrybr tags: trunk) | |
15:07 | Spelling improvements, in comments only (check-in: 65bcc58378 user: larrybr tags: trunk) | |
11:06 | Fix various harmless scan-build warnings. (check-in: 54be9af446 user: drh tags: trunk) | |
09:57 | Fix a harmless compiler warning in the expert extension. (check-in: 0c4907ddf9 user: drh tags: trunk) | |
2023-10-23
| ||
23:34 | Fix a minor typo in the previous. (check-in: 9d388267e4 user: drh tags: trunk) | |
23:34 | Add notes on how to build a statically linked version of sqlite3_analyzer.exe. (check-in: 99ce9939c8 user: drh tags: trunk) | |
19:51 | Add the sqlite3res file to the Windows build of sqldiff.exe so that the resulting binary shows the SQLite icon. (check-in: c696a4963b user: drh tags: trunk) | |
19:27 | Merge the latest trunk enhancments into the reuse-schema branch. (check-in: 52262ac920 user: drh tags: reuse-schema) | |
16:08 | Merge latest changes from wal2 into this branch. (check-in: c9c9bc097a user: dan tags: bedrock) | |
16:00 | Merge latest trunk changes into this branch. (check-in: 3a6479d3f9 user: dan tags: wal2) | |
15:48 | Merge latest trunk changes into this branch. (check-in: c5ef898a79 user: dan tags: begin-concurrent) | |
15:30 | Avoid attempting to delete a file while it is open in test script sessionalter.test. (check-in: f20b4a96f7 user: dan tags: trunk) | |
15:24 | Revert an earlier change that considered passing a NULL callback to sqlite3_preupdate_hook() to be a misuse. This is required to clear the preupdate hook altogether. (check-in: 1bf6f0f3bb user: dan tags: trunk) | |
15:23 | New test cases for PRAGMA integrity_check against FTS4 and FTS5 tables. (check-in: 3950d20c3a user: drh tags: trunk) | |
14:24 | Fix mutex1.test to take into account that the prng mutex is not (as of [c84e4483cb4]) taken when writing a header to an in-memory journal. (check-in: c9e37417fc user: dan tags: trunk) | |
13:46 | Improved error messages for the xIntegrity method in FTS3/4 and FTS5. (check-in: df69abc082 user: drh tags: trunk) | |
12:16 | Fix sqlite3ExprDup() alignment assertions so that they work on 32-bit platforms. (check-in: 143f95efc7 user: drh tags: trunk) | |
11:41 | Temporarily disable the ext/expert/expert1-6.0 test, which does not work on my configurations. (check-in: a41b903d0f user: drh tags: trunk) | |
11:34 | Add an SQLITE_OMIT_VIRTUALTABLE block around the new vtab code in "PRAGMA integrity_check". (check-in: ab99eb2b6c user: dan tags: trunk) | |
11:18 | Add missing test file fts3fault3.test. Should have been part of [7f41d700]. (check-in: 92e64ab63a user: dan tags: trunk) | |
02:08 | Merge fixes for expert handling of UDFs and other UD-whatevers. (check-in: b5d7d07df5 user: larrybr tags: trunk) | |
02:06 | Add missing JNI sqlite3_result_subtype() binding. (check-in: ac920b5386 user: stephan tags: jni-post-3.44) | |
02:01 | Fix the shell1.test test so to align with the new behavior imposed by [bce807cd48763273] - that backslash escapes only work without quoted arguments in dot-commands of the CLI. (check-in: 0db82b4281 user: drh tags: trunk) | |
01:55 | Clear some picky warnings, sync w/trunk. (Closed-Leaf check-in: ee58425904 user: larrybr tags: expert-enhancement) | |
01:34 | Add many more high-level wrappers to the JNI wrapper1 API. Correct the JNI bindings of sqlite3_strglob/strlike() to compare as the core lib does if their glob argument is NULL and the other is not. (check-in: 55c4b1dc40 user: stephan tags: jni-post-3.44) | |
2023-10-22
| ||
23:44 | Fix [f5c01676fd281e93] so that it always preserves 8-byte alignment for Expr objects. Add new assert() statement to verify this. (check-in: 678a9728dc user: drh tags: trunk) | |
23:36 | Add high-level window function wrapper to the JNI wrapper1 interface. (check-in: a27e747123 user: stephan tags: jni-post-3.44) | |
17:27 | Do not do backslash escape processing on any unquoted strings in dot-commands in the CLI - on Windows or on posix-like systems either one. This brings the processing into alignment with the documentation, allows backslash-delimited filenames on Windows (as long as they are unquoted), and causes the CLI to work the same with regard to backslash escapes on both Windows and posix. (check-in: bce807cd48 user: drh tags: trunk) | |
14:25 | JNI: flesh out and simplify the APIs for binding and fetching arbitrary Java objects. (check-in: 89fecf1dd8 user: stephan tags: jni-post-3.44) | |
13:54 | JNI: add column-get bindings to the wrapper1 Stmt class and extend the AggregateFunction tests to ensure that the aggregate context is honored. (check-in: 60a0e82db2 user: stephan tags: jni-post-3.44) | |
13:09 | Add API_ARMOR to sqlite3_clear_bindings(). (check-in: f3fb4d345b user: stephan tags: jni-post-3.44) | |
12:43 | Add JNI wrapper1.SqliteStmt.bindXyz() APIs. (check-in: 54fce9bf04 user: stephan tags: jni-post-3.44) | |
12:33 | JNI: improve UB protections in sqlite3_bind_blob/text/text16(). (check-in: 5c8383210a user: stephan tags: trunk) | |
11:11 | Add missing ScalarFunction.java to JNI build. (check-in: b8258103fb user: stephan tags: trunk) | |
2023-10-21
| ||
22:31 | In the CLI, do not translate unquoted backslash escapes on dot-commands as that can damage filename arguments. (check-in: 4a0e2c6e17 user: drh tags: trunk) | |
20:34 | Remove a branch that cannot affect the outcome from FkNoAction processing in fkey.c. Replace it with an assert(). (check-in: 023a9dbe83 user: drh tags: trunk) | |
20:03 | Replace the patch at [5cb61c6788d7c017] with a better way to avoid failing PRAGMA integrity_check if a module implementation is not loaded, as the use of suppressErr can lead to problems. (check-in: be5737ee4f user: drh tags: trunk) | |
19:51 | Check-in contains stray edit. (Closed-Leaf check-in: cbea52e9ef user: drh tags: mistake) | |
18:12 | Fix a problem allowing a COMMIT following an OOM to cause fts3/4 corruption. (check-in: 7f41d7006d user: dan tags: trunk) | |
16:33 | Add the SQLITE_TESTCTRL_FK_NO_ACTION test control. Make it available in the CLI. Fix a minor problems with SQLITE_CHANGESETAPPLY_FKNOACTION in sessions. (check-in: 91b64c6a70 user: drh tags: trunk) | |
16:25 | Extra comment on the implementation of SQLITE_TESTCTRL_FK_NO_ACTION, warning about the need to reset the schema in order for the setting change to take full effect. (Closed-Leaf check-in: a50a333ae1 user: drh tags: fknoaction) | |
15:21 | Add missing "finish_test" to sessionnoact.test. (check-in: 9a1d37f547 user: dan tags: fknoaction) | |
15:04 | Fix a problem with SQLITE_CHANGESETAPPLY_FKNOACTION and the foreign-key-trigger-cache. (check-in: 95304ec6c9 user: dan tags: fknoaction) | |
12:54 | Add SQLITE_TESTCTRL_FK_NO_ACTION. (check-in: 563cf5f782 user: drh tags: fknoaction) | |
11:43 | Adjust an EXPLAIN QUERY PLAN output in scanstatus2.test to account for a different loop order taken due to the removal of the view-scan optimization. (check-in: 9deb8b6915 user: drh tags: trunk) | |
11:34 | Compress the content of the status line in testrunning.tcl so that all the same status information appears but with less punctuation and with "zero" values omitted, so that the status line will fit comfortably on an 80-column terminal window. (check-in: 9663513116 user: drh tags: trunk) | |
11:13 | Create the new string_agg(X,Y) aggregate function which is an alias for the two-argument group_concat(X,Y) function, for compatibility with SQL-Server and PostgreSQL. (check-in: a3b3df8a9e user: drh tags: trunk) | |
11:06 | Avoid an unnecessary malloc() for the page usage bitmap when running a partial integrity_check. (check-in: 2904fcbeeb user: drh tags: trunk) | |
11:00 | Fix a test case broken by the previous check-in. (Leaf check-in: 1e61864c3b user: drh tags: string_agg) | |
2023-10-20
| ||
20:19 | Add string_agg(X,Y) as an alias for group_concat(X,Y), for compatibility with SQLServer and PG. (check-in: b91c19bf26 user: drh tags: string_agg) | |
19:59 | Fix a problem allowing a COMMIT following an OOM to cause fts5 corruption. (check-in: fba3129d13 user: dan tags: trunk) | |
19:06 | Fix PRAGMA integrity_check so that it does not raise an error if the schema contains a CREATE VIRTUAL TABLE that does not have its module loaded. (check-in: 5cb61c6788 user: drh tags: trunk) | |
18:09 | Omit some redundant calls to strlen() used to find the size of Expr.u.zToken in sqliteExprDup(). This inefficiency was seen while working on the previous check-in, and I thought it best to fix it while it was fresh in mind. (check-in: b7a84eff5d user: drh tags: trunk) | |
17:15 | Improvements to the sqlite3ExprDup() logic for faster performance and better run-time error detection. This check-in fixes the 5x oversize memory allocation bug from [f371e4c0f8ea73ae] as well as all other known issues that result from handing the ORDER BY clause of an aggregate function off of the pLeft pointer of the Expr object. (check-in: f5c01676fd user: drh tags: trunk) | |
17:06 | Add the SQLITE_CHANGESETAPPLY_FKNOACTION flag to sqlite3session.h, for passing to sqlite3changeset_apply_v2() to cause all foreign key constraints to behave as if they were declared NO ACTION. (check-in: fc9f82ea08 user: dan tags: trunk) | |
15:47 | Simplifications and optimizations to the Expr object duplication logic. The 5x multiplier crutch from [f371e4c0f8ea73ae] is still present. More fixes are still needed. (check-in: 56142a7816 user: drh tags: trunk) | |
14:05 | Omit an unused constant from sessionfuzz.c to prevent a compiler warning. (check-in: a0cf7e24f9 user: drh tags: trunk) | |
12:23 | Correct the opfs-sahpool VFS's xGetLastError() method to return the previous error code, not 0, on success. (check-in: 95a1dde631 user: stephan tags: trunk) | |
11:44 | Merge trunk into the wasm-xGetLastError branch. (Leaf check-in: 48a9bd649d user: stephan tags: wasm-xGetLastError) | |
10:18 | Use sqlite3ParserAddCleanup() instead of calling sqlite3ExprListDelete() directly when disposing of an unused ORDER BY in an aggregate function, to avoid disrupting ALTER TABLE data structures. (check-in: d083e42086 user: drh tags: trunk) | |
2023-10-19
| ||
20:46 | Merge recent trunk enhancements into the jsonb branch. (check-in: f47a8d0a20 user: drh tags: jsonb) | |
20:17 | Increase the size of some variables associated with the PMA sorter in order to avoid any possibility of a signed integer overflow. (check-in: 72597cee00 user: drh tags: branch-3.43) | |
20:06 | Remove a faulty assert() that was added just a few check-ins ago by [8b6fffb552c30f9c]. (check-in: 18e7c826f0 user: drh tags: trunk) | |
19:57 | For TK_ORDER expression nodes to always be full-size. (check-in: a5c73b46f4 user: drh tags: trunk) | |
19:19 | Fix an adverse interaction between the new aggregate ORDER BY logic and the expression compressor. Update 2023-10-20: Memory allocations were multiplied by a factor of 5 on line 1575 of expr.c. This was a debugging change that I neglected to remove prior to checking it. That change masks deeper problems that will be solved in later check-ins. (check-in: f371e4c0f8 user: drh tags: trunk) | |
19:08 | In the TreeView logic (used for debugging only) do not show unnecessary fields of the Window object when a function has a FILTER. (check-in: d2c6b82c34 user: drh tags: trunk) | |
18:23 | Fix an fts3 problem caused by reducing the page size using the undocumented "nodesize" option, then running an incremental-merge. (check-in: 2875dcb1ac user: dan tags: trunk) | |
18:07 | Simplify the Expr compression logic slightly by adding the new EP_FullSize property to expressions that are exceptions to the rule and should not be compressed. (check-in: d5ae82ec52 user: drh tags: trunk) | |
13:35 | Simplification to sqlite3GetVarint32() to avoid confusing gcov. (check-in: 89862c51ad user: drh tags: trunk) | |
13:00 | Fix an error in a debugging routine used inside of testcase(). Does not appear in production. Problem discovered by scan-build. (check-in: c6c9d7ed6d user: drh tags: trunk) | |
12:36 | New assert() statements to help verify correctness of the ORDER BY aggregate code. (check-in: 8b6fffb552 user: drh tags: trunk) | |
12:12 | Fix the sqlite3ReferencesSrcList() routine so that it recognizes columns in the ORDER BY clause of an aggregate. Fixes a problem with [634286828dad873d] discoverd by dbsqlfuzz. (check-in: 3d26f1aaa4 user: drh tags: trunk) | |
01:26 | Add support for ORDER BY on the argument list of aggregate functions. (check-in: 634286828d user: drh tags: trunk) | |
01:09 | Merge the latest changes from trunk. (Closed-Leaf check-in: d18bc40014 user: drh tags: agg-orderby) | |
00:25 | Fix a false-positive in run-time error checking. (check-in: cd63eec075 user: drh tags: trunk) | |
2023-10-18
| ||
23:48 | Changes for test coverage. (check-in: ddfa09c603 user: drh tags: agg-orderby) | |
22:53 | Test case for alter column that is used in the ORDER BY of an aggregate. (check-in: 648ddb3a8e user: drh tags: agg-orderby) | |
22:27 | Deal with an OOM condition while processing aggregate ORDER BYs. (check-in: b6d44427ec user: drh tags: agg-orderby) | |
22:03 | Make sure all terms of the ORDER BY within an aggregate go through aggregate analysis. Do not attach an aggregate ORDER BY to a window function. (check-in: 16f3805514 user: drh tags: agg-orderby) | |
19:44 | Basic test cases. (check-in: 6cccf86c36 user: drh tags: agg-orderby) | |
19:07 | Fix one minor error in order to get all legacy tests to pass. (check-in: 5a885139c4 user: drh tags: agg-orderby) | |
18:11 | ORDER BY on aggregates seem to work, at least for simple smoke tests. Lots more testing is needed though. Surely there are many bugs. (check-in: 64c12a835b user: drh tags: agg-orderby) | |
13:58 | Basic error checking. Resolve symbols in the aggregate ORDER BY expressions. (check-in: c83a53a574 user: drh tags: agg-orderby) | |
13:18 | Enhance the parser so that it can accept an ORDER BY clause on a function invocation. For this incremental check-in, the ORDER BY clause is currently ignored. (check-in: 3a98ff24bf user: drh tags: agg-orderby) | |
2023-10-17
| ||
23:35 | JS: replace one errant reference to 'self' with 'globalThis' and remove a separate dead-code 'self' reference. (check-in: da1a47932e user: stephan tags: trunk) | |
19:33 | Fix a harmless compiler warning about variant types for a pointer function. (check-in: 37ff0d8e7f user: drh tags: trunk) | |
18:59 | Make a new branch in the SqlExec opcode reachable by tests. (check-in: 023ad470b6 user: drh tags: trunk) | |
18:28 | Omit an unreachable branch when SQLITE_ENABLE_API_ARMOR is not defined. (check-in: 5f8b807b56 user: drh tags: trunk) | |
17:53 | Changes to sqlite3IntFloatCompare() in an attempt to better measure branch coverage in the face of aggressive compiler optimization. (check-in: 5781d043ff user: drh tags: trunk) | |
13:47 | Fix a JSON bug introduced in 3.43.0. The problem occurs when doing a JSON_EXTRACT() on an array element that was added by JSON_SET() without first reparsing. (check-in: 3161c2cdc9 user: drh tags: branch-3.43) | |
13:41 | Fix a JSON bug introduced by the optimization of [df099ad713011b67] and first appearing in 3.43.0. The problem occurs when doing a JSON_EXTRACT() on an array element that was added by JSON_SET() without first reparsing. Reported by forum post fc0e3f1e2a. (check-in: e5099c549a user: drh tags: trunk) | |
11:57 | Enhance the documentation of sqlite3_deserialize() to make it clear that the input database may not be in WAL mode. Forum post a7e272cee9ac469f (check-in: e754789971 user: drh tags: trunk) | |
10:47 | When an I/O or similar error occurs during a transaction with journal_mode=MEMORY, attempt to rollback before closing the journal, as all rollback information is forgotten when a memory rollback journal is closed. (check-in: 1d67f75de2 user: drh tags: trunk) | |
02:15 | Harden API_ARMOR checks for sqlite3_stmt_scanstatus_v2(). (check-in: d3f38e813b user: stephan tags: trunk) | |
2023-10-16
| ||
16:04 | JNI: add aggregate function support to the wrapper1 API. (check-in: 15b28b340a user: stephan tags: trunk) | |
14:31 | JNI: add scalar UDF support to the wrapper1 API. (check-in: a850535766 user: stephan tags: trunk) | |
13:04 | JNI: initial draft (untested - requires more infrastructure first) of a UDF argument/result-handling interface which completely hides the C-style API from the client. (check-in: 43b10a5cf9 user: stephan tags: trunk) | |
10:38 | JNI: cleanups in Tester2 and update the jar makefile target to account for [9fcdf96adca2]. (check-in: abc82bf4b8 user: stephan tags: trunk) | |
10:27 | JNI: move the C-style API parts into the capi subpackage and the higher-level wrapper into (tentatively) wrapper1, so that CApi.java can support multiple independent higher-level wrappers without name collisions, and CApi can be made public but have the option to be elided from wrapper-level javadocs for wrappers which do not wish to expose it. (check-in: 9fcdf96adc user: stephan tags: trunk) | |
08:10 | JNI: after calling a Java-side UDF, zero-out the pointer of the Java-side sqlite3_context and sqlite3_value array entries to avoid misbehavior if a client makes the mistake of holding a reference to one of those objects. (check-in: 9fc3104f76 user: stephan tags: trunk) | |
08:05 | JNI: do not expose SQLITE_OPEN_... flags which are specific to VFSes. (check-in: 2b4e53d8be user: stephan tags: trunk) | |
2023-10-15
| ||
13:36 | Change 3 instance of #if SQLITE_ENABLE_API_ARMOR to #ifdef for consistency with how it is normally used. (check-in: dd766eeb59 user: stephan tags: trunk) | |
13:32 | JNI: enable all optional components in the default build and fix a test broken by an option toggle. (check-in: 5586a9df58 user: stephan tags: trunk) | |
13:25 | Correct non-void return from sqlite3_preupdate_hook() when API_ARMOR is enabled. Broken by [6cb77503484e]. (check-in: 40f5906f48 user: stephan tags: trunk) | |
12:17 | Merge trunk into the wasm-xGetLastError branch. (check-in: 0239e374d2 user: stephan tags: wasm-xGetLastError) | |
12:11 | Add coverage of more functions to SQLITE_ENABLE_API_ARMOR builds. (check-in: 6cb7750348 user: stephan tags: trunk) | |
2023-10-14
| ||
20:44 | JNI: extend [baf220e78a46246c47] to include macro-generated sqlite3_value_...() bindings. (Closed-Leaf check-in: ad34b2542e user: stephan tags: api-armor-audit) | |
20:34 | JNI: make the sqlite3_value_...() family of bindings resistent to NULL arguments. (check-in: baf220e78a user: stephan tags: api-armor-audit) | |
20:24 | Do not allow an ALTER TABLE ADD COLUMN on a STRICT table if the added column contains a DEFAULT clause that would violate the type of the added column. (check-in: 75b075863e user: drh tags: trunk) | |
20:01 | Add API_ARMOR support to the scanstatus family of functions. (check-in: 2f3101f016 user: stephan tags: api-armor-audit) | |
17:34 | Merge the version-3.43.2 changes into the begin-concurrent-3.43 branch. (Leaf check-in: f3fb30af03 user: drh tags: begin-concurrent-3.43) | |
17:14 | The rtreecheck() SQL function should not invoke BEGIN or COMMIT as this causes issues for statement transactions. (check-in: b7b2e30b57 user: drh tags: trunk) | |
16:57 | JNI: add a missing result code check to sqlite3_bind_value(stmt, null). (check-in: f1a357f42d user: stephan tags: api-armor-audit) | |
16:56 | JNI: add missing sqlite3_bind_value() and minor memory-safety-related cleanups. (check-in: 3900031763 user: stephan tags: api-armor-audit) | |
16:29 | Add API_ARMOR support to the sqlite3_result_...() family of functions and sqlite3_bind_zeroblob64(). (check-in: afabe3e35a user: stephan tags: api-armor-audit) | |
14:53 | More API_ARMOR additions. (check-in: 78ebf838f6 user: stephan tags: api-armor-audit) | |
13:24 | Add column name to API_ARMOR check in sqlite3_blob_open() to avoid a null-pointer deref. (check-in: 0114a6622a user: stephan tags: api-armor-audit) | |
12:45 | Revert [f6cd88e6b234] - the NULL callback case is perfectly legal. (check-in: 718ab67607 user: stephan tags: api-armor-audit) | |
12:40 | Bring JNI-side sqlite3_last_insert_rowid() and sqlite3_table_column_metadata() in line with the core's NULL handling. (check-in: c2afc1c2a2 user: stephan tags: api-armor-audit) | |
12:20 | Extend API_ARMOR checks on sqlite3_commit/rollback_hook() to include a check for the callback pointer. (check-in: f6cd88e6b2 user: stephan tags: api-armor-audit) | |
12:19 | Add missing JNI bindings for sqlite3_db_readonly() and sqlite3_db_name(). Code-adjacent tweaks for the API_ARMOR audit. (check-in: e5eace747a user: stephan tags: api-armor-audit) | |
10:54 | Bug fix in sqlite3_analyzer: for databases larger than 1GiB, take into account the lock-byte page when calculating the number of freelist pages. (check-in: 26a909cdd3 user: drh tags: trunk) | |
2023-10-13
| ||
22:19 | Earlier detection of a host of errors in CREATE TABLE, such the CREATE TABLE statement itself fails, rather than generating an error on the first attempted use of the created table. (check-in: 348fa7aaf7 user: drh tags: trunk) | |
19:41 | Apply the correct affinity to DEFAULT values that are TRUE or FALSE. (check-in: 4958db70c8 user: drh tags: trunk) | |
18:29 | Do not allow triggers on shadow tables under defensive mode. (check-in: 44b932ff16 user: drh tags: trunk) | |
15:59 | Fix an fts5 problem caused by a 'rebuild' followed by a DELETE in secure-delete mode. (check-in: 18be505c62 user: dan tags: trunk) | |
13:49 | Immediately fail a CREATE TABLE statement that attempts to create a table that has a generated column loop. Legacy allows the table to be created but the table would not be usable for anything. (check-in: 3237bf9641 user: drh tags: trunk) | |
12:57 | Actually prevent PRAGMA writable_schema=ON from being set in defensive mode, rather than just preventing it from functioning. (check-in: 2b574d9e7e user: drh tags: trunk) | |
12:48 | Round one of an audit for SQLITE_ENABLE_API_ARMOR for functions exposed by JNI and those functions missing armor, as reported in several forum posts. (check-in: 8c25c4b18a user: stephan tags: api-armor-audit) | |
01:39 | Avoid potential overflow in hex(). See forum post 7ac0c9c5ea. (check-in: 2e968114fd user: larrybr tags: trunk) | |
2023-10-12
| ||
20:51 | Make sure virtual tables have been connected before trying to invoke the xIntegrity method during PRAGMA integrity_check. (check-in: 4a4eccb681 user: drh tags: trunk) | |
19:46 | Fix a problem with an fts5 secure-delete on a rowid/term pair that follows a legacy delete of the same pair. (check-in: 579aea0c28 user: dan tags: trunk) | |
18:46 | Enable SQLITE_VTAB_INNOCUOUS for FTS3, FTS5, and RTREE. (check-in: f34c533b6c user: drh tags: trunk) | |
18:09 | Add test case for [29937081]. (check-in: d3b983edf7 user: dan tags: trunk) | |
17:47 | Merge fixes from trunk into the jsonb branch. (check-in: a760bd7bcc user: drh tags: jsonb) | |
17:41 | Make sure the journal file is closed when transitioning into MEMORY journal mode, to avoid an assertion fault in the new sqlite3_randomness() avoidance code added by [c84e4483cb44f827]. (check-in: 29937081a9 user: drh tags: trunk) | |
15:12 | CLI to check for rare prepare failures. See forum post 5be6395182. (check-in: 286d1e8012 user: larrybr tags: trunk) | |
2023-10-11
| ||
21:08 | Add the tokendata=1 option to ignore trailing token-data when querying an fts5 table. (check-in: 122935182a user: dan tags: fts5-token-data) | |
20:37 | Unconditionally force use of SQLITE_ENABLE_API_ARMOR in the WASM and JNI builds. Their corresponding test suites still work. (check-in: c11394b50d user: stephan tags: trunk) | |
17:34 | Fix the use of an uninitialized value that occurs when doing a json_insert() of a string value that contains embedded U+0000 characters. (check-in: 7dcd9cfedc user: drh tags: branch-3.43) | |
17:24 | Fix the use of an uninitialized value that occurs when doing a json_insert() of a string value that contains embedded U+0000 characters. (check-in: d3c0cbb909 user: drh tags: trunk) | |
17:21 | Fix the use of an uninitialized value that occurs when doing a json_insert() of a string value that contains embedded U+0000 characters. (check-in: fc5ee9e51a user: drh tags: jsonb) | |
13:52 | Add (prepare, step, reset, finalize) parts of the JNI level-2 stmt wrapper and associated tests. (check-in: a7082f186f user: stephan tags: trunk) | |
13:34 | Simplification to sqlite3ApiExit(). Generates identical machine code, but easier for humans to read. (check-in: 793bbfa5af user: drh tags: trunk) | |
13:19 | Fix a missing zero-terminator on a string when processing JSON aggregates into JSONB. (check-in: fb81d570a3 user: drh tags: jsonb) | |
12:44 | Fix an issue that can arise when processing corrupt JSONB. (check-in: e50045c222 user: drh tags: jsonb) | |
12:21 | Improved robustness against corrupt JSONB. (check-in: 0fbda92bb0 user: drh tags: jsonb) | |
11:42 | Fix an assertion fault in json_patch() that can occur if the patch JSON is malformed JSONB. Report the malformed JSONB instead. (check-in: a72d54645c user: drh tags: jsonb) | |
2023-10-10
| ||
23:02 | Improved robustness in the decoding of JSON5 text escape sequences found in malformed JSONB. (check-in: 35e0108af2 user: drh tags: jsonb) | |
18:55 | Fix an off-by-one error in the changes from the previous check-in on the jsonb branch. (check-in: 216191b113 user: drh tags: jsonb) | |
18:42 | Improved robustness when translating corrupt JSONB into JSON text. (check-in: 0caa320d90 user: drh tags: jsonb) | |
18:32 | Fix a potential buffer overrun due to corrupt JSONB. (check-in: 5cbb861fc6 user: drh tags: jsonb) | |
18:04 | Fix bugs uncovered by the fuzzer. (check-in: c96eb7fb61 user: drh tags: jsonb) | |
17:34 | Merge the latest trunk enhancements into the jsonb branch. (check-in: f93f16c94d user: drh tags: jsonb) | |
15:34 | Fix a bug in the mkautoconfamal.sh script so that the "snapshot-tarball" and "amalgamation-tarball" makefile targets work again when run from outside of the source tree. (check-in: 3a79cf25e3 user: drh tags: branch-3.43) | |
15:33 | Fix a bug in the mkautoconfamal.sh script, introduced by check-in [3308fdda4b81c110] so that the "snapshot-tarball" and "amalgamation-tarball" makefile targets work again when run from outside of the source tree. (check-in: 65ccf5fef8 user: drh tags: trunk) | |
13:55 | Merge the 3.43.2 release changed into the reuse-schema-3.43 branch. (Leaf check-in: 5fefa147ca user: drh tags: reuse-schema-3.43) | |
12:16 | Start adding tests for the second JNI layer. (check-in: 0177f4dfe8 user: stephan tags: trunk) | |
12:14 | Version 3.43.2 (check-in: 4310099cce user: drh tags: release, branch-3.43, version-3.43.2) | |
2023-10-09
| ||
22:50 | Use snprintf() in place of sprintf() in a debugging function in the CLI. (check-in: 88a118905b user: drh tags: branch-3.43) | |
22:45 | Use snprintf() in place of sprintf() in a debugging function in the CLI. (check-in: 5e5e4d2b49 user: drh tags: trunk) | |
18:33 | Systematize the names of some of the translation function in the JSON implementation. (check-in: db44bd1d62 user: drh tags: jsonb) | |
17:54 | Avoid calling sqlite3_randomness and taking the PRNG mutex when writing a journal header in "journal_mode=memory" mode. (check-in: c84e4483cb user: dan tags: trunk) | |
14:59 | Add a TCL script that does various verification checks on the source tree to make sure that generated code has been updated correctly. (check-in: dc8681c486 user: drh tags: branch-3.43) | |
14:56 | Add a TCL script that does various verification checks on the source tree to make sure that generated code has been updated correctly. (check-in: 1f1a358af7 user: drh tags: trunk) | |
14:47 | Fix a compiler warning caused by the previous check-in. (check-in: 7e8768bf8b user: drh tags: trunk) | |
14:12 | Change the TEA version number to 3.43.2 also. (check-in: 170ab8d102 user: drh tags: branch-3.43) | |
14:10 | Update the version number to 3.43.2. (check-in: 0bd1199bb3 user: drh tags: branch-3.43) | |
14:05 | Turn on SEH by default when building using MSVC. (check-in: f57e8275cf user: drh tags: trunk) | |
12:57 | Merge the latest trunk fixes and enhancements into the jsonb branch, and especially the JSON cache spill UAF fix. (check-in: 9422c24f4a user: drh tags: jsonb) | |
12:51 | Fix a potential UAF caused by JSON parser cache spill. (check-in: 5b09212ac0 user: drh tags: branch-3.43) | |
12:46 | Fix a potential UAF caused by JSON parser cache spill. Forum post b25edc1d46. (check-in: a163fecca9 user: drh tags: trunk) | |
12:45 | Flesh out the error state captured by SqliteException.java. Doc additions. (check-in: 5c5397ff15 user: stephan tags: trunk) | |
12:39 | Fix harmless compiler warning in the test module for sessions. (check-in: 3d5ec99397 user: drh tags: trunk) | |
12:10 | In the VDBE trace output (available under -DSQLITE_DEBUG only), identify register values that hold a refernce-counted string. (Closed-Leaf check-in: 53d5c50462 user: drh tags: mistake) | |
11:46 | Add JNI Sqlite and SqliteException classes. Add Tester2.java as the main test app for the high-level API. (check-in: 6acf52be7a user: stephan tags: trunk) | |
10:44 | Minor JNI doc and public/private cleanups. (check-in: c49d36ece2 user: stephan tags: trunk) | |
10:30 | Rename SQLite3Jni to CApi to (A) reduce name prefix collisions with incoming classes and (B) align with its counterpart in the JS build. Remove the Canonical annotation because (A) the new code separation will inherently make that distinction and (B) the line between truly canonical and semi-canonical (e.g. differing in signature overloads) is blurry enough that consistent use of that annocation is becoming an unnecessary burden. (check-in: ca216b4486 user: stephan tags: trunk) | |
2023-10-07
| ||
23:35 | Remove some unnecessary code. Report errors for invalid JSONB input on an extract. (check-in: cbea16c29e user: drh tags: jsonb) | |
19:46 | The return from sqlite3_value_blob() in jsonFuncArgMightBeBinary() might be a NULL pointer. Check for that case. (check-in: 7b52b266b0 user: drh tags: jsonb) | |
19:40 | Improved detection of malformed JSONB when parsing it into a JsonNode array. (check-in: ed99a78841 user: drh tags: jsonb) | |
19:05 | Fix the jsonbChangePayloadSize() routine so that it shifts the payload in order to always render the most compact encoding of the payload size. This is necessary as sometimes (as discovered by dbsqlfuzz) the payload size can grow significantly due to json_insert() or json_replace(). (check-in: 8d6d04ca97 user: drh tags: jsonb) | |
17:50 | Improvements to error messages returned when the ->> operator fails. (check-in: 2f3388f14c user: drh tags: jsonb) | |
17:29 | Fix a problem with sqlite3changegroup_schema() and patchsets. (check-in: c4ab4200dc user: dan tags: trunk) | |
16:32 | Add the sqlite3changegroup_schema() API. To allow changegroup objects to upgrade the schema of a changeset/patchset under some circumstances. (check-in: 03f9e50b15 user: dan tags: trunk) | |
16:07 | Fix a problem with the changes on this branch and tables that use an implicit primary key. (Closed-Leaf check-in: 1f9d10235f user: dan tags: session-alter) | |
11:37 | Merge the memory leak fix from trunk. (check-in: 358de1b09f user: drh tags: jsonb) | |
11:36 | Improved error messages from search on JSONB. (check-in: 96cfdc31e3 user: drh tags: jsonb) | |
09:13 | Report unknown JSONB element type when parsing JSONB into JsonNode. (check-in: 1f4d326825 user: drh tags: jsonb) | |
08:15 | Add a test case to prevent a regression of the leak fixed in the previous trunk check-in. (check-in: f99ff655d0 user: drh tags: trunk) | |
08:11 | Fix a resource leak: sqlite3_blob_reopen() was failing to invoke the xDel() distructor on a register when it sets that register to the new rowid. (check-in: 83846af5df user: drh tags: branch-3.43) | |
08:00 | Fix a resource leak: sqlite3_blob_reopen() was failing to invoke the xDel() distructor on a register when it sets that register to the new rowid. This was never a problem prior to the large-column cache of [771fe35074b50b8d] as that destructor was always a no-op. dbsqlfuzz cd96368deaece480fb94d42427dde053737a650e. (check-in: 545edd5ecf user: drh tags: trunk) | |
2023-10-06
| ||
23:02 | Correct handling of "raw" strings in JSON. This requires three test-case changes in TH3 to add double-quotes to the path outputs from json_tree(). The new behavior is correct, I believe. (check-in: ab2bf3e359 user: drh tags: jsonb) | |
22:16 | Improved error detection for JSONB inputs. (check-in: 6945e11aa4 user: drh tags: jsonb) | |
20:39 | Add missing source code comments and fix other issues with the new code on this branch. (check-in: df39fbe9ab user: dan tags: session-alter) | |
19:46 | Update this branch with latest changes from the trunk. (check-in: 897e926a5e user: dan tags: session-alter) | |
19:01 | Add tests for the sqlite3changegroup_schema() API. (check-in: 5dab481c10 user: dan tags: session-alter) | |
18:21 | Incremental improvements to the JSONB logic. (check-in: fe326829c2 user: drh tags: jsonb) | |
15:35 | Fixes to rendering JSON5 extensions encoded as JSONB. (check-in: 5a17e4479a user: drh tags: jsonb) | |
14:59 | Fix compiler warnings. (check-in: 5227add3c8 user: drh tags: jsonb) | |
14:52 | Improvements to error handling. (check-in: b41dd237fb user: drh tags: jsonb) | |
13:05 | Merge compiler warning fixes from trunk into the jsonb branch. (check-in: 6409d30791 user: drh tags: jsonb) | |
12:55 | Remove an unused parameter from the recomputeColumnsNotIndexed() routine in order to squash a harmless compiler warning. (check-in: 9bf4bfd680 user: drh tags: trunk) | |
12:51 | Ensure that all fields of static sqlite3_module objects are explicitly initialized, in order to hush-up nuisance compiler warnings. (check-in: f3b3d712d6 user: drh tags: trunk) | |
12:22 | Remove an unused static variable from shell.c.in in order to silence a harmless compiler warning. (check-in: 477577120b user: drh tags: trunk) | |
12:15 | Increase the size of some variables associated with the PMA sorter in order to avoid any possibility of a signed integer overflow. Chromium fuzzer issue 1489025. (check-in: dc3be3af47 user: drh tags: trunk) | |
00:06 | Improvements to coping with malformed JSONB. (check-in: 563cde404c user: drh tags: jsonb) | |
2023-10-05
| ||
23:05 | Better error detection when doing a lookup on a JSONB. (check-in: 6e8e0eedbf user: drh tags: jsonb) | |
22:52 | Improvements to comments. No changes to code. (check-in: ac74d78776 user: drh tags: jsonb) | |
20:17 | Turn an unreachable branch into an assert(). (check-in: 0f75199160 user: drh tags: jsonb) | |
19:09 | Add the sqlite3changegroup_schema() API. To allow changegroups to handle differences in schema created by ALTER TABLE ADD COLUMN. (check-in: 309deee2dd user: dan tags: session-alter) | |
18:33 | Fix the parsing of non-standard "Infinity" and "NaN" values from text into JSONB. (check-in: df1fbbeb83 user: drh tags: jsonb) | |
18:09 | Change the json_valid(X) routine to return true whenever X is a blob that could plausibly be a valid JSONB. (check-in: 425f0b85a6 user: drh tags: jsonb) | |
17:52 | Fix the text-to-JSONB parser so that it handles some JSON5 floating point literals correctly. (check-in: 564edb3b6d user: drh tags: jsonb) | |
16:33 | Slightly stricter testing for when a BLOB is valid JSONB: If the element is a null, true, or false, its payload size must be zero. (check-in: 487781be8a user: drh tags: jsonb) | |
15:05 | Fix a memory leak following a syntax error in jsonb(). (check-in: bf4b36eda8 user: drh tags: jsonb) | |
15:02 | Allow the PG-style syntax for the PATH operand on the right-hand side of the ->> and -> operators. (check-in: bae5071b08 user: drh tags: jsonb) | |
11:22 | Merge trunk enhancements into the jsonb branch. (check-in: be5907b648 user: drh tags: jsonb) | |
11:09 | Improved detection of corrupt databases in balance_nonroot(). dbsqlfuzz d1cf013c50a620b68c2a5bd240d29afd65e5f58e. (check-in: f4aa1bfc97 user: drh tags: branch-3.43) | |
11:06 | Improved detection of corrupt databases in balance_nonroot(). dbsqlfuzz d1cf013c50a620b68c2a5bd240d29afd65e5f58e. (check-in: a2464bbb82 user: drh tags: trunk) | |
11:04 | Do not squelch exceptions from SAHPool VFS importDb() - rethrow them. Problem reported in forum post c80fc578809b80a3. (check-in: 325bcdea4a user: stephan tags: trunk) | |
10:35 | Remove a stray blank line from the beginning of btree.c. No functional code changes. (check-in: c89983dcfc user: drh tags: trunk) | |
2023-10-04
| ||
21:15 | Allow a session object to generate a changeset, even if columns were added to one of the tables using ALTER TABLE ADD COLUMN while the changeset was being collected. (check-in: a3f435eccf user: dan tags: session-alter) | |
12:49 | The Makefile distinguishes between tcl8.4 and tcl8.5. Some makefile targets require tcl8.5, but others (ex: "sqlite3.c", "shell.c", and "sqlite3") require only tcl8.4. (check-in: 770308db97 user: drh tags: trunk) | |
11:52 | Modify the main makefile so that it fails with an error if the tclsh found by ./configure is not tclsh 8.5 or later. Forum post 4380363682708ece. (check-in: 1765f3b5a0 user: drh tags: trunk) | |
11:04 | Hard fail the ./configure script if it is unable to find a working tclsh. Forum post 4380363682708ece. (Closed-Leaf check-in: 9f6402831b user: drh tags: error-no-tclsh) | |
2023-10-03
| ||
22:40 | Fix a memory leak in JSON group-aggregates when the output is JSONB. (check-in: 08e7db138b user: drh tags: jsonb) | |
21:54 | Fix a bug in the jsonReturnFromBlob() function that causes a positive result for a negative value for when a JSON integer is too large and needs to be converted into double. (check-in: dca684da0c user: drh tags: jsonb) | |
20:58 | Fix problems in the "json" output column of the json_tree() virtual table for the case when the input is JSONB. (check-in: fefa4475c4 user: drh tags: jsonb) | |
20:01 | Augment the jsonBlobChangePayloadSize() routine so that it tries to shift content in order to render the payload size in its minimal form. (Closed-Leaf check-in: 562e8e7b08 user: drh tags: jsonb-opt1) | |
19:37 | Improved handling of OOM while translating the JsonNode representing into the BLOB representation. (check-in: ef5956710b user: drh tags: jsonb) | |
19:06 | Fixes for fts5 expression parser module to allow embedded 0x00 bytes in tokens. (check-in: 342c8d0783 user: dan tags: fts5-token-data) | |
17:07 | Update fts5_decode() to allow for embedded 0x00 bytes in tokens. (check-in: e051120067 user: dan tags: fts5-token-data) | |
11:36 | Merge the latest trunk enhancements into the jsonb branch. (check-in: e6406a9865 user: drh tags: jsonb) | |
10:59 | Fix a problem in the JSONB parser that comes up following an OOM. (check-in: 355acfb188 user: drh tags: jsonb) | |
10:43 | Fix an issue with the use of jsonb_group_array() and jsonb_group_object() when used by window functions. (check-in: 808bd349ba user: drh tags: jsonb) | |
2023-10-02
| ||
23:56 | New test cases for JSONB. (check-in: 6d4aeff575 user: drh tags: jsonb) | |
20:16 | Fix jsonb_insert() so that it does not behave like jsonb_set(). New test cases added. (check-in: 54197149b8 user: drh tags: jsonb) | |
17:12 | JNI: when fetching text-or-blob/length pairs, fetch the text-or-blob first, then the length, as the API docs suggest. (check-in: e4f9d3946f user: stephan tags: trunk) | |
17:06 | Fix the length of the string in the new concat() and concat_ws() functions. (check-in: 3252432265 user: drh tags: trunk) | |
15:56 | Remove an ALWAYS() from a branch that can in fact be false following an OOM fault. (check-in: 3a1feb1c46 user: drh tags: trunk) | |
15:37 | Revisit the opfs-sahpool's handling of sqlite3_vfs::xGetLastError(). This impl seems to be in line with what the library internal expects but it requires more testing (via purposely-induced I/O errors) before merging. (check-in: c53fd21f68 user: stephan tags: wasm-xGetLastError) | |
14:51 | New test cases for JSONB. (check-in: d624c31e5c user: drh tags: jsonb) | |
14:44 | Pointer-casting-related fixes for JNI on 32-bit ARM (pi4 armv7l). (check-in: 54441039ae user: stephan tags: trunk) | |
13:35 | Allow json_replace() to accept JSONB arguments as the new value. (check-in: 95eb7b37fa user: drh tags: jsonb) | |
13:20 | Improvements to error handling for BLOB inputs on JSON. (check-in: 14f20ecbfa user: drh tags: jsonb) | |
12:40 | Gather forward references into a single place for the JSON code. Allow JSONB arguments to json_array() and json_object() and similar. (check-in: c352201b8c user: drh tags: jsonb) | |
2023-10-01
| ||
18:59 | Fix problems following OOM in JSONB parsing. (check-in: 0d8cd6b5fb user: drh tags: jsonb) | |
12:15 | Add JNI binding for sqlite3_normalized_sql(). (check-in: 2532e5662a user: stephan tags: trunk) | |
11:53 | Make JNI binding of sqlite3_value_frombind() return boolean instead of int and add tests for it. (check-in: 906e2ed3e9 user: stephan tags: trunk) | |
2023-09-30
| ||
18:13 | Changes so that fts5 can handle tokens with embedded '\0' bytes. (check-in: c027c092c4 user: dan tags: fts5-token-data) | |
17:08 | Fix JNI binding to compile without SQLITE_ENABLE_PREUPDATE_HOOK. Add build option to disable all optional ENABLE flags. (check-in: c04022b740 user: stephan tags: trunk) | |
16:50 | Restore the trunk version of sqlite3_user_data(). Fix the xColumn for virtual tables so that the sqlite3_context contains a valid but NULL user data pointer. (check-in: 15ffd932fe user: drh tags: jsonb) | |
16:19 | Make all SQLite3Jni methods which take a void-pointer-as-long-int argument explicitly package-private, as they're always for internal use only even if SQLite3Jni is eventually made public. (check-in: 5e387275f6 user: stephan tags: trunk) | |
14:48 | JNI: rename sqlite3_errmsg16() to sqlite3_errmsg(), as the 16 suffix is superfluous there. (check-in: df25b21689 user: stephan tags: trunk) | |
14:34 | Expose sqlite3_stmt_busy() to JNI. (check-in: 5733aa5fe3 user: stephan tags: trunk) | |
14:34 | Finish adding jsonb_ versions for all JSON routines that return JSON text. (check-in: 6daa7b6969 user: drh tags: jsonb) | |
13:16 | Correct an undefined-value deref in the JS bindings, triggered by passing invalid args and then tripping over an undefined value while trying to report that. Reported in forum post dd42df144651d779. (check-in: 1545f0f735 user: stephan tags: branch-3.43) | |
13:13 | Correct an undefined-value deref in the JS bindings, triggered by passing invalid args and then tripping over an undefined value while trying to report that. Reported in forum post dd42df144651d779. (check-in: fd46325407 user: stephan tags: trunk) | |
10:59 | Make (almost) all SQLite3Jni.sqlite3_... members public but make the SQLite3Jni class package-private, which has the same foot-protection effect but makes it much simpler to patch SQLite3Jni to publicize the interface later. Remove some of the extraneous foot-shooting protection from indidivual functions, in lieu moving it to the still-pending higher-level interfaces. (check-in: 082b86683e user: stephan tags: trunk) | |
10:37 | Merge in and close jni-ptr-passing branch. The remaining pointer-passing adaptation can be done incrementally without affecting the interface. (check-in: 7927c42410 user: stephan tags: trunk) | |
10:31 | Make all native JNI sqlite3_...() bindings package-private as a foot-shooting protective measure (higher-level pre-native-call argument validation is largely pending). Move SQLTester.java and TesterFts5.java into the org.sqlite.jni package so that they can access the being-tested methods. (Leaf check-in: ec82f7251a user: stephan tags: jni-ptr-passing) | |
09:41 | More work towards the new pointer-passing mechanism in JNI, and code-adjacent cleanups. (check-in: 6c63987e89 user: stephan tags: jni-ptr-passing) | |
2023-09-29
| ||
22:37 | Update json_each() and json_tree() so that they work with JSONB inputs. (check-in: bb5e50ff56 user: drh tags: jsonb) | |
19:47 | The u.zJContent field of JsonNode for a string or label should NOT include the quotation mark delimiters. Ever. This is an inefficiency that really ought to be fixed on trunk, but that can wait until this branch lands. (check-in: 96f545f6f8 user: drh tags: jsonb) | |
16:37 | Additional refactoring and cleanup. (check-in: 45dd176087 user: drh tags: jsonb) | |
15:56 | Add test case to ensure the assert() removed by [f090af77] no longer fails. (check-in: 615ab71761 user: dan tags: trunk) | |
15:53 | Remove an incorrect assert(). (check-in: f090af775f user: drh tags: trunk) | |
15:18 | Bad edit (Closed-Leaf check-in: c794aeb374 user: drh tags: mistake) | |
12:45 | Improvements to comments and procedure names for clarity in the JSON implementation. (check-in: 9b620d813e user: drh tags: jsonb) | |
11:17 | Describe the JSONB encoding in a header comment to the json.c source file. (check-in: 1c0cba3461 user: drh tags: jsonb) | |
2023-09-28
| ||
20:34 | JNI: correct a NullPointerException triggered via SQLTester. (check-in: 0a873de76c user: stephan tags: jni-ptr-passing) | |
19:11 | Fix some minor memory issues so that all legacy tests now pass. (check-in: 1744bfc669 user: drh tags: jsonb) | |
18:23 | Allow the sqlite3_user_data() function to be invoked with a NULL argument or with an sqlite3_context pointer from a virtual table. It returns NULL in both cases. (check-in: 2f49687371 user: drh tags: jsonb) | |
17:41 | Merge trunk changes into the jsonb branch for the compiler warning fixes from two days ago. (check-in: cee113cc31 user: drh tags: jsonb) | |
17:27 | The json_extract() function now works on BLOBs without the need to translate into an array of JsonNode objects. This is much faster. (check-in: 5853065b7e user: drh tags: jsonb) | |
17:23 | Extract directly from BLOB is now complete and appears to work. (Closed-Leaf check-in: 3de58ec994 user: drh tags: jsonb-direct-extract) | |
17:07 | Miscellaneous bugs fixed. (check-in: 5c0815fa2e user: drh tags: jsonb-direct-extract) | |
15:56 | Improvements to json_extract() to better support JSONB. Still not 100% working. (check-in: 8c82576176 user: drh tags: jsonb-direct-extract) | |
15:00 | Clarify serialization API doc w.r.t. buffer validity and usage, instigated by forum post 8922e2ad2ad41205. No code changes. (check-in: b488b9fb71 user: larrybr tags: trunk) | |
11:19 | Adapted the JNI bindings for the sqlite3_value_...() and (pre)update hook APIs to the new pointer-passing mechanism. (check-in: 4182f0275d user: stephan tags: jni-ptr-passing) | |
10:50 | Convert the remaining macro-generated JNI bindings to the new pointer-passing mechanism. (check-in: 250fd6ae80 user: stephan tags: jni-ptr-passing) | |
10:27 | Convert the macro-generated JNI bindings which take a db pointer to the new pointer-passing mechanism. (check-in: 5f47fb77db user: stephan tags: jni-ptr-passing) | |
10:20 | Work toward getting json_extract() to operate directly on the BLOB, omitting the translation into a JsonNode array. (check-in: c1feba70f5 user: drh tags: jsonb-direct-extract) | |
2023-09-27
| ||
16:55 | Performance tests for JSONB added. (check-in: 7c1be8e361 user: drh tags: jsonb) | |
14:41 | Adapted JNI sqlite3_blob_...() and sqlite3_close...() to the new pointer-passing mechanism. (check-in: 0b22c8ef93 user: stephan tags: jni-ptr-passing) | |
11:01 | Adapt JNI sqlite3_bind_...() bindings to the new pointer-passing method and correct the mapping of sqlite3_bind_zeroblob64() to use zeroblob64() instead of zeroblob(). Related internal API renaming. (check-in: 980d559fff user: stephan tags: jni-ptr-passing) | |
10:29 | Add missing license headers to JNI annotation classes and extend the definition of @NotNull to include 0L as the equivalent of null to account for the current rework of how pointers are passed from Java to C. (check-in: bccdfeb9ef user: stephan tags: jni-ptr-passing) | |
09:58 | Rework the JNI sqlite3_backup APIs to the new pointer-passing approach. (check-in: 48aeb1e2cd user: stephan tags: jni-ptr-passing) | |
2023-09-26
| ||
21:37 | Start reworking JNI methods such that they pass void pointers from Java to C instead of passing their strongly-typed wrappers, as that is reportedly significantly faster than passing the wrapper objects to C and extracting the pointers there. There are still many, many functions left to rework for this. (check-in: 66c814dd47 user: stephan tags: jni-ptr-passing) | |
21:22 | Fix harmless compiler warnings in the testfixture testing utility. (check-in: 5a39a02d2d user: drh tags: trunk) | |
19:49 | JNI: implement AutoCloseable for the sqlite3 and sqlite3_stmt classes, and adjust a few tests to use it. Override Object.finalize() for sqlite3 class but not sqlite3_stmt (where it triggers a JVM crash for as-yet-unknown reasons). (check-in: b633d8bbdb user: stephan tags: trunk) | |
19:46 | Merge partial-index constant value fixes from trunk into the jsonb branch. (check-in: 700bdbd738 user: drh tags: jsonb) | |
19:38 | Fix yet another assert() in the partial-index constant value optimization. (check-in: f459d0806c user: drh tags: trunk) | |
19:30 | Add in many jsonb_xxxx() interfaces. Still uses the internal JsonNode representation for transformations and search, but it does at least conform to the desired API design. Largely untested. (check-in: e6045b4e1b user: drh tags: jsonb) | |
19:26 | Remove a NEVER() from a condition in the partial-index constant value optimization that can sometimes be true. (check-in: 63aea8c3e0 user: dan tags: trunk) | |
15:13 | Merge all the latest trunk enhancements into jsonb branch. (check-in: ac242c4d47 user: drh tags: jsonb) | |
14:57 | Remove unreachable code from the partial-index constant value optimization ([8d4160910d651246]). (check-in: 7ad38254c3 user: drh tags: trunk) | |
09:46 | Remove some outdated JNI docs. (check-in: 2ca5cbbb2a user: stephan tags: trunk) | |
07:43 | Minor JNI doc updates. No code changes. (check-in: 63687cc659 user: stephan tags: trunk) | |
2023-09-25
| ||
17:46 | In partial index scans, if the WHERE clause implies a constant value for a table column, replace occurences of that table column with the constant. This increases the likelihood of the partial index being a covering index. (check-in: 8d4160910d user: dan tags: trunk) | |
17:21 | Another very minor tweak to code on this branch to save cycles. (Closed-Leaf check-in: 2c805dc681 user: dan tags: partial-index-terms) | |
17:14 | When parsing JSON text into the BLOB format, only use node type JSONB_TEXTJ for an unquoted object label if the object label contains escape sequences. (check-in: a82ebbac3c user: drh tags: jsonb) | |
15:25 | Change the order of an if..else... in new code to make it slightly faster. (check-in: f80dc64483 user: dan tags: partial-index-terms) | |
14:20 | Enable -Wall for the compiler on --enable-debug builds. (check-in: 63a7b52139 user: drh tags: trunk) | |
13:23 | As a temporary measure, try to translate the BLOB JSON format into the legacy node format for processing. (check-in: 14f2e95a9e user: drh tags: jsonb) | |
11:12 | Fix a bad interaction between LEFT JOIN, bloom filters and partial indexes. (check-in: 5775f92b31 user: dan tags: partial-index-terms) | |
00:39 | Cause sqlite3_exper_new() to replicate UDFs and custom collations early enough to appear in virtual column expressions during schema copy. forum post e030aa4b3a (check-in: 8fc2c45558 user: larrybr tags: expert-enhancement) | |
2023-09-24
| ||
22:51 | Make expert changes acceptable to C89. (check-in: a4f03c22ec user: larrybr tags: expert-enhancement) | |
19:47 | Merge expert changes to accept UDFs and custom collations. (check-in: 8ead1b5ed6 user: larrybr tags: expert-enhancement) | |
19:38 | Add minimal exercise of expert acceptance of UDFs and custom collations. (Closed-Leaf check-in: 0f6bbb79cb user: larrybr tags: expert-udfs) | |
19:28 | Sync w/trunk prior to merge back. (check-in: 2d290854cd user: larrybr tags: expert-udfs) | |
19:13 | Resolve the JNI FTS5 test5() failure and remove some nearby dead code. (check-in: 5655c51f10 user: stephan tags: trunk) | |
19:00 | Give expert ability to deal with custom collations. (check-in: ac1dc1b6de user: larrybr tags: expert-udfs) | |
2023-09-23
| ||
21:31 | Add extra tests for changes on this branch. (check-in: cb45f5b070 user: dan tags: partial-index-terms) | |
19:25 | Avoid an error when parsing a schema that contains indexes with WHERE clauses containing unknown collation sequences. (check-in: d5dd39e37a user: dan tags: partial-index-terms) | |
18:52 | Fix a failing assert() caused by changes on this branch. (check-in: d0e21f20bd user: dan tags: partial-index-terms) | |
18:49 | Fix a harmless compiler warning. (check-in: 7c4210253b user: drh tags: partial-index-terms) | |
15:34 | Add extra tests for the fts5 xPhraseQuery API. (check-in: b5edea1631 user: dan tags: trunk) | |
06:50 | Resolve the JNI FTS5 test5() crash, caused by two unrelated typos in JNI callback signature strings. That test now fails with an expected-vs-got mismatch but no longer dies in the native code. (check-in: 0233f310bf user: stephan tags: trunk) | |
06:37 | Remove an invalid optimization from JNI code and add a missing check check for Java-side exception. (check-in: b8151f8797 user: stephan tags: trunk) | |
2023-09-22
| ||
20:21 | In partial index scans, if the WHERE clause implies a constant value for a table column, replace occurences of that table column with the constant. This increases the likelihood of the partial index being a covering index. (check-in: 66ed7abdfa user: dan tags: partial-index-terms) | |
16:20 | Fix minor parse-to-BLOB bugs. (check-in: 8b53b2e660 user: drh tags: jsonb) | |
14:33 | Add the ability to render a binary BLOB back into valid canonical JSON. (check-in: 0b70cb77a4 user: drh tags: jsonb) | |
14:20 | Give expert ability to deal with UDFs. (check-in: 3406b05b4f user: larrybr tags: expert-udfs) | |
12:16 | Begin adding code to render binary JSON back into text. Very incomplete. This is an incremental check-in. (check-in: b817dd865e user: drh tags: jsonb) | |
11:20 | Improvements to the JSON binary BLOB format design. (check-in: 2c89ae5d02 user: drh tags: jsonb) | |
2023-09-21
| ||
18:16 | Reorganize the code to put the new JSONB routines together, for easier editing. (check-in: dc23e783d4 user: drh tags: jsonb) | |
17:51 | Initial development code for an experimental binary BLOB encoding for JSON. (check-in: 8131b3c272 user: drh tags: jsonb) | |
2023-09-18
| ||
20:42 | Add extra tests for java Fts5ExtensionApi API. (check-in: f9d62b853c user: dan tags: trunk) | |
18:12 | Extra tests for java Fts5ExtensionApi interface. (check-in: c923893f36 user: dan tags: trunk) | |
2023-09-17
| ||
16:36 | Remove a NEVER() in btree.c that could actually be reached, with the approriate database corruption. (check-in: d1fd00e087 user: drh tags: trunk) | |
2023-09-16
| ||
18:18 | Fix resolution of "rowid" and similar identifiers in queries that use nested joins. (check-in: 37ec43d92b user: dan tags: trunk) | |
17:11 | Enable "OR IGNORE" support via SQLITE_VTAB_CONSTRAINT_SUPPORT for internal-content (not contentless or external-content) fts5 tables. (check-in: c362bde4f4 user: dan tags: trunk) | |
16:39 | Add a NEVER() to an unreachable branch. (Closed-Leaf check-in: 6b6eb38979 user: drh tags: nested-from-rowid-expansion) | |
16:23 | Fix minor code indentation inconsistencies. No function changes. (check-in: 05107a0ae1 user: drh tags: nested-from-rowid-expansion) | |
16:12 | Fix a harmless compiler warning. (check-in: 9e9ff4ca3a user: drh tags: nested-from-rowid-expansion) | |
14:42 | Further tests and assert() statements for the change on this branch. (check-in: 1c202d540a user: dan tags: nested-from-rowid-expansion) | |
2023-09-15
| ||
20:57 | Fix resolution of unqualified "rowid" identifiers in queries with nested joins. (check-in: bbcbd3d537 user: dan tags: nested-from-rowid-expansion) | |
20:28 | Simplifications and performance optimizations for the RTree extension. (check-in: 04a333f5fa user: drh tags: trunk) | |
19:51 | Drop support for the view-scan optimization (check-in [609fbb94b8f01d67]) as it was causing multiple performance regressions. In its place, reduce the estimated row count for DISTINCT subsqueries by a factor of 8. (check-in: f911f1c497 user: drh tags: trunk) | |
19:27 | Minor simplification to the DISTINCT output row count change. (Closed-Leaf check-in: 0738386d7c user: drh tags: rethink-viewscan) | |
19:00 | Do not reduce subquery output row count estimates due to DISTINCT until after the decision of whether or not to use an index for ORDER BY has been made. (check-in: 27390051e8 user: drh tags: rethink-viewscan) | |
18:36 | Allow expressions like "<tbl>.rowid" to refer to implicit rowid columns of tables in nested FROM clauses. (check-in: 59a1bbc69f user: dan tags: nested-from-rowid-expansion) | |
16:15 | Experimental: Assume that a DISTINCT clause on a subquery reduces the number of rows returned by that subquery by a factor of 8. (check-in: 5a940e47d5 user: drh tags: rethink-viewscan) | |
14:06 | The view-scan optimization was added to enhance the performance of one specific query, but it causes performance regressions on a host of others. Disable it (at least temporarily) in order to try to find an alternative way of fixing the one specific query that it was created to fix - an alternative way that does not cause performance problems for other unrelated queries. (check-in: d9625a9eaf user: drh tags: rethink-viewscan) | |
10:27 | Do not try to convert a double into an unsigned 64-bit integer, as that does not work on all platforms. A double can only be converted into a signed 64-bit integer. (check-in: 4ce5a03e74 user: drh tags: branch-3.43) | |
10:24 | Do not try to convert a double into an unsigned 64-bit integer, as that does not work on all platforms. A double can only be converted into a signed 64-bit integer. This is a fix for the problem reported in forum post 9f6db917e1c05d40. (check-in: ce33904641 user: drh tags: trunk) | |
2023-09-14
| ||
20:56 | Tests for java versions of Fts5ExtensionApi.xSetAuxdata() and xGetAuxdata(). (check-in: 858fa236f8 user: dan tags: trunk) | |
20:02 | JNI: move XTokenizeCallback interface out of the Fts5 object - that level of indirection is a holdover from when those classes were in the core package. (check-in: 385ec08570 user: stephan tags: trunk) | |
20:01 | Add a few more tests for Fts5ExtensionApi methods. (check-in: 4ce2a7e8ed user: dan tags: trunk) | |
17:42 | Add a test for the java version of Fts5ExtensionApi.xRowid(). (check-in: 227facf879 user: dan tags: trunk) | |
16:45 | According to forum post 9f6db917e1, older MSVC compilers are unable to convert a double directly into an unsigned long long int, but must first go through a signed long long int. Work around this by restricting the range of doubles that are converted into long long integers so that only the lower 63 bits are used. (Closed-Leaf check-in: 0ab05871ba user: drh tags: legacy-msvc-workaround) | |
16:02 | Document the use of OPFLAG_ISNOOP as the P2 argument on OP_Delete. No functional code changes. (check-in: d88f41b2cf user: drh tags: trunk) | |
14:05 | Avoid a segfault in test program showdb.c that could occur when analyzing a corrupt db. (check-in: 6bf3e90687 user: dan tags: trunk) | |
13:10 | Improve the sqlite3IntFloatCompare() routine so that it is testable. (check-in: bb221381fa user: drh tags: trunk) | |
10:46 | Do not set the global bUseLongDouble flag based purely on sizeof(long double) being more than 8. That is a necessary but not sufficient condition to use the long double routines. Instead, do a run-time test to verify that long double really does provide extra precision. (check-in: aa999d490b user: drh tags: trunk) | |
01:46 | Reduce the number of calls to sqlite3_mprintf() made by RTree. (Closed-Leaf check-in: f158b7d491 user: drh tags: rtree-performance) | |
2023-09-13
| ||
21:32 | JNI: enable the fts5-customization bits by default but elide them from the docs until it's clearer where they're headed. Unrelated minor doc tweaks. (check-in: 21adb1aef2 user: stephan tags: trunk) | |
20:35 | Improved comments on the hasHighPrecisionDouble() routine. No changes to the underlying code. (Closed-Leaf check-in: 810c635ce0 user: drh tags: runtime-longdouble-test) | |
20:06 | Determine at start time whether or not the underlying hardware supports high-precision long double computations. (check-in: 9a854b9196 user: drh tags: runtime-longdouble-test) | |
17:30 | Omit the Reinsert algorithm from RTree. This causes most benchmarks to run faster, at the expense of having a slightly less dense and hence larger index (example: 33 entries/node versus 34 entries/node). (check-in: b3049a1d3d user: drh tags: rtree-performance) | |
17:16 | Doc corrections for the previous checkin. (check-in: 9ea0a9f39d user: stephan tags: trunk) | |
17:11 | Add JNI sqlite3_prepare_multi(), based on feedback. (check-in: fa1c153472 user: stephan tags: trunk) | |
14:07 | Performance optimization to cellContains() in RTREE. (check-in: 43cde22bf3 user: drh tags: rtree-performance) | |
13:12 | In the ChooseLeaf algorithm of RTREE, do an initial pass through the cells of a node looking for solutions that involve no cell enlargement. Only look for the minimum cell enlargement if the enlargement is non-zero for all cells. This results in a performance improvement by reducing the number of calls to cellUnion(). (check-in: 59f0e239d1 user: drh tags: rtree-performance) | |
12:06 | Reduce the number of calls to cellArea() in the ChooseLeaf() algorithm of rtree. (check-in: c633fe6be0 user: drh tags: rtree-performance) | |
11:36 | Remove unused variable from the ChooseLeaf algorithm in r-tree. (check-in: fb2e4a8067 user: drh tags: rtree-performance) | |
11:24 | Replace an if() condition in fts5 that is always true with an assert(). (check-in: 2170312c8d user: dan tags: trunk) | |
2023-09-12
| ||
23:21 | CLI .import to accept EOF in lieu of record terminator on last field of CSV (with multiple field records), per RFC 4180. forum post 5b21c25bdfa (check-in: 6f7842f577 user: larrybr tags: trunk) | |
23:11 | Fix a use-after-free error in fts5 that could occur when querying the "rank" column immediately after another connection changes its definition. (check-in: dfc42411e6 user: drh tags: branch-3.43) | |
18:36 | Fix a use-after-free error in fts5 that could occur when querying the "rank" column immediately after another connection changes its definition. forum post a2dd636330. (check-in: cb54c2da52 user: dan tags: trunk) | |
17:49 | Clarify some metrics output in Tester1.java. (check-in: 4ae7199a82 user: stephan tags: trunk) | |
17:06 | Re-add the fts5 decls to sqlite3-jni.h, removed in a rebuild without fts5 enabled. Need a better solution for this problem. (check-in: 6f269790a0 user: stephan tags: trunk) | |
17:03 | Rename JNI sqlite3_errmsg() to sqlite3_errmsg16() for overall constency with the text()/text16() family of functions. (check-in: c4a8d8a571 user: stephan tags: trunk) | |
16:33 | JNI readme fix. (check-in: 7dde000efc user: stephan tags: trunk) | |
14:36 | 64-bit builds on Windows default to using UTF-8 output (as if the -utf8 command-line option had been specified.) 32-bit builds continue to use Windows code pages. There is also a new -no-utf8 command-line option to force the use of legacy code pages. (check-in: d8c7560e88 user: drh tags: trunk) | |
14:09 | Show the "(utf8)" tag on the CLI banner in Windows if in UTF8 mode. (Closed-Leaf check-in: 822699a4d9 user: drh tags: cli-utf8) | |
2023-09-11
| ||
20:09 | Add the -no-utf8 option to the Windows CLI to cause UTF-8 mode to be omitted. (check-in: 4cb799c690 user: drh tags: cli-utf8) | |
20:02 | Make the -utf8 option the default behavior in the CLI on Windows for 64-bit builds. (check-in: 8b3c306def user: drh tags: cli-utf8) | |
15:35 | Remove a harmlessly unused variable from FTS5. (check-in: 958d62c777 user: drh tags: branch-3.43) | |
15:28 | Refuse to build amalgamation-tarball and snapshot-tarball if the TEA version number disagrees with ./VERSION. (check-in: ad5cc3758b user: drh tags: branch-3.43) | |
15:27 | Refuse to build amalgamation-tarball and snapshot-tarball if the TEA version number disagrees with ./VERSION. (check-in: 3308fdda4b user: drh tags: trunk) | |
15:20 | Merge in JNI's significant divergence since it adopted sqlite3_client_data(). (check-in: e8e07dbbea user: stephan tags: trunk) | |
15:04 | Fix the TEA version number to be 3.43.1 (check-in: e00f1fedc9 user: drh tags: branch-3.43) | |
14:55 | Add support for the sqlite3_get_clientdata() and sqlite3_set_clientdata() interfaces, to better support JNI. (check-in: 9806c0dd28 user: drh tags: trunk) | |
13:06 | Merge version 3.43.1 into the reuse-schema-3.43 subbranch. (check-in: d96586b51b user: drh tags: reuse-schema-3.43) | |
12:01 | Version 3.43.1 (check-in: 2d3a40c05c user: drh tags: release, branch-3.43, version-3.43.1) | |
2023-09-10
| ||
10:56 | Roll back [84e38341aeab] because a direct pointer comparison is ill-advised when the client-data string is dynamically allocated. (Closed-Leaf check-in: 7b884832b7 user: stephan tags: db-client-data) | |
2023-09-09
| ||
17:53 | Remove out-of-date comment regarding use of Parse.pConstExpr. (check-in: 71548f72ad user: dan tags: trunk) | |
15:30 | Merge post-3.43.0 wal2 fixes into the bedrock-3.43 branch. (check-in: 48ecf390da user: drh tags: bedrock-3.43) | |
15:22 | Merge post-3.43.0 wal2 fixes into the wal2-3.43 sub-branch. (Leaf check-in: f82b1a0bde user: drh tags: wal2-3.43) | |
11:20 | In the JNI build, emit a reminder to not check in the javac-generated sqlite3-jni.h when FTS5 is disabled because changes in that feature flag result in unnecessary and large diffs in checked-in generated code. (Closed-Leaf check-in: caceb52fb5 user: stephan tags: jni-client-data) | |
07:52 | Disable FTS5 in the JNI build by default until it can be thoroughly tested. This is mainly so that the public-facing javadoc does not include it. (check-in: 6f25f02b70 user: stephan tags: jni-client-data) | |
2023-09-08
| ||
20:24 | Merge candidate patches for version 3.43.1 into the reuse-schema-3.43 branch. (check-in: c94be4600d user: drh tags: reuse-schema-3.43) | |
20:19 | Merge the latest candidate patches for 3.43.1 into the bedrock-3.43 branch. (check-in: 4cefd16e6d user: drh tags: bedrock-3.43) | |
20:14 | Merge the latest 3.43.1 candidate patches into the wal2-3.43 branch. (check-in: b4491c9fbb user: drh tags: wal2-3.43) | |
20:09 | Merge patches queued for version 3.43.1 into the begin-concurrent-3.43 branch. (check-in: c786798506 user: drh tags: begin-concurrent-3.43) | |
19:35 | Fix a problem with fts5 secure-delete mode causing fts5 to corrupt its records. (check-in: fb24ca17fa user: drh tags: branch-3.43) | |
19:18 | Add extra tests for [4b60a1c3]. (check-in: 6357491bd1 user: dan tags: trunk) | |
18:34 | Fix a problem with fts5 secure-delete mode causing fts5 to corrupt its records. (check-in: 4b60a1c358 user: dan tags: trunk) | |
16:49 | Fix a sanitizer runtime error in wal2 code (that (1 << 31) cannot be represented as an int). (check-in: 79a920c036 user: dan tags: wal2) | |
16:07 | Fix an apparently harmless buffer-overrun that could occur on this branch when committing multi-file transactions in wal2 mode. (check-in: ffe043ba06 user: dan tags: bedrock) | |
16:05 | Fix an apparently harmless buffer-overrun that could occur on this branch when committing multi-file transactions in wal2 mode. (check-in: dde9fcbde1 user: dan tags: wal2) | |
2023-09-07
| ||
17:54 | Add -DSQLITE_OMIT_LOOKASIDE=1 to the "Sanitize" configuration in testrunner_data.tcl. (check-in: a917ebf17b user: dan tags: trunk) | |
16:53 | Enhance the ./configure script and its associated Makefile.in so that the --with-linenoise=DIR argument cause the linenoise command-line editing library located in directory DIR to be linked with the sqlite3 CLI. (check-in: 6c7822b554 user: drh tags: trunk) | |
16:36 | Enhance the ./configure script and its associated Makefile.in so that the --with-linenoise=DIR argument cause the linenoise command-line editing library located in directory DIR to be linked with the sqlite3 CLI. (Closed-Leaf check-in: 9c4e4928b1 user: drh tags: wrong-branch) | |
14:10 | Fix a bad assert() in FTS3. (check-in: 61d2074c69 user: drh tags: branch-3.43) | |
14:04 | Fix a buffer overread in the sessions extension that could occur when processing a corrupt changeset. (check-in: 6009c871a4 user: drh tags: branch-3.43) | |
13:53 | Fix a buffer overread in the sessions extension that could occur when processing a corrupt changeset. (check-in: 0e4e7a05c4 user: dan tags: trunk) | |
13:48 | Fix a harmless compiler warning in the sqldiff.c utility. (check-in: e6390a6567 user: drh tags: trunk) | |
13:43 | Add the "tool-zip" makefile target with the intention of using it to build the "sqlite-tool-*.zip" deliverables. deliverables. (check-in: 06e4af492d user: drh tags: trunk) | |
11:48 | Version number to 3.43.1. (check-in: fdfe4d60b3 user: drh tags: branch-3.43) | |
02:13 | Fix a problem with the new xIntegrity method for virtual tables, and also fix a bad assert() in FTS3 that was found by the new xIntegrity method. (check-in: 52bbf44f2d user: drh tags: trunk) | |
2023-09-06
| ||
17:07 | Add documentation to sqlite3_get/set_clientdata() to make it clear that these are security-sensitive interfaces that should not be exposed to potential attackers. (check-in: 2837061d66 user: drh tags: db-client-data) | |
16:51 | Add the xIntegrity method to the sqlite3_module object, thus enabling PRAGMA integrity_check to operate on virtual tables. Make use of this new method in the FTS3/4, FTS5, and RTREE virtual tables. (check-in: 2f08e7d233 user: drh tags: trunk) | |
16:22 | Fix unreachable branches. (Closed-Leaf check-in: f00fc16394 user: drh tags: vtab-integrity-check) | |
14:00 | Change the xIntegrity virtual table method signature so that it returns an integer error code and writes the error message into a parameter. (check-in: f1d4024a8c user: drh tags: vtab-integrity-check) | |
12:52 | Add the xIntegrity method to the sqlite3_module object. Implement this method in RTREE, FTS3/4, and FTS5 so that "PRAGMA integrity_check" also verifies the correctness of shadow tables associated with those virtual tables. (check-in: 17bede8cde user: drh tags: vtab-integrity-check) | |
07:39 | Move Java-side FTS5 bits into the fts5 subpackage to (A) make it easy to optionally bundle it (or not) and (B) set a precedent for puting extension APIs in their own package. (check-in: 4c773e1f33 user: stephan tags: jni-client-data) | |
06:54 | Java FTS5 API renaming, for consistency. (check-in: 5e4cc9f386 user: stephan tags: jni-client-data) | |
2023-09-05
| ||
15:43 | Add debugging routines to check each page for corruption after it it is manipulated by the fts5 secure-delete code, and to log said page via sqlite3_log() if it is found to be corrupt. (Leaf check-in: da4b7385a0 user: dan tags: fts5-secure-delete-debug) | |
15:03 | Fix a few SQLITE_MISUSE returns so that they call sqlite3MisuseError(). (check-in: 93f74490fa user: drh tags: trunk) | |
2023-09-04
| ||
16:48 | Add tests for, and source code comments to, fts5. No changes to code. (check-in: b12afff4ef user: dan tags: trunk) | |
12:50 | Do not make assumptions about the byteorder of PowerPC processors. (check-in: 4a2498fed4 user: drh tags: trunk) | |
06:15 | In JNI routines which set an OutputPointer.value, always do so, even on error, for consistency. (check-in: d0df62f0af user: stephan tags: jni-client-data) | |
05:58 | Remove several unnececessary functions. (check-in: 84433c72b0 user: stephan tags: jni-client-data) | |
05:34 | Move an internal utility class out of the public Java API. (check-in: 8e1ae3197a user: stephan tags: jni-client-data) | |
04:23 | Expose sqlite3_bind_parameter_name() to JNI. Extend the definition of null for the @NotNull annotation, to consider closed/finalized Java-side handles wrapping C-side resources as null for its purposes. (check-in: fc34e2bfa4 user: stephan tags: jni-client-data) | |
2023-09-03
| ||
15:01 | In mksqlite3c.tcl, pass EXTRA_SRC files through verbatim instead of applying the post-processing needed for sqlite's own source files. (check-in: 44f3d7d054 user: stephan tags: extra-src) | |
14:41 | Add the missing sqlite3_blob_read() to [9a9945c405cf]. Elaborate on the definition of the @NotNull annotation. (check-in: 85952b4a52 user: stephan tags: jni-client-data) | |
14:13 | Expose the sqlite3_blob_...() APIs to JNI. (check-in: 9a9945c405 user: stephan tags: jni-client-data) | |
12:46 | Expose sqlite3_system_errno() to JNI. (check-in: bac54da29c user: stephan tags: jni-client-data) | |
12:32 | Expose sqlite3_stmt_status() to JNI. (check-in: d266acc23e user: stephan tags: jni-client-data) | |
12:17 | Expose sqlite3_randomness() to JNI. (check-in: de96922421 user: stephan tags: jni-client-data) | |
11:58 | Expose sqlite3_get/set_auxdata() to JNI. (check-in: 0de3271717 user: stephan tags: jni-client-data) | |
11:16 | Expose sqlite3_get_autocommit() to JNI. (check-in: 67391c6588 user: stephan tags: jni-client-data) | |
11:08 | Remove some unnecessary code. (check-in: c7f9bbbbf0 user: stephan tags: jni-client-data) | |
10:36 | Add a couple more sqlite3_backup tests. (check-in: 5c2cf89d2c user: stephan tags: jni-client-data) | |
10:23 | Export the sqlite3_backup_...() APIs to JNI. (check-in: 865a3df5d5 user: stephan tags: jni-client-data) | |
09:28 | Export the sqlite3_keyword_...() family of functions to JNI. (check-in: bd554db391 user: stephan tags: jni-client-data) | |
2023-09-02
| ||
22:07 | Eliminate a redundant NK_DbAboutToClose notification. (Leaf check-in: eccffaa7ca user: larrybr tags: cli_extension) | |
22:00 | Issue NK_DbAboutToClose notifications for any shell DB about to be closed, whether presently visible in ShellExState or not. (check-in: 8e6e54e48c user: larrybr tags: cli_extension) | |
21:55 | Also add support for EXTRA_SRC in the Makefile for MSVC. (check-in: bfc18ef432 user: mistachkin tags: extra-src) | |
19:35 | Performance optimization to the OP_MakeRecord opcode. (check-in: 2aef9af3dd user: drh tags: trunk) | |
14:36 | Add sqlite3_config(SQLITE_CONFIG_LOG) support to Java and correct clearing of SQLITE_CONFIG_SQLLOG. Correct missing names in propagated UDF exception messages. (check-in: 652e2e8210 user: stephan tags: jni-client-data) | |
12:53 | Expose sqlite3_complete() to JNI. Slightly widen the definition of "canonical" for the purposes of the @Canonical annotation. Add a few new tests. (check-in: a59fe0cd95 user: stephan tags: jni-client-data) | |
11:26 | Duplicate code consolidation. (check-in: a1872ae959 user: stephan tags: jni-client-data) | |
10:18 | Remove a superfluous level of indirection in the JNI internals. (check-in: 8dca6f7660 user: stephan tags: jni-client-data) | |
08:51 | Further JNI cleanups. (check-in: 30e38173c3 user: stephan tags: jni-client-data) | |
08:04 | Optimize sqlite3_get/set_clientdata() for the presumably common case of a static string pointer. (check-in: 84e38341ae user: stephan tags: db-client-data) | |
05:37 | Add EXTRA_SRC build var. If set, it is treated like a list of files, each of which gets appended verbatim to sqlite3.c. The intent is to enable easily extending the amalgamation. Requested in/around forum post 3fcc655f0ac0efe8. (check-in: 934b843398 user: stephan tags: extra-src) | |
2023-09-01
| ||
17:51 | Add a timer to the JS SQLTester app to warn if it appears that loading the module has failed, which is commonly caused by the test scripts not being compiled. (check-in: f9c1f9cad1 user: stephan tags: jni-client-data) | |
16:28 | Correct a Tester1.java test which inadvertently created a spurious db file in the current dir. Unrelated minor cleanups. (check-in: 016bbdadbf user: stephan tags: jni-client-data) | |
14:20 | Make the JNI-internal metrics opt-in rather than opt-out so client builds won't have them by default. Unrelated doc tweaks. (check-in: aa72d25a22 user: stephan tags: jni-client-data) | |
13:27 | Make JNI interfaces of sqlite3_column/value_text() match the C ones better. Internal JNI cleanups and simplifications. (check-in: eb24f97253 user: stephan tags: jni-client-data) | |
11:30 | In the OPFS VFS' importDb() methods, overwrite the header bytes 18 and 19 with 1 instead of 0. Correct a potentially leaked/unclosed SharedAccessHandle when importDb() throws. (check-in: 6795a6107b user: stephan tags: branch-3.43) | |
11:10 | Second half of [1c532e80]. (check-in: 8ca1d815a5 user: stephan tags: trunk) | |
11:05 | In the OPFS VFS' importDb() methods, overwrite the header bytes 18 and 19 with 1 instead of 0. Both seem to work, but 1 is correct. (check-in: 1c532e807b user: stephan tags: trunk) | |
10:37 | Remove some newly-dead code. (check-in: dc0fa76b39 user: stephan tags: jni-client-data) | |
10:32 | Expose sqlite3_limit() to JNI and remove the all SQLITE_ macros from the Java interface which are not exposed via sqlite3.h (SQLITE_MAX_... and SQLITE_THREADSAFE_...). (check-in: 5fe5b0a585 user: stephan tags: jni-client-data) | |
09:43 | JNI build improvements. Rename a Java class. Get the jar target working again. (check-in: d086b7844c user: stephan tags: jni-client-data) | |
06:50 | Expose sqlite3_stmt_explain(), sqlite3_stmt_isexplain(), and sqlite3_stmt_readonly() to JNI. Remove a mutex lock made superfluous by sqlite3_client_data(). (check-in: 208b786afe user: stephan tags: jni-client-data) | |
2023-08-31
| ||
19:35 | Export sqlite3_txn_state() to JNI. (check-in: d732f71d0a user: stephan tags: jni-client-data) | |
18:34 | Minor JNI cleanups. (check-in: 2e2bb841ef user: stephan tags: jni-client-data) | |
18:26 | Do not disable unused columns in a UNION ALL sub-query if any component of the sub-query is DISTINCT. (check-in: 0d50d27197 user: drh tags: branch-3.43) | |
18:00 | Do not disable unused columns in a UNION ALL sub-query if any component of the sub-query is DISTINCT. Problem introduced by [7c2d3406000dc8ac] and reported by forum post aeae62275ebbf584. (check-in: c84d5602ac user: dan tags: trunk) | |
15:24 | Add convenience overloads of JNI sqlite3_table_column_metadata() to simplify usage. (check-in: faf4e6d398 user: stephan tags: jni-client-data) | |
14:57 | Export sqlite3_(db_)free_memory() and sqlite3_table_column_metadata() to JNI. Further internals renaming for consistency and legibility. (check-in: 7c86aa3400 user: stephan tags: jni-client-data) | |
2023-08-30
| ||
18:51 | Use mutexes to make sqlite3_set_clientdata() and sqlite3_get_clientdata() threadsafe. (check-in: 443ea20ddb user: drh tags: db-client-data) | |
18:45 | Replace JNI's per-db-instance state tracking with the new sqlite3_set/get_clientdata(). (check-in: e7c11d34ee user: stephan tags: db-client-data) | |
18:38 | Fix the json_array_length() function so that it gives the correct result even when its JSON input comes from json_remove(). (check-in: d63d9ee3b7 user: drh tags: bedrock-3.43) | |
18:34 | Fix the json_array_length() routine so that it reports the correct answer even if its JSON input comes from the output of json_remove(). (check-in: 8b390d7ee0 user: drh tags: wal2-3.43) | |
18:27 | Fix a bug in json_array_length() introduced in version 3.43.0 If the JSON input comes from json_remove(), the removed array entries are still counted as part of the array length. (check-in: db7cb6cb73 user: drh tags: branch-3.43) | |
18:19 | Fix a bug in json_array_length() introduced in version 3.43.0 by check-in [df099ad713011b67]. If the JSON input comes from json_remove(), the removed array entries are still counted as part of the array length. Bug report in forum post 0560d5e482. (check-in: 69a635958a user: drh tags: trunk) | |
17:41 | Remove another unreachable branch in the sqlite3_set_clientdata() logic. (check-in: 57e31e6b10 user: drh tags: db-client-data) | |
17:14 | Remove an unreachable branch, and improve documentation of sqlite3_set_clientdata(). (check-in: 565c68adee user: drh tags: db-client-data) | |
16:34 | Fix the AVG() and TOTAL() functions so that they work with infinities. (check-in: 9877c7c838 user: drh tags: bedrock-3.43) | |
16:24 | Fix the AVG() and TOTAL() functions so that they work with infinitites. (check-in: 988e5308b6 user: drh tags: wal2-3.43) | |
16:08 | Fix the AVG() and TOTAL() functions so that they work with infinitites. (check-in: 97e20716c7 user: drh tags: branch-3.43) | |
16:03 | Fix the AVG() and TOTAL() functions (after the SUM() fix of [77d3dcd283595c52]) so that they work with infinitites. Fixes a bug introduced by check-in. [c63e26e705f5e967]. Bug reported by forum post 8960fb40cc. (check-in: 6df6f17ccb user: drh tags: trunk) | |
15:51 | Further tweaking in both SQLTesters. (check-in: 46b0eb98e7 user: stephan tags: trunk) | |
15:42 | Fix to the sqlite3_get_clientdata() interface. (check-in: 937cd1762b user: drh tags: db-client-data) | |
15:20 | New experimental API for attaching client data to a database connection. (check-in: d542837fdb user: drh tags: db-client-data) | |
14:20 | When a JS SQLTester script throws, report the exception details back to the UI regardless of whether it's fatal. (check-in: 273d3b05f6 user: stephan tags: trunk) | |
13:07 | Add a JS implementation of Java's SQLTester. (check-in: b530792a51 user: stephan tags: trunk) | |
11:54 | Add a UI, of sorts, to the JS SQLTester. (Closed-Leaf check-in: 249e82b991 user: stephan tags: js-tester) | |
00:22 | Add a mechanism with which to import external SQLTester scripts into the JS testing tool. (check-in: bb08ba020c user: stephan tags: js-tester) | |
2023-08-29
| ||
21:30 | Add directives support to JS SQLTester comparable to the Java impl. This brings the two to feature parity. (check-in: 7cef4a8300 user: stephan tags: js-tester) | |
20:44 | More fleshing out of JS SQLTester. (check-in: 8c503dfb9f user: stephan tags: js-tester) | |
20:37 | Merge the latest branch-3.43 fixes into the bedrock branch. (check-in: 7e3e007583 user: drh tags: bedrock-3.43) | |
20:24 | Merge the branch-3.43 fixes into the wal2 branch. (check-in: 903e997457 user: drh tags: wal2-3.43) | |
20:19 | Fix a test case problem in wal2recover2.test. (check-in: 9e927eed2d user: drh tags: wal2) | |
20:01 | JS SQLTestRunner can now run the Java impl's core-most sanity tests, missing only support for directives. (check-in: 5e79836937 user: stephan tags: js-tester) | |
18:28 | New conversion letters added to strftime(): %e, %k, %I, %l, %R, %P, %p, %T, %u. (check-in: 058722b2d0 user: drh tags: trunk) | |
15:39 | Get the JS SQLTester command handlers in place sans those which have to run SQL. (check-in: d21b121796 user: stephan tags: js-tester) | |
15:38 | Change the version number to 3.44.0 to begin the next development cycle. (Should have done this a few check-ins ago.) (check-in: 253fe4a45d user: drh tags: trunk) | |
15:24 | Add support for the CONCAT() and CONCAT_WS() SQL functions, modeled after the PostgreSQL behavior. (check-in: 0b434ca7aa user: drh tags: trunk) | |
13:28 | Get the basic parsing pieces and command dispatching in place in the JS SQLTester. (check-in: 8fcc2a553c user: stephan tags: js-tester) | |
11:22 | Init bits of a port of Java's SQLTester to JS. Far from complete. (check-in: 60eec5ceda user: stephan tags: js-tester) | |
10:50 | Change a variable from "int" to "i64" to make it easier to prove that it cannot overflow. (check-in: 00a8b3a263 user: dan tags: trunk) | |
00:10 | Remove some dead code. Add a skeleton SQLTester script for fts5. (check-in: 6c83e31fa9 user: stephan tags: trunk) | |
2023-08-28
| ||
23:18 | Factor out a superfluous struct member. (check-in: 76d3911c37 user: stephan tags: trunk) | |
22:52 | Further minor internal JNI simplifications. (check-in: 1808d12ee0 user: stephan tags: trunk) | |
21:27 | Improve threadability of the JNI collation-related bindings and add infrastructure for similar cases. (check-in: f02dad66b9 user: stephan tags: trunk) | |
20:21 | Correct JNI mapping of collations to be 1-db-to-many-collations. (check-in: b927b0f5a6 user: stephan tags: trunk) | |
20:14 | Updates to testrunner.tcl so that it runs fuzztest using multiple jobs. (check-in: ceeabe9f8b user: dan tags: trunk) | |
20:02 | Fix the "sdevtest" testrunner.tcl command so that it correctly enables asan on windows. (Closed-Leaf check-in: 6463192369 user: dan tags: testrunner) | |
18:15 | Fixes for testrunner.tcl on windows. (check-in: 26ae090889 user: dan tags: testrunner) | |
16:28 | Another fix for valgrind permutation. Remove the "copydir" table column - just add a [cp] or [copy] command to the test script where this functionality is required. (check-in: 448b9a575e user: dan tags: testrunner) | |
16:22 | Remove a pair of what are arguably unnecessary mutex locks (and often hit). More JNI-internal cleanups. (check-in: ecf07a0144 user: stephan tags: trunk) | |
16:05 | Update tool/mkctimec.tcl to account for [fe7365254d343e]. (check-in: 349aac7e8d user: stephan tags: trunk) | |
15:58 | Add support for the -DSQLITE_EXTRA_AUTOEXT=name compile-time option. forum thread 00829394c74a670f. (check-in: fe7365254d user: drh tags: trunk) | |
14:59 | Duplicate code consolidation. (check-in: 71f239747c user: stephan tags: trunk) | |
13:18 | Move a metrics counter so that it can be used to indirectly witness the race condition fix from [f5274e00f17d58e0] by recording varying final values for that metric across consecutive multi-threaded test runs. (check-in: 54d2209d24 user: stephan tags: trunk) | |
13:06 | Resolve a JNI-side race condition. Removed a now-extraneous struct member. Internal API renaming for consistency. (check-in: f5274e00f1 user: stephan tags: trunk) | |
12:57 | Fix an issue with infinity handling by the SUM() function that goes back to the extended-precision SUM() enhancement of check-in c63e26e705f5e967. Problem reported by forum post 1c06ddcacc86032a. (check-in: 692266abd1 user: drh tags: branch-3.43) | |
12:20 | Fix an issue with infinity handling by the SUM() function that goes back to the extended-precision SUM() enhancement of check-in [c63e26e705f5e967]. Problem reported by forum post 1c06ddcacc86032a. (check-in: 77d3dcd283 user: drh tags: trunk) | |
12:06 | Resolve a condition which could cause an is-interrupted db to call its progress callback. (check-in: a0d0f1aafc user: stephan tags: trunk) | |
11:22 | Fix the valgrind permutation on this branch. (check-in: ccbf06760e user: dan tags: testrunner) | |
11:10 | Further JNI cleanups and javadoc additions. (check-in: c393b1c9f5 user: stephan tags: trunk) | |
07:28 | Lots of javadoc-related tweaks. (check-in: cfe06f90e2 user: stephan tags: trunk) | |
05:48 | Correct a package renaming bug in the previous check-in and start applying the @Canonical annotation to functions to distinguish canonical API functions and Java-specific APIs. (check-in: 8a01600680 user: stephan tags: trunk) | |
05:39 | Move the JNI annotations into the annotation subpackage. (check-in: e4dedf90a9 user: stephan tags: trunk) | |
05:06 | Resolve a makefile bug which causes sqlite3-worker1-bundler-friendly.mjs to be built incorrectly. Reported in forum post a874e435cf4690c1. (check-in: 289d2a0e64 user: stephan tags: branch-3.43) | |
04:59 | Resolve a makefile bug which causes sqlite3-worker1-bundler-friendly.mjs to be built incorrectly. Reported in forum post a874e435cf4690c1. (check-in: 9d68c7ef10 user: stephan tags: trunk) | |
2023-08-27
| ||
15:15 | Reimplement JNI's sqlite3_value_text() as a native instead of a Java-side proxy. Unrelated minor simplifications. (check-in: 401dd6ee28 user: stephan tags: trunk) | |
14:47 | Generic cleanups in Tester1.java. (check-in: fbc1b6310b user: stephan tags: trunk) | |
13:43 | Remove JNI sqlite3_column_java_object(), as the protection rules of sqlite3_values makes it impossible to implement safely. Add JNI sqlite3_bind_java_object(). (check-in: 29bd4a23a4 user: stephan tags: trunk) | |
11:28 | Correct the signature mismatch between JNI sqlite3_column/value_text16() and add related tests. (check-in: 77f6e70f17 user: stephan tags: trunk) | |
10:40 | Make JNI sqlite3_trace_v2() thread-safe. Re-add a piece removed in [bae4d022aad9b] to work around a JVM crash which is unpredictably triggered by its substitute. Fix the THREADMODE=0 JNI build. Further internal API simplifications. (check-in: 3f9f7a9cb0 user: stephan tags: trunk) | |
09:12 | Factor out an unnecessary struct member. JNI sqlite3_shutdown() now frees up the various object-recycling bins. Doc touchups. (check-in: bae4d022aa user: stephan tags: trunk) | |
08:10 | Factor out a superfluous JNI class. Doc and code style cleanups. (check-in: 0f37f27148 user: stephan tags: trunk) | |
07:26 | JNI code reorgs and simplify the failing-alloc interface a bit. (check-in: deed5797de user: stephan tags: trunk) | |
2023-08-26
| ||
22:34 | Apply the JNI OOM checks to memory returned by JDK APIs, as distinct from our APIs. (check-in: 1ff78582bf user: stephan tags: trunk) | |
21:13 | Eliminate a superfluous JNI-internal middle-man class. (check-in: daede0f801 user: stephan tags: trunk) | |
21:04 | Updates to testrunner.tcl so that it runs "make fuzztest" using multiple jobs. (check-in: 7596ea7074 user: dan tags: testrunner) | |
21:02 | Whether or not OOM is always fatal in JNI is now a compile-time option. (check-in: 320a34c080 user: stephan tags: trunk) | |
19:34 | Correct a string length misuse in JNI sqlite3_result_error() in an OOM case. Unrelated minor JNI cleanups. (check-in: 4252f56f3d user: stephan tags: trunk) | |
18:15 | Remove a bunch of commented-out debug output. (check-in: b49488481e user: stephan tags: trunk) | |
18:01 | Re-order some out-of-order JNI APIs. Correct JNI sqlite3_open_v2() behavior in a particular OOM condition. (check-in: 49d3be002c user: stephan tags: trunk) | |
17:36 | Two significant typo fixes for [1a30919bfbb686]. (check-in: 6a6ee6dd54 user: stephan tags: trunk) | |
17:30 | Bind sqlite3_db_handle() to JNI. (check-in: 1a30919bfb user: stephan tags: trunk) | |
16:55 | Correct a potential duplicate xDestroy() being triggered for Java-side collations. (check-in: 25331172f7 user: stephan tags: trunk) | |
16:29 | Recycle per-UDF JNI state. (check-in: cf406528eb user: stephan tags: trunk) | |
14:55 | Code consolidation cleanups. (check-in: d6b5ecd287 user: stephan tags: trunk) | |
12:19 | Add -sqllog flag to the JNI 'tests' target because it hits APIs which are otherwise not tested. (check-in: cc3153ed34 user: stephan tags: trunk) | |
11:57 | JNI internal cleanups and docs. (check-in: b7b26bfb4f user: stephan tags: trunk) | |
10:51 | Remove the Java BusyHandler.xDestroy() method - it should not have had one. Eliminate the last of the potentially-significant MUTF-8 cases. (check-in: c852f1ebbd user: stephan tags: trunk) | |
10:20 | Improve threading support for all types of JNI-side callback hooks, making them safe to invoke if another thread is busy replacing them. (check-in: f2af7bbf49 user: stephan tags: trunk) | |
2023-08-25
| ||
16:43 | Move the 3 Java SQLFunction subclasses from inner classes to package scope. (check-in: 21fd47a68d user: stephan tags: trunk) | |
16:26 | Missed a straggler when renaming Java classes in [8ca528006533ac1]. Document threading limitations. (check-in: 5786b95f5d user: stephan tags: trunk) | |
14:17 | Hopefully the last major API rename in the JNI bits: rename all lower_camel_case classes which do not have direct counterparts in the C API to UpperCamelCase, as that's more idiomatic. Java types which reflect C-style types are unaffected. (check-in: 8ca5280065 user: stephan tags: trunk) | |
13:23 | More Java API renaming for consistency. (check-in: 4e457778de user: stephan tags: trunk) | |
12:29 | Re-enable SQLITE_THREADSAFE=0 in the JNI build and add multitest target which builds and runs the tests in all 3 threading modes. (check-in: 6b1c816f6a user: stephan tags: trunk) | |
11:32 | Code restructuring. Force SQLITE_THREADSAFE in JNI builds for the time being, as threadsafe==0 leads to as-yet-mysterious JNI-level reference errors. (check-in: 5a099caa2c user: stephan tags: trunk) | |
11:06 | Remove incorrect (but harmless) dependency on source code file "sessionfuzz-data1.db" from main.mk and Makefile.in. (check-in: 17d56c0207 user: dan tags: trunk) | |
04:27 | Only build in the JNI-side metrics tracking in SQLITE_DEBUG builds. (check-in: 646e7fc3b5 user: stephan tags: trunk) | |
04:02 | Javadoc and internal API cleanups. (check-in: 10a43cba9b user: stephan tags: trunk) | |
02:57 | Replace all of the JNI XyzHook/Handler classes with snake_cased ones which follow unified naming conventions to make them easier to apply. (check-in: 76e62a3812 user: stephan tags: trunk) | |
00:27 | javadoc additions. (check-in: bedf33d403 user: stephan tags: trunk) | |
2023-08-24
| ||
22:28 | Re-frame the incongruous SQLite3Jni.uncacheThread() API as sqlite3_java_uncache_thread(). (check-in: 7232b03395 user: stephan tags: trunk) | |
21:45 | Update some outdated JNI docs and account for a function renamed earlier this evening. (check-in: 3f684ef501 user: stephan tags: trunk) | |
21:31 | Do not pre-allocate sqlite3_aggregate_context() for Java UDFs, as it unduly complicates UDF initialization. (check-in: e8308f0c6e user: stephan tags: trunk) | |
19:08 | Add doc/testrunner.md, for documenting the testrunner.tcl script. (check-in: 9c69a28401 user: dan tags: trunk) | |
18:43 | More code legibility and style improvements in the JNI pieces. Start work on a javadoc build. (check-in: 62b404d62f user: stephan tags: trunk) | |
17:25 | Doc, code style, and legibility cleanups. (check-in: cf185bcd25 user: stephan tags: trunk) | |
15:42 | Doc style fixes. (check-in: 862f9828e0 user: stephan tags: trunk) | |
15:11 | Add a new non-goal to the JNI README.md. (check-in: 53000cdae9 user: stephan tags: trunk) | |
14:49 | Merge the jni-threading branch into trunk, eliminating the JNI API's prior threading limitations. (check-in: 3739c8aa70 user: stephan tags: trunk) | |
14:43 | Merge into trunk improvements made to the wasm APIs which were too late for 3.43. (check-in: ac9da5c79a user: stephan tags: trunk) | |
14:31 | Correct JNI layer's misuse of an sqlite3-internal error-reporting API (no mutex held). Style cleanups. Eliminate lookups of per-thread state by approximately 85% across the test suite. (Closed-Leaf check-in: 1f46ba8d3b user: stephan tags: jni-threading) | |
14:17 | Ensure that db mutex is held when using sqlite3ErrorWithMessage() to avoid a potential assertion in debug builds. (Closed-Leaf check-in: b8f6a50a4b user: stephan tags: wasm-post-343) | |
13:42 | Fix a test case problem in wal2recover2.test. (check-in: 81361769e1 user: dan tags: bedrock) | |
13:32 | Version-3.43.0 for the reuse-schema branch. (check-in: 6f1bcd6a1a user: drh tags: reuse-schema) | |
13:26 | Version 3.43.0 for the bedrock branch. (check-in: e7b1ee1a99 user: drh tags: bedrock) | |
13:19 | Version 3.43.0 for the wal2 branch. (check-in: b5970fc459 user: drh tags: wal2) | |
13:17 | Version 3.43.0 for the begin-concurrent branch. (check-in: e67bf28245 user: drh tags: begin-concurrent) | |
12:36 | Version 3.43.0 (check-in: 0f80b798b3 user: drh tags: trunk, release, major-release, version-3.43.0) | |
12:01 | Change a variable name in fts5FlushOneHash() to avoid shadowing another. (check-in: 3f5bec9a68 user: dan tags: trunk) | |
11:57 | Add more JNI docs, tests, and a handful of Java-side overloads. (check-in: d19a431fac user: stephan tags: jni-threading) | |
2023-08-23
| ||
18:42 | Fix typo in the Lemon documentation. (check-in: 5daeb318c0 user: drh tags: trunk) | |
18:29 | More changes to documents for GitHub-style markdown. (check-in: f20f84ef71 user: drh tags: trunk) | |
18:26 | Fix the Markdown in the compile-for-windows.md document so that it works on GitHub. Improved header text in README.md. (check-in: a25360c020 user: drh tags: trunk) | |
17:52 | JNI cleanups regarding building with certain features disabled. (check-in: a9e6d5158b user: stephan tags: jni-threading) | |
17:15 | Remove unnecessary jclass-type struct members. (check-in: d67255f725 user: stephan tags: jni-threading) | |
16:41 | Some thinking-out-loud about how to implement vtabs in Java. In no way complete. (Closed-Leaf check-in: 49c24c29ec user: stephan tags: jni-vtab) | |
13:36 | Add a note to the JNI README explaining why the Java API has callback names like xFunc() and xPreUpdate(). (check-in: 415447a310 user: stephan tags: jni-threading) | |
13:17 | Bind sqlite3_preupdate_hook() and friends to JNI. (check-in: d0c425b5c1 user: stephan tags: jni-threading) | |
12:53 | Minor adjustments to the wording about pull requests in the README.md file. (check-in: 6b2d68afd8 user: drh tags: trunk) | |
10:36 | Bind a subset of sqlite3_config() to JNI: threading modes and sqllog. (check-in: fce8ecaf7f user: stephan tags: jni-threading) | |
10:20 | The pageOnDirtyList() assertion is too slow even for debugging builds, for some corner cases. It makes the query appear to hang. So make it an EXPENSIVE_ASSERT instead. (check-in: bb9dcdaf32 user: drh tags: trunk) | |
09:05 | Numerous minor cleanups and code style conformance improvements. (check-in: 6c92d88492 user: stephan tags: jni-threading) | |
00:17 | Improve C-side exception handling from Java-side UDF callbacks. (check-in: aebbc24afb user: stephan tags: jni-threading) | |
2023-08-22
| ||
23:00 | Minor Tester1.java cleanups. (check-in: 70d936953b user: stephan tags: jni-threading) | |
22:13 | Fix Tester1 so that exceptions triggered via threads are not silently ignored. Disable auto-extension tests in multi-thread mode because concurrent threads rightfully interfere with that. (check-in: 56b2a077ac user: stephan tags: jni-threading) | |
20:10 | More work on the JNI multi-threaded test runner. (check-in: 9a74ad716b user: stephan tags: jni-threading) | |
18:36 | Disassociate JNI db handles from the thread that created them, as it's no longer relevant. (check-in: 8b78b737e6 user: stephan tags: jni-threading) | |
17:51 | Correct JNI binding of sqlite3_shutdown() to clean up all cached JNIEnv objects. (check-in: 02e868690f user: stephan tags: jni-threading) | |
17:36 | JNI internal cleanups and correct two leaked db handles in test code. (check-in: f927a30b5b user: stephan tags: jni-threading) | |
16:44 | Fix a harmless memory leak in the sqldiff utility. (check-in: 724bc15701 user: drh tags: trunk) | |
15:47 | Merge the trunk Makefile enhancements into the reuse-schema branch - especially the new "sdevtset" makefile target. (check-in: f55f5e9dff user: drh tags: reuse-schema) | |
15:30 | Move the JNI per-thread cache of NativePointerHolder refs into global space. This allows better-targeted mutex locks and incidentally eliminates the lagginess and post-run hangs in Tester1's multi-thread mode (presumably caused by deadlocks). (check-in: e209f56a97 user: stephan tags: jni-threading) | |
15:19 | Add makefile target "sdevtest" - like "mdevtest" except asan and usan enabled for the non-debug test. (check-in: a449d650cd user: dan tags: trunk) | |
13:41 | Update version number in autoconf/tea/configure.ac. (check-in: 055ae724ff user: dan tags: trunk) | |
11:34 | Move most of the per-JNIEnv global Java class refs into the global state, saving a bit of per-thread overhead. (check-in: 7342bf5787 user: stephan tags: jni-threading) | |
11:20 | Update autoconf/Makefile.msc (by running mkmsvcmin.tcl) to support the "ASAN=1" option. (check-in: 17028ba7a9 user: dan tags: trunk) | |
2023-08-21
| ||
23:45 | Minor JNI cleanups. (check-in: b88910aaaa user: stephan tags: jni-threading) | |
18:31 | Merge latest changes from the wal2 branch into this one. (check-in: 4d8df0c426 user: dan tags: bedrock) | |
18:25 | Fix problems related to structured-exception-handling on this branch. (check-in: d3d77e35ea user: dan tags: bedrock) | |
18:03 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 76a99a2c40 user: drh tags: begin-concurrent) | |
18:02 | Merge latest trunk changes into this branch. (check-in: 135bf72c6b user: dan tags: wal2) | |
17:53 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: e94f09f188 user: drh tags: reuse-schema) | |
17:49 | Fix problems related to structured-exception-handling on this branch. (check-in: dd86c2729b user: dan tags: begin-concurrent) | |
17:26 | Fix MSVC testfixture.exe builds. (check-in: 7004c9027e user: dan tags: begin-concurrent) | |
16:14 | Fix an undefined integer overflow in fts5. (check-in: f5c50349b1 user: dan tags: trunk) | |
15:29 | ifdef adjustments so that SQLITE_OMIT_WAL works with SQLITE_USE_SEH. (check-in: 0462a2612d user: drh tags: trunk) | |
14:40 | Fix another UBSAN inaccuracy in fuzzcheck. (check-in: a6fb9de8f8 user: drh tags: trunk) | |
14:28 | Address minor inaccuracies in fuzzcheck and RTREE found by UBSAN. (check-in: a64e6c2fd8 user: drh tags: trunk) | |
2023-08-19
| ||
14:49 | JNI cleanups. (check-in: 0a84131008 user: stephan tags: jni-threading) | |
12:34 | Merge trunk into jni-threading branch. (check-in: 8254479c6f user: stephan tags: jni-threading) | |
12:32 | JNI doc additions. (check-in: 0c7ac34f30 user: stephan tags: jni-threading) | |
11:52 | JNI test code cleanups. (check-in: e202b6e69d user: stephan tags: jni-threading) | |
11:26 | Minor JNI cleanups. (check-in: 1cecb9e038 user: stephan tags: jni-threading) | |
10:43 | Add multi-thread run mode to JNI Tester1. It works but hangs on exit sometimes for Java reasons as yet not understood. (check-in: bdbaf7a453 user: stephan tags: jni-threading) | |
08:22 | Replace JNI::NewStringUTF() for the remaining cases where output may be incompatible with MUTF-8. It is now only used when we know the output to be plain ASCII. (check-in: 2d955eef25 user: stephan tags: jni-threading) | |
08:12 | shell.c.in help text typo fix. No functional changes. (check-in: c319033276 user: stephan tags: trunk) | |
2023-08-18
| ||
15:39 | Rename the decimal_sci() function to decimal_exp(). Forum post fa027bb0ab. (check-in: c48f1be8cc user: drh tags: trunk) | |
15:17 | Avoid running test case sort2.2.3 under address-sanitizer. It runs out of memory on some 32-bit platforms. (check-in: 925be75399 user: dan tags: trunk) | |
14:41 | Improve exception handling in OpfsDb.importDb(). (check-in: a4eedd63b5 user: stephan tags: wasm-post-343) | |
14:16 | Extend the importDb() method of both OPFS VFSes to (A) support reading in an async streaming fashion via a callback and (B) automatically disable WAL mode in the imported db. (check-in: 9b1398c96a user: stephan tags: wasm-post-343) | |
12:15 | Enhance the CLI and the fuzzcheck utility programs to report whether they are compiled as 32-bit or 64-bit for things like the --version option. (check-in: ec7eeb055b user: drh tags: trunk) | |
11:36 | Enhance the notes on compiling for Windows11 to explain how to do 32-bit builds on a 64-bit system. (check-in: dd749e4042 user: drh tags: trunk) | |
2023-08-17
| ||
22:04 | Remove some obsolete JNI-internal docs. (check-in: 00a2a3736a user: stephan tags: jni-threading) | |
17:48 | Do not allow bound parameters in the ON CONFLICT clause of an UPSERT. dbsqlfuzz 9983e2c77634a8ccf33b5c91fa9982599de5f9e9 (check-in: 3c06709335 user: drh tags: trunk) | |
16:59 | Fix an error in documentation comments in fts5.h. (check-in: 24d96bd65d user: dan tags: trunk) | |
16:49 | Add extra test to fts5synonym2.test. (check-in: 39ea11be3b user: dan tags: trunk) | |
16:06 | Add "Windows-Sanitize" configuration to "testrunner.tcl release" tests on windows. (check-in: e68b46dc6a user: dan tags: trunk) | |
15:14 | Have all test names in json101.test start with "json101". (check-in: af56d7b6b9 user: dan tags: trunk) | |
15:11 | Enable address sanitizer in Makefile.msc by adding the ASAN=1 argument on the nmake command line. (check-in: 3eaadaff85 user: drh tags: trunk) | |
14:19 | Fix a possible UAF in SEH if an exception occurs at an inopportune moment during WAL processing. (check-in: 91b91037e3 user: drh tags: trunk) | |
13:13 | Tighten up the JNI auto-ext handling. (check-in: c09c8d05a2 user: stephan tags: jni-threading) | |
12:44 | Minor internal JNI cleanups and fixes. (check-in: 0e9437de02 user: stephan tags: jni-threading) | |
10:49 | Remove the FIXME markers related to threading. Code style cleanups. (check-in: 154ab26dc6 user: stephan tags: jni-threading) | |
09:49 | Add SQLITE_EXTRA_AUTOEXT, similar to SQLITE_EXTRA_INIT but adds a builtin auto-extension provided by the client. Suggestion from forum post 00829394c74a670f. (Closed-Leaf check-in: 423e77277a user: stephan tags: extra-autoext) | |
2023-08-16
| ||
17:23 | Refinements to instructions on compiling for Windows. (check-in: d543c36c35 user: drh tags: trunk) | |
17:12 | Improved instructions on how to build SQLite on Windows 11 and similar. (check-in: 0f6b2b3373 user: drh tags: trunk) | |
15:27 | Make sqlite3_stmt_explain() accessible to loadable extensions. (check-in: a237a31ff4 user: drh tags: trunk) | |
15:10 | Mix the current process ID into the randomness used for generating temporary filenames on Windows. (check-in: 775a36ee09 user: drh tags: trunk) | |
14:18 | Update testrunner.tcl to use environment variable %NUMBER_OF_PROCESSORS% when running under tclsh on windows. Also modify the internal database schema used by testrunner.tcl to be compatible with old versions of SQLite. (check-in: 6542ed3b9e user: dan tags: trunk) | |
13:55 | Fix test script problem preventing veryquick.test from running. (check-in: e738865740 user: dan tags: trunk) | |
2023-08-15
| ||
21:44 | Cherrypick [00ac653562a6] to remove stray JNI debug output. No functional changes. (check-in: e12d70f38c user: stephan tags: trunk) | |
20:57 | Cherrypick [653ed92dc391] (went to wrong branch). Doc change only, no code changes. (check-in: 79a14457f0 user: stephan tags: trunk) | |
18:52 | Update testrunner.tcl to make it easier to add things like mdevtest. (check-in: a531b71c4f user: dan tags: trunk) | |
18:08 | Improve the portability of the src-verify.c tool on Windows. (check-in: 4068d94acd user: drh tags: trunk) | |
14:53 | Fix problems in fts5 test code. (check-in: c16ed3b1cc user: dan tags: trunk) | |
13:01 | Add note about the current threading limitation to ext/jni/README.md. No code changes. (check-in: 653ed92dc3 user: stephan tags: wasm-post-343) | |
12:27 | Use a dodgy substitute if the INFINITY macro is not available. See forumpost 8e66e19bb9. (check-in: 4ae72c8967 user: drh tags: trunk) | |
11:58 | Fix the PRAGMA case_sensitive_like command so that the LIKE function continues to be innocuous after the PRAGMA. Forum post 925dc9f67804c540. (check-in: 84c268c34c user: drh tags: trunk) | |
10:57 | Fix an off-by-one error causing a buffer overread in test2.c. (check-in: e1edf95ecc user: dan tags: trunk) | |
09:26 | Minor reshaping of Tester1 moving towards making a multi-threaded run mode. (check-in: f104c14c26 user: stephan tags: jni-threading) | |
09:16 | Remove a piece of stray debug output. No functional changes. (check-in: 00ac653562 user: stephan tags: wasm-post-343) | |
2023-08-14
| ||
19:10 | Fix the autoconf makefile for the CLI such that it disables double-quoted strings by default, as all other builds of the CLI do. forum post 9794b6aaa5. (check-in: 85fd4f0ef4 user: drh tags: trunk) | |
18:21 | Fix a problem in sqlite3_snapshot_recover() introduced by the [8a6b0c24937e855b] merge. (check-in: c2577eb0a4 user: dan tags: trunk) | |
17:12 | Bring handling of the Java auto-ext handler more in line with the core in terms of locking and mutability during traversal. This removes the explicit synchronous requirement from the Java open() and auto-ext bindings. (check-in: 42994b952e user: stephan tags: jni-threading) | |
14:21 | Remove some obsolete, commented-out makefile code. No functional or build changes. (check-in: ea574cd5de user: stephan tags: wasm-post-343) | |
13:33 | Change the name of the ".binary" command in the CLI to ".crnl". The sense of the setting is inverted. The original ".binary" still works for backwards compatibility but is now undocumented. ".crnl" is also undocumented on machines where it is a no-op (all machines other than Windows). forum thread 8bd0b0fbdbc12477 (check-in: 544de2da09 user: drh tags: trunk) | |
13:27 | More work on the JNI-specific mutexes. Rework the NativePointerHolder cache lookup to be slightly simpler and O(1) instead of O(N). (check-in: c84ded0e59 user: stephan tags: jni-threading) | |
12:20 | Fix harmless compiler warnings reported by MSVC. (check-in: 391e21bb6e user: drh tags: trunk) | |
12:05 | Enable SEH be default in Windows builds. (check-in: faae792fd5 user: drh tags: trunk) | |
08:28 | JNI-internal docs and removal of obsolete code. (check-in: b62d93258b user: stephan tags: jni-threading) | |
2023-08-13
| ||
20:58 | Internal API renaming for clarity's sake. (check-in: 911e4fc5aa user: stephan tags: jni-threading) | |
12:40 | Add a mutex for auto-extensions, tied in to the open() process since that's the route into auto-extensions. (check-in: 8da97e0db4 user: stephan tags: jni-threading) | |
10:28 | Add some docs and metrics for the new mutex internals. (check-in: 33d1780b43 user: stephan tags: jni-threading) | |
10:22 | Remove SQLITE_DEBUG from JNI build. (check-in: 82f004cf74 user: stephan tags: trunk) | |
09:53 |
An initial attempt at protecting the JNI global state via mutexes at the C level instead of relying on Java's synchronized keyword. | |
2023-08-12
| ||
23:47 | Bind sqlite3_interrupt() and sqlite3_is_interrupted() to JNI but with caveats regarding mutexing of the JNIEnv cache. Add a loud warning to the JNI 'dist' target that it should be built with JDK8 (a.k.a. Java 1.8) for compatibility reasons. (check-in: fbf99a2423 user: stephan tags: jni-threading) | |
21:39 | Merge the Java Native Interface (JNI) binding into trunk. (check-in: 48b13edcec user: stephan tags: trunk) | |
21:08 | Update wasm's push-testing rule to exclude files which were recently removed from the build. (check-in: 0a6930a7ff user: stephan tags: trunk) | |
20:50 | Correct JNI .jar rules to only include *.java/class files, not *.* (*~ files). (Closed-Leaf check-in: 1ba7754045 user: stephan tags: jni) | |
19:58 | Fix the mdevtest target so that it works with msvc. (check-in: 01f49448cd user: dan tags: trunk) | |
19:25 | Fix testrunner.tcl so that it restarts itself using [testfixture] if its current interpreter does not support [package require sqlite3]. (check-in: 408be98ddd user: dan tags: trunk) | |
18:23 | Have the mdevtest target support the OPTS variable on unix. (check-in: 940f58d9b9 user: dan tags: trunk) | |
17:36 | Add "mdevtest" target to makefiles. Equivalent to running "devtest" on both debug and non-debug builds. (check-in: af354fbc0b user: dan tags: trunk) | |
15:37 | More JNI docs. (check-in: 290028d3ca user: stephan tags: jni) | |
15:09 | Further simplifications in the interface of the OutputPointer family of Java classes. (check-in: 962c3e0de2 user: stephan tags: jni) | |
12:16 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: d2b0ddcc75 user: drh tags: reuse-schema) | |
10:39 | Tweaks and docs for the OutputPointer family of Java classes. (check-in: 265c8fd0d4 user: stephan tags: jni) | |
10:27 | Bind sqlite3_db_status() to JNI. (check-in: b79477a0af user: stephan tags: jni) | |
10:06 | Bind sqlite3_status(64)() to JNI. (check-in: cefb6614e6 user: stephan tags: jni) | |
2023-08-11
| ||
22:40 | Modernize the sqlite3 shell man page a bit, per forum request. (check-in: 3bc0693c46 user: stephan tags: trunk) | |
21:25 | Add timing info to SQLTester. (check-in: b69b5facbf user: stephan tags: jni) | |
21:24 | Merge trunk into jni branch. (check-in: 4f0aeeba02 user: stephan tags: jni) | |
20:32 | Fix a makefile deps problem which caused ext/jni build to fail if sqlite3.c/h were not created beforehand. (check-in: 101de67077 user: stephan tags: jni) | |
19:38 | Merge latest trunk changes, including support for handling of structured-exceptions in MSVC builds, with this branch. (check-in: cb3cf9bab0 user: dan tags: begin-concurrent) | |
19:36 | Merge latest wal2 changes, including support for handling of structured-exceptions in MSVC builds, with this branch. (check-in: 331f2f3e5d user: dan tags: bedrock) | |
19:33 | Merge latest trunk changes, including support for handling of structured-exceptions in MSVC builds, with this branch. (check-in: 00bfae9ffa user: dan tags: wal2) | |
19:31 | If SQLITE_USE_SEH is defined, handle structured-exceptions thrown by MSVC builds if the *-shm file mapping is accessed after it becomes invalid for some reason. (check-in: 8a6b0c2493 user: dan tags: trunk) | |
18:59 | Minor SQLTester test tweaks and have 'make tester' include the out-of-tree tests if they are found. (check-in: 6c8538d834 user: stephan tags: jni) | |
18:31 | Fix a problem with handling savepoints in BEGIN CONCURRENT transactions. (check-in: ca422d00d7 user: dan tags: bedrock) | |
18:25 | Fix a problem with handling savepoints in BEGIN CONCURRENT transactions. (check-in: 4a5c0439ae user: dan tags: begin-concurrent) | |
18:04 | Bind sqlite3_sql() and sqlite3_expanded_sql() to JNI. Start marking C-side functions which would need explicit mutex support if we remove 'synchronized' from their Java entry points (but there are many more left to mark). (check-in: c7fb32d1ef user: stephan tags: jni) | |
17:45 | Add a doc link for the new sqlite3_js_posix_create_file(). (check-in: 0d7aac45b8 user: stephan tags: trunk) | |
17:38 | Add sqlite3.capi.sqlite3_js_posix_create_file() and oo1.OpfsDb.importDb() as alternatives for the newly-deprecated sqlite3_js_vfs_create_file(). (check-in: da6eaf8d82 user: stephan tags: trunk) | |
14:31 | Deprecate sqlite3_js_vfs_create_file() because, it was discovered today, its out-of-scope use of the sqlite3_vfs, sqlite3_file, and sqlite3_io_methods APIs triggers unresolvable assertions in the core when built with SQLITE_DEBUG. (check-in: f3647a3ac8 user: stephan tags: trunk) | |
11:46 | Merge all the latest trunk enhancements into the bedrock branch. (check-in: 859932ebce user: drh tags: bedrock) | |
11:40 | Merge the latest trunk enhancements into the wal2 branch. (check-in: fe1bf30ca0 user: drh tags: wal2) | |
11:34 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 7cb2b4e35f user: drh tags: begin-concurrent) | |
11:30 | Provide the -DSQLITE_LEGACY_JSON_VALID compile-time option to restore the (incorrect) legacy behavior of json_valid(NULL). (check-in: 00bc9f1b57 user: drh tags: trunk) | |
11:24 | Fix bug in the test case for the previous check-in. (Closed-Leaf check-in: c5daae8861 user: drh tags: legacy-json-valid) | |
11:23 | Update test scripts specific to this branch so that they work on windows. (check-in: f0ca13edad user: dan tags: wal2) | |
11:12 | Up until version 3.42.0, there was a bug in json_valid() such that it would return False (0) for a NULL input. That bug is fixed in 3.42.0. This check-in adds a compile-time option -DSQLITE_LEGACY_JSON_VALID that restores the old buggy behavior for applications that depend on it. (check-in: 15c2eadbff user: drh tags: legacy-json-valid) | |
2023-08-10
| ||
21:50 | Mark _all_ JNI binding funcs as synchronized so that Java can lock them and protect our global-state access. The alternative is writing a mountain of C-side code to do the same thing. (check-in: afe190a940 user: stephan tags: jni) | |
21:29 | Work around jdk8 and jdk19 mangling the C name of sqlite3_db_config() differently. Correct the variadic arg handling of the JNI-side subset of sqlite3_db_config() options. (check-in: 746894c3c0 user: stephan tags: jni) | |
21:20 | Add tests for structured-exception-handling and wal2. Fix a problem with the same. (Leaf check-in: 87242777ec user: dan tags: wal2-shm-exceptions) | |
20:52 | Add a working dist zip file for the JNI bits. (check-in: d6a4d212ce user: stephan tags: jni) | |
18:58 | Experimental merge of the wal-shm-exceptions and wal2 branches. (check-in: fd58c61624 user: dan tags: wal2-shm-exceptions) | |
18:57 | Initial pass at 'make dist' rules for the JNI bundle, but they still need a bare-bones, posix-make-compatible makefile to include in the bundle. (check-in: ff54e66a4d user: stephan tags: jni) | |
18:50 | New testcase() macro in the tokenizer, to better document its behavior. (check-in: b2fdac0b15 user: drh tags: trunk) | |
17:39 | Merge trunk into jni branch for the newly-relocated version-info tool. (check-in: cc8e8cba67 user: stephan tags: jni) | |
17:32 | Move ext/wasm/version-info.c to tool/ for re-use in build other dist bundles. (check-in: 4b0871fd36 user: stephan tags: trunk) | |
17:07 | Merge latest trunk changes into this branch. (Leaf check-in: 3ed89c344f user: dan tags: wal-shm-exceptions) | |
17:04 | Mark test script wal2big.test as "TESTRUNNER: slow". (check-in: ae7f3bcb5b user: dan tags: wal2) | |
17:03 | Merge latest trunk changes into this branch. (check-in: 72f7807b34 user: dan tags: wal2) | |
16:42 | Add SQLTester --keep-going flag to allow it to continue to the next script after an error. (check-in: 4d635f781b user: stephan tags: jni) | |
13:10 | Document that auto-extensions registered via JNI will fail if they open a db (to avoid triggering an endless loop in the auto-extensions). Discover the hard way that JDKv19 creates different mangled JNI names for some functions than JDKv8. Start reformatting much of the JNI API decls in prep for making them even longer. (check-in: 99c0941f1c user: stephan tags: jni) | |
12:36 | Resolve two assertions in the auto-extension JNI which were triggered via new SQLTester infrastructure. Move SQLTester's db-init SQL injection into an auto-extension. (check-in: 2952906c30 user: stephan tags: jni) | |
11:15 | Make test completion status more visible at a glance on modern terminals. (check-in: a4e96c306c user: stephan tags: jni) | |
11:04 | Disable REQUIRED_PROPERTIES handling in SQLTester, per /chat. Scripts with that directive are now skipped. (check-in: ddc534cb25 user: stephan tags: jni) | |
10:58 | Add a visual indicator (emoji) to TestScript verbose messages, dependent on the message's level of verbosity. (check-in: dc323d3894 user: stephan tags: jni) | |
10:44 | Add the current --testcase name to SQLTester --verbose output. (check-in: f87367402b user: stephan tags: jni) | |
10:34 | More SQLTester docs. Add --verbosity command to help zoom in on script areas while debugging. Spice up test-start/end output with some emoji. (check-in: 8dd0802149 user: stephan tags: jni) | |
05:25 | Give DbException the option of closing the db to simplify error handling in one case. (check-in: 908c9a4450 user: stephan tags: jni) | |
05:14 | Initial version of REQUIRED_PROPERTIES support for SQLTester, with TEMPSTORE_(FILE/MEM) and RECURSIVE_TRIGGERS options. (check-in: 48d16c9d2f user: stephan tags: jni) | |
04:24 | Generic cleanups and fixes in SQLTester. (check-in: fc5d3cc30d user: stephan tags: jni) | |
02:09 | Change the SQLite3Jni API annotations to use SOURCE retention (used only at compile-time). (check-in: 3c3fea6bf2 user: stephan tags: jni) | |
01:44 | Move all of the SQLTester code into a single file, since it's only got 1 public class. Remove 'public' from many methods which don't need it. Add more documentation to it. (check-in: 2815d67695 user: stephan tags: jni) | |
01:19 | Defer static JNI-side init of SQLTester until main() is called so that its auto-extensions do not leak over to clients of the main library. (check-in: e461fdd53b user: stephan tags: jni) | |
01:05 | Merge trunk into jni branch. (check-in: 52fa6f7841 user: stephan tags: jni) | |
01:03 | Treat all args to --glob as a single glob. (check-in: 4737bd3457 user: stephan tags: jni) | |
00:58 | Remove --print's ability to read ahead. (check-in: 15cfee972b user: stephan tags: jni) | |
00:34 | Replace the SQLTester infrastructure with a line-oriented, non-regex-heavy parser. Add --column-names command. (check-in: 88863908ee user: stephan tags: jni) | |
2023-08-09
| ||
23:47 | Port the SQLTester 'v1' commands to the 'v2' evaluation bits. Still TODO is swapping out v1 with these separate impls. (check-in: 0cf57e5b0f user: stephan tags: jni) | |
22:30 | Correct REQUIRED_PROPERTIES handling to not fail if there are no properties. (check-in: 7a19bef4f5 user: stephan tags: jni) | |
22:18 | More for the SQLTester rework. Can read input and dispatch commands, but only --print is currently implemented. (check-in: 4fa2ad33ed user: stephan tags: jni) | |
19:51 | Initial sketches of a line-by-line parser for SQLTester to overcome its compatibility shortcomings. Far from complete. (check-in: 43534cd042 user: stephan tags: jni) | |
18:25 | Adapt TestScript to skip REQUIRED_PROPERTIES, per [7a07863e082664da], and improve a couple of adject reasons-for-skipping messages. (check-in: f937097e9b user: stephan tags: jni) | |
17:47 | Add an extra constraint to the test-script-interpreter.md spec. (check-in: 7a07863e08 user: drh tags: jni) | |
17:23 | SQLTester --result command: do not double-{}-wrap error messages and do not throw on db error. (check-in: f7be20f5a6 user: stephan tags: jni) | |
17:04 | Move the test command body's trim() back into the TestScript class (to simplify Command-level code) but do it after double-verbose has had the chance to emit it as-is (so that debug output is not mangled by the trim). (check-in: f15ecb68f7 user: stephan tags: jni) | |
16:56 | Tweak the SQLTester --verbose and double-verbose output a bit for legibility. (check-in: 46b79afaaf user: stephan tags: jni) | |
16:29 | Strip --oom commands from SQLTester input since (A) we can't currently do anything with them and (B) they can appear as body content of --testcase commands and the current parser cannot deal with that. If --verbose is provided once, emit the name and args of each command as it's run. If --verbose is used twice or more, also emit the command's body text, if any. (check-in: 0770e8467d user: stephan tags: jni) | |
16:03 | Update the definition of "special characters" for the SQLTester and correct the code to match it. (check-in: 217f6e0c9c user: stephan tags: jni) | |
15:46 | Extend TestScript to be able to report why it should be skipped. Expand the test-skipping rules to account for the current spec doc. Add the {} empty-string case to the spec doc. (check-in: 4fcc8cb0cc user: stephan tags: jni) | |
14:47 | Add a test for the --null command. (check-in: 83ac815deb user: stephan tags: jni) | |
14:43 | Extend SQLTester glob support with '#'. (check-in: 756ef83f45 user: stephan tags: jni) | |
14:24 | Implement the SQLTester's result escaping rules. (check-in: 61bb950873 user: stephan tags: jni) | |
13:51 | Add --json and --json-block SQLTester commands. (check-in: 478129d901 user: stephan tags: jni) | |
13:16 | Add SQLTester --tableresult command. (check-in: 8c5b6d893d user: stephan tags: jni) | |
12:05 | Clean up the SQLTester output a bit by using the module name, instead of filename, where appropriate. (check-in: 5323e4fd25 user: stephan tags: jni) | |
11:10 | Document SQLTester's --print command and add some argument validation to it. (check-in: ab9c945bb0 user: stephan tags: jni) | |
11:05 | Rework how SQLTester's Command objects are dispatched and how TestScript stores its command entries. (check-in: f929f1f7f7 user: stephan tags: jni) | |
09:56 | Some minor tweaks in SQLTester in prep for larger refactoring. (check-in: 1d93f93ac9 user: stephan tags: jni) | |
2023-08-08
| ||
22:10 | Remove the current-statement tracking from the JNI internals because it will break down in the face of client-side mixed-mode native/java code, e.g. in cases like SQLTester. This makes tracing of sqlite3_stmt a micron slower but also reliably correct. (check-in: 4c0ec89dca user: stephan tags: jni) | |
21:22 | Adapt JNI build to be buildable with or without SQLTester. (check-in: adae7d7869 user: stephan tags: jni) | |
21:05 | Add SQLTester dup() and dup_count() UDFs. Correct arg handling of the --run command. (check-in: 0dba3073f4 user: stephan tags: jni) | |
20:41 | Correct --result arg count check and add infrastructure to let us add custom C-side behavior to SQLTester via an auto extension. (check-in: bb8321702e user: stephan tags: jni) | |
20:15 | If SQLTester now treats a no-args --result as comparing against an empty string. (check-in: 49005ca5cc user: stephan tags: jni) | |
20:02 | Add glob/notglob commands to SQLTester and complete the interrupted-midway impls of the strglob() and strlike() JNI bindings. (check-in: 4ba98ec0bf user: stephan tags: jni) | |
19:20 | When SQLTester hits an unknown command, emit a warning and skip the rest of that script instead of aborting the whole run, per /chat discussion. Reduce verbosity a bit. (check-in: 3e78d22d04 user: stephan tags: jni) | |
17:36 | Minor cleanups in sqlite3Int.h. By reordering some fields in the Parse object, it packs more tightly and uses less memory and less CPU to initialize. (check-in: aa6de539c0 user: drh tags: trunk) | |
16:53 | Fix an issue in the amalgamation generator in which it was not correctly expanding the SQLite version in the header comment. (check-in: 293f6191e9 user: drh tags: trunk) | |
14:58 | Correct the spacing output of multi-select SQL blocks for SQLTester --result. (check-in: 8d98645a9e user: stephan tags: jni) | |
14:49 | Updates to the test script interpreter spec: Rather than failing immediately upon encountering an incompatibility, simply abandon the rest of that particular input file. (check-in: d2c99b96f4 user: drh tags: jni) | |
14:40 | A number of baby steps for SQLTester.java. It can now handle basic --result cases. (check-in: 0404f688f6 user: stephan tags: jni) | |
14:25 | Add a few words of clarification on how the SQLite Test Script Interpreter should be initialized to start each test script. (check-in: 3aa2b5a5ca user: drh tags: jni) | |
13:05 | Correct JNI sqlite3_prepare() to emit a null stmt handle when the C counterpart succeeds but results in a NULL pointer. (check-in: 94628f88b5 user: stephan tags: jni) | |
11:46 | Implement the new/open/close SQLTester commands. (check-in: dc823bf00f user: stephan tags: jni) | |
11:46 | Add a JNI-layer sqlite3.toString() for debugging. (check-in: 456691649a user: stephan tags: jni) | |
10:58 | Bind sqlite3_strlike/strglob() to JNI. (check-in: eb5440f71b user: stephan tags: jni) | |
09:45 | SQLTester: add print command and improve argument error reporting infrastructure. (check-in: 1b6e84f6aa user: stephan tags: jni) | |
00:59 | Add missing license header. Minor cleanups in SQLTester. (check-in: 5be50fd588 user: stephan tags: jni) | |
00:37 | Rework SQLTester dispatching and add stub impls for several commmands. (check-in: 9e61af75ac user: stephan tags: jni) | |
2023-08-07
| ||
23:59 | Add command dispatcher to SQLTester. (check-in: e0a06931e9 user: stephan tags: jni) | |
23:04 | SQLTester now ignores tests which contain constructs specified in the spec doc. (check-in: ecaeee652a user: stephan tags: jni) | |
22:32 | SQLTester can now split a test script into a series of individual commands. (check-in: d3d1accc8b user: stephan tags: jni) | |
22:02 | SQLTester can now read a script and strip it of all noise content. (check-in: 59bd392817 user: stephan tags: jni) | |
21:04 | Initial skeleton for adding an SQL-driven test script interpreter for the JNI bindings. (check-in: 2aa8f0edec user: stephan tags: jni) | |
17:09 | Enhance sqlite3_vtab_nochange() so that it works with "UPDATE ... FROM ..." statements. Use this to allow some updates on fts5 contentless-delete tables. (check-in: 27ff86e4d8 user: dan tags: trunk) | |
16:15 | Changes so that sqlite3_vtab_nochange() works with "UPDATE ... FROM...". Use this to allow UPDATE on a contentless fts5 table if new values are supplied for all indexed columns. (Closed-Leaf check-in: 16cd2161e3 user: dan tags: fts5-contentless-delete) | |
11:18 | When converting a Java exception to a db error message, use Throwable.toString() instead of getMessage() so that the exception type's name is included. More internal API renaming for consistency. (check-in: 2d44720d06 user: stephan tags: jni) | |
10:59 | Lots of JNI internal API renaming, for consistency, and moving-around of utility functions. Make it safe for more callback types to throw. (check-in: 9a494394b9 user: stephan tags: jni) | |
10:01 | JNI API renaming to better match the C API. (check-in: 6e0bd03d0b user: stephan tags: jni) | |
09:44 | Rename fts5_api pContext parameters to pUserData, per /chat discussion. This is a cosmetic change made to reduce confusion between those parameters and the two other context-type parameters in that API. (check-in: 2ca064d8eb user: stephan tags: trunk) | |
01:06 | Make sqlite3_stmt() Java ctor private - it's only constructed from JNI code. (check-in: ce82c42f15 user: stephan tags: jni) | |
00:29 | Minor internal cleanups and additional test metrics. (check-in: fa0a6b6e8e user: stephan tags: jni) | |
00:06 | Bind the auto-extension APIs to JNI. (check-in: 746a5fa079 user: stephan tags: jni) | |
2023-08-06
| ||
22:09 | Rework the sqlite3_open(_v2)() order of operations so that pending auto-extension support can get ahold of the open-time Java state despite the Java/C (sqlite3*) binding not having yet been established. (check-in: 34da294ab5 user: stephan tags: jni) | |
21:29 | Completely rework how the JNI sqlite3_open(_v2) and sqlite3_prepare(_vN)() bindings deal with output pointers to give the JNI side full control over the origin of db and stmt handles (necessary for solving chicken/egg situations in auto-extensions and prepare-time trace). Lots of adjacent internal API renaming. (check-in: 644999caff user: stephan tags: jni) | |
20:01 | Start adding JNI-side support for auto extensions, but hit a brick wall which requires slightly awkward semantics changes in the JNI bindings for sqlite3_open(_v2)() to resolve, so stash this #if'd out for the time being. (check-in: 77a32d238e user: stephan tags: jni) | |
15:01 | Doc cleanups. (check-in: 5f56b00770 user: stephan tags: jni) | |
14:19 | Bind sqlite3_config() to JNI for call variants taking (int,int*) and (int,const char *) variadic arguments. (check-in: 6119289da8 user: stephan tags: jni) | |
13:02 | JNI-internal cleanups and API renaming. Add a C-side java-string-to-utf8 conversion. (check-in: 672d85795d user: stephan tags: jni) | |
11:05 | Remove doc outdated warning about sqlite3_trace_v2() JNI binding being incompatible with MUTF-8. Use new to-string capability to simplify Fts5ExtensionApi::xColumnText() JNI binding. (check-in: ebcfc2379b user: stephan tags: jni) | |
10:49 | Add a way to convert from standard UTF-8 to a Java string (JNI lacks this capability). (check-in: 07dd082c9e user: stephan tags: jni) | |
10:14 | Bind sqlite3_db_filename() and (closely related) (A) add many more docs about the UTF-8/MUTF-8 discrepancy (B) start adding internals to enable us to perform the standard-UTF-8-to-Java conversion from C. (check-in: 586720fa71 user: stephan tags: jni) | |
2023-08-05
| ||
22:41 | Bind sqlite3_set_authorizer() to JNI. (check-in: e0fa031359 user: stephan tags: jni) | |
21:35 | Refactor the per-JNIEnv cache from a fixed-size static array to a linked list of dynamically-allocated entries. Uncache all per-db state (which is necessarily JNIEnv-specific) when the corresponding JNIEnv is uncached. (check-in: 9dd8b78419 user: stephan tags: jni) | |
20:19 | Add SQLite3Jni.uncacheJniEnv(), a way for Java threads to clear their thread-specific cached state from the JNI bindings when they're about to terminate (or are otherwise done using the library). (check-in: 7468f8761b user: stephan tags: jni) | |
19:20 | In the JNI docs, note that the sizeof SQLITE_TRANSIENT and SQLITE_STATIC should ideally be the same as the platform's pointer size. (check-in: 7d4ac44ec4 user: stephan tags: jni) | |
19:15 | Tiny doc typo fixes from forum post 31eb707250. No code changes. (check-in: 8ede50082e user: stephan tags: trunk) | |
12:48 | JNI internal refactoring and cleanups. (check-in: 7397973a2f user: stephan tags: jni) | |
11:16 | Bind Fts5ExtensionApi::xUserData() to JNI and extend xCreateFunction() to accept that argument. In test code, use assert() instead of exceptions if assert() is enabled so that test failures (exceptions) thrown via callbacks do not get suppressed (which they otherwise necessarily are to avoid crashing the host app). (check-in: e438373776 user: stephan tags: jni) | |
04:30 | Add missing Fts5PhraseIter.java to the build. (check-in: 96281ad0d5 user: stephan tags: jni) | |
04:23 | Bind fts5_api::xCreateFunction() to JNI and demonstrate it with a test. (check-in: c653bf16cb user: stephan tags: jni) | |
01:28 | Start adding fts5_api to JNI. (check-in: 14d18fe983 user: stephan tags: jni) | |
00:40 | Bind the remaining Fts5ExtensionApi methods to JNI, noting that all are completely untested because the higher-level bits needed to do so are still missing. (check-in: 23383c1dfd user: stephan tags: jni) | |
2023-08-04
| ||
16:01 | In the opfs-sahpool VFS's importDb() and exportFile() methods, throw if the actually-wrote/read amounts differ from the expected-to-write/read amounts, per feedback in forum post a4122e986f. (check-in: a617ebf4e5 user: stephan tags: trunk) | |
15:38 | More work on the JNI binding of fts5 customization (still a long ways to go). (check-in: 1a246fd216 user: stephan tags: jni) | |
13:29 | Merge the json_remove() bug fix from trunk into the bedrock branch. (check-in: a8872aa588 user: drh tags: bedrock) | |
13:27 | Eliminate code duplication in the two JNI tester classes. (check-in: 63e7bbe3d5 user: stephan tags: jni) | |
13:24 | Merge the json_remove() bug fix from trunk into the wal2 branch. (check-in: e6c066cae4 user: drh tags: wal2) | |
13:19 | Fix a bug in the jsonLookup() routine used to search JSON. Bug was introduced by the recent (unreleased) JSON caching enhancements check-in [a4c1af616e672a0d] merged into trunk at [df099ad713011b67]. (check-in: ba7a66db13 user: drh tags: trunk) | |
13:03 | FTS-related JNI refactoring. Move FTS-specific tests into their own class and dynamically load it, if possible, from the main test app. (check-in: b7a8428fcd user: stephan tags: jni) | |
12:44 | More work towards binding FTS5 customization to JNI. Add Fts*.java files missing from previous checkin. (check-in: 91263178f4 user: stephan tags: jni) | |
11:10 | Change comment on Fts5ExtensionApi.iVersion from "always set to 3" to "always set to 2". (check-in: b7de399c27 user: dan tags: trunk) | |
11:08 | Start including fts5 customization bits into JNI, but it's far from functional. (check-in: abaf5edd04 user: stephan tags: jni) | |
09:53 | Improve internal error handling in the JNI create_function() impl. (check-in: 2c88390faa user: stephan tags: jni) | |
08:45 | Resolve the timing/ordering issue of a JS-to-WASM-converted xDestroy() function being uninstalled from WASM right before the underlying native call tries to call it. This has been a long-unnoticed bug which appears only when removing such functions or replacing them. (check-in: 031c9a76b6 user: stephan tags: trunk) | |
08:41 | Part 2 of the fix from [a0f808363318c00fd1db78b]. (check-in: 5c3104228d user: stephan tags: trunk) | |
08:39 | More work towards fts5 customzation in JS. (Leaf check-in: ce2a65d80f user: stephan tags: wasm-fts5) | |
2023-08-03
| ||
23:26 | Merge the latest trunk enhancements into the bedrock branch. (check-in: 877ffece05 user: drh tags: bedrock) | |
23:22 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 6fa71e1119 user: drh tags: wal2) | |
22:43 | Minor internal cleanups in the JS-side fts5 cleanup steps. (check-in: 2666f52e88 user: stephan tags: wasm-fts5) | |
21:14 | Retain all xDestroy method WASM proxies created for fts5_api::xCreateFunction() until the db is closed, then free them all at once. (check-in: f4b9743abd user: stephan tags: wasm-fts5) | |
20:45 | Rework the fts5 db-close cleanup to avoid that fts5 internally calls a just-unbound-from-wasm xDestroy() method. There is still work to do here to cover the case of fts5 functions being replaced (in which all xDestroy methods have to be retained until the db is closed). (check-in: 795f22421b user: stephan tags: wasm-fts5) | |
20:02 | Part 2 of the fix from [a0f808363318c00fd1db78b]. (check-in: ce0674b192 user: stephan tags: wasm-fts5) | |
18:46 | Resolve the timing/ordering issue of a JS-to-WASM-converted xDestroy() function being uninstalled from WASM right before the underlying native call tries to call it. This has been a long-unnoticed bug which appears only when removing such functions or replacing then. (check-in: a0f8083633 user: stephan tags: wasm-fts5) | |
18:14 | Fix harmless scan-build warnings. (check-in: 65a8716d8a user: drh tags: trunk) | |
16:22 | Fix a discrepancy between sqlite3_values_to_js() and its API docs/intended behavior. (check-in: 7b85c68fe2 user: stephan tags: trunk) | |
16:21 | More infrastructure towards binding FTS5 customization support to WASM. (check-in: 163e3e44b1 user: stephan tags: wasm-fts5) | |
16:02 | Fix a discrepancy between sqlite3_values_to_js() and its API docs/intended behavior. (check-in: 16658b3c64 user: stephan tags: wasm-fts5) | |
13:30 | Fix build problems associated with SQLITE_OMIT_WSD and SQLITE_OMIT_TRIGGER. (check-in: de031a5ec8 user: drh tags: trunk) | |
13:07 | Fix a test case whose value changes under the no_optimization permutation due to the recent change to add the ability for SQLITE_TESTCTRL_OPTIMIZATION to disable one-pass. (check-in: 976e39c632 user: drh tags: trunk) | |
12:41 | Unix builds now assume the presence of nanosleep() in the standard library. The -DHAVE_NANOSLEEP=0 compile-time option can be used to build on systems (if any still exist) where this is not the case. (check-in: 779d5dc879 user: drh tags: trunk) | |
07:20 | Initial work on exposing the FTS5 APIs to wasm, per request in the forum. This builds and loads the structs into JS but is completely untested. (check-in: 52c8b73ae3 user: stephan tags: wasm-fts5) | |
2023-08-02
| ||
18:20 | If a query has an ORDER BY clause that only refers to result columns of the left-most table and the left most table is a MATERIALIZED common table expresion, then attempt to push the ORDER BY clause down into the subquery. (Leaf check-in: 8e7a70b2bb user: drh tags: order-by-push-down) | |
17:29 | More JNI-internal docs. Correct handling of a Java exception if a trace callback throws. (check-in: 306b269a01 user: stephan tags: jni) | |
17:20 | Internal doc additions in the JNI bits. (check-in: b56643644e user: stephan tags: jni) | |
16:06 | Performance optimization for JSON rendering logic. (check-in: ea0b9aecba user: drh tags: trunk) | |
13:45 | Remove an unreachable branch in the ascii-to-floating-point conversion that was added by [e989a37ff9d5b52e]. (check-in: c4347e4400 user: drh tags: trunk) | |
13:38 | Stricter enforcement of the idea that a MATERIALIZED common table expression is an optimization fence. (check-in: 354425f8d9 user: drh tags: trunk) | |
13:29 | Remove a condition from query flattening that is now taken care of by the caller. Factor out the reverse_unordered_selects processing from the main loop of sqlite3WhereBegin() for performance. (Closed-Leaf check-in: f068f105fb user: drh tags: materialize-order-by) | |
12:39 | Simplify the select.c logic that enforces the optimization fence around a MATERIALIZED common table expression. Do not allow the reverse_unordered_selects setting to affect a fenced CTE that itself has an ORDER BY clause. (check-in: 165b9bda24 user: drh tags: materialize-order-by) | |
11:06 | Never flatten a CTE that is labeled MATERIALIZED. This is really something of a bug fix because the documentation says that a MATERIALIZED CTE is an optimization barrier. (check-in: b7ef9796f5 user: drh tags: materialize-order-by) | |
00:09 | When a query is inside an AS MATERIALIZED CTE, do not attempt the omit-ORDER-BY optimization. If the developer specifies MATERIALIZED, that means he wants the sort to actually happen. (check-in: aa769ee747 user: drh tags: materialize-order-by) | |
2023-08-01
| ||
19:10 | Avoid ASAN warnings when converting over-sized long double values into double. (check-in: e989a37ff9 user: drh tags: trunk) | |
16:41 | Filter the wasmfs-specific JS module result type check out of non-wasmfs builds. (check-in: ef7c121049 user: stephan tags: trunk) | |
16:38 | Fix part 2 of 2 for /fiddle: a make deps problem which caused fiddle to load but fail to run when sqlite3.c was missing. (check-in: 6011bc2676 user: stephan tags: trunk) | |
16:17 | Fix part 1 of 2 for /fiddle not running: build flags which were renamed during refactoring. (check-in: 214ffeeff7 user: stephan tags: trunk) | |
11:03 | Fix an assert() in fts5_index.c that might fail when dealing with corrupt records. (check-in: aa55c83f35 user: dan tags: trunk) | |
10:19 | More docs for the Java side of the JNI bindings. (check-in: d8e9bcee96 user: stephan tags: jni) | |
09:44 | Internal exception-handling cleanups in the JNI bindings. (check-in: 057b1d4f6f user: stephan tags: jni) | |
08:48 | Minor JNI-related doc tweaks and code re-ordering. (check-in: b663b27e42 user: stephan tags: jni) | |
01:07 | Remove redundant comparison operator. (check-in: 0189843298 user: drh tags: trunk) | |
00:34 | Restore part of the UPDATE one-pass optimization that was removed by check-in [2c56b984a0bd3be5]: only disable one-pass if the WHERE clause contains a subquery. Allow subqueries in the SET expressions. Fix for performance problem reported by forum post 8ab195fd44e75ed0. (check-in: 42916af9fc user: drh tags: trunk) | |
2023-07-31
| ||
22:03 | Restrict the new column cache to table-btree, which is the common case anyhow. That way, writes to indexes do not need to clear the column cache. (check-in: 659284ab0e user: drh tags: trunk) | |
20:02 | The original column-cache implementation from check-in [ab1edcc7fedcf279] (merged to trunk at [771fe35074b50b8d]) is unsound. This check-in fixes the issue. Had to give back a little performance, the optimization is still a overall win. (check-in: ec95e970fb user: drh tags: trunk) | |
17:39 | Add bit to sqlite3_test_control(SQLITE_TESTCTRL_OPTIMIZATIONS) that will disable the one-pass optimizating in DELETE and UPDATE. (check-in: 22f6dd5cd3 user: drh tags: trunk) | |
17:20 | Improved debug tracking of the Parse.nQueryLoop value. (check-in: 4a8a17498e user: drh tags: trunk) | |
13:52 | Experimentally change the JNI sqlite3_trace_v2() callback type to have more convenient access to the current Java-side sqlite3_stmt at the cost of some uncomfortably fiddly current-statement tracking in the JNI layer. Subject to change. (check-in: 459db332af user: stephan tags: jni) | |
12:10 | Add some JNI-internal metrics, accessible via passing -v when running Tester1.java. Document an OpenJDK bug which leads to incorrect -Xlint:jni warnings. (check-in: a5d68a6b64 user: stephan tags: jni) | |
10:55 | Correct a mis-cast in the JNI wrapper which just happened to accidentally work. Update JNI binding of sqlite3_context_db_handle() to return the bound-at-open() db instance instead of a new/temp proxy object. (check-in: 9faca5d9ed user: stephan tags: jni) | |
10:42 | Add another test for JNI-bound scalar UDFs. (check-in: 8b322d92e2 user: stephan tags: jni) | |
10:22 | Update some internal docs for the past two checkins. Add a way to dump out some debug info about the current JNI environment. (check-in: ac9b8bb1e6 user: stephan tags: jni) | |
10:08 | Refactor the busy-handler-specific JNI hook type to use the generic hook type. (check-in: d9efdc6dd2 user: stephan tags: jni) | |
09:45 | Refactor the collation-specific JNI hook type to use the generic hook type. (check-in: 02c1d3b650 user: stephan tags: jni) | |
09:28 | Internal JNI doc tweaks. (check-in: f4aa2c8288 user: stephan tags: jni) | |
07:15 | Consolidate triplicated xDestroy()-calling code. Remove some unnecessary casts. (check-in: 24c0763d0e user: stephan tags: jni) | |
2023-07-30
| ||
18:41 | Internal JNI API renaming. (check-in: fcfc070673 user: stephan tags: jni) | |
17:24 | Internal JNI refactoring towards consolidating support for callbacks with and without finalizers. (check-in: 120983a570 user: stephan tags: jni) | |
13:47 | Mark the Java wrapper classes of the C-native types as 'final' (cannot be subclassed). (check-in: 4fd3d93623 user: stephan tags: jni) | |
13:30 | Minor tweaks and optimizations in the JNI bindings. (check-in: 41fb5898f1 user: stephan tags: jni) | |
11:36 | Bind sqlite3_collation_needed() to JNI. Related adjacent cleanups and fixes. (check-in: 16ff167691 user: stephan tags: jni) | |
10:47 | Internal JNI refacoring to support the pending sqlite3_collation_needed() callback. Correct a bug in the linked-list handling of PerDbStateJni which triggered an assert(). (check-in: 7ac6614e69 user: stephan tags: jni) | |
09:45 | Incremental checkin to minimize the diff while narrowing in on an assertion caused by refactoring. (check-in: 2d7a91b139 user: stephan tags: jni) | |
08:12 | Consolidate some warnings for java callbacks which must not throw but do. (check-in: 5e592ed2df user: stephan tags: jni) | |
07:44 | Bind sqlite3_update_hook() to JNI. (check-in: a5bbaa9017 user: stephan tags: jni) | |
06:44 | Bind sqlite3_rollback_hook() to JNI. (check-in: 5f8ee44098 user: stephan tags: jni) | |
06:00 | Add commit hook failure to JNI tests. (check-in: be4459b495 user: stephan tags: jni) | |
05:50 | Bind sqlite3_commit_hook() to JNI. (check-in: c687297fca user: stephan tags: jni) | |
04:31 | Bind sqlite3_progress_handler() to JNI. Add some metrics to Tester1.java. (check-in: 437ecfe8ab user: stephan tags: jni) | |
03:54 | Add tests for SAHPoolUtil.exportFile() and importDb(). (check-in: 4aa88b8fb1 user: stephan tags: trunk) | |
2023-07-29
| ||
22:58 | Do not try to add MEM_Term to an MEM_Static string either. (check-in: 8920dcef1f user: drh tags: trunk) | |
21:22 | Do not try to apply MEM_Term to a MEM_Ephem strings. (check-in: 2a378a6678 user: drh tags: trunk) | |
20:13 | Fix a buffer overread in the fts5_structure virtual table (test code). (check-in: b837aff79c user: dan tags: trunk) | |
17:05 | Simplification to the sqlite3_stmt_explain() implementation. (check-in: dd5eb4c7f7 user: drh tags: trunk) | |
15:53 | SAHPoolUtil.importDb() now accepts either a byte array or ArrayBuffer. (check-in: 3848f04e54 user: stephan tags: trunk) | |
15:31 | Enhancements to the new sqlite3_stmt_explain() interface implementation and documentation. (check-in: dc98ac6b6d user: drh tags: trunk) | |
2023-07-28
| ||
21:38 | Fix doc error noted in the forum and a misspelling. (check-in: 6b79cc7dd0 user: larrybr tags: trunk) | |
20:59 | Do not allow the same JSON parse to be input to both arguments to the json_patch() routine. (check-in: 8e781c6742 user: drh tags: trunk) | |
19:07 | Merge the latest trunk enhancements into the wal-shm-exceptions branch. (check-in: c44fb4d065 user: drh tags: wal-shm-exceptions) | |
19:00 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: b8731493bf user: drh tags: reuse-schema) | |
18:52 | Merge the latest trunk enhancements into the bedrock branch. (check-in: 1d6ded3234 user: drh tags: bedrock) | |
18:47 | Merge the latest trunk enhancements into the wal2 branch. (check-in: c1fa1cb5e0 user: drh tags: wal2) | |
18:44 | Internal JNI binding docs. (check-in: 991c66197e user: stephan tags: jni) | |
18:43 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 7407dda8b4 user: drh tags: begin-concurrent) | |
18:37 | Add the sqlite3_stmt_explain() API. (check-in: 0443c0ef85 user: drh tags: trunk) | |
18:02 | Fix an incorrect file path in ext/jni/README.md (check-in: bcefa2df56 user: stephan tags: jni) | |
16:12 | Minor tweaks to the JSON performance measurement documentation. (check-in: 0bed957e46 user: drh tags: trunk) | |
15:58 | Fix minor typos in the JNI README.md file. (check-in: e21cf2e8f1 user: drh tags: jni) | |
14:20 | Enhancements to the JSON performance testing scripts and instructions to cover the recent optimizations involving updates to large JSON strings that indexed. (check-in: f9213289d0 user: drh tags: trunk) | |
13:52 | JSON performance improvements: (1) Add a cache for large string values on OP_Column to avoid having to extract the string multiple times. (2) Internal JSON caching improvements. (check-in: 771fe35074 user: drh tags: trunk) | |
12:59 | A failed attempt to add a new sqlite3_result_zeroterminated() interface that is a hint to SQLite that a TEXT result does have a zero terminator. The idea is to avoid unnecessary copying of TEXT values. This seems like an unnecessary complication at the moment, but maybe I'll return to this later. Note that this check-in does not work - it is a proof of concept only. (Closed-Leaf check-in: a0de01108c user: drh tags: sqlite3_result_zeroterminated) | |
11:52 | Correct a recently-introduced falsehood in ext/wasm/README.md regarding ssh port forwarding. (check-in: 2a3f3a9cf2 user: stephan tags: trunk) | |
11:30 | Mark an unreachable branch as ALWAYS(). (Closed-Leaf check-in: 8fd06d1151 user: drh tags: json-opt) | |
10:37 | Minor java cleanups recommended by a modern IDE. (check-in: f92a9bbabe user: stephan tags: jni) | |
10:01 | Add Java tests which ensure that xFinal() is called with no aggregate context when the result set is empty. (check-in: 7ac8c66a6b user: stephan tags: jni) | |
09:54 | Tweaks to the Java-side UDF docs. (check-in: 48e0079d8d user: stephan tags: jni) | |
09:25 | More Java docs about making use of the aggregate context. Change the JNI mapping to set the sqlite3_context::aggregateContext member directly, instead of via a superflous setter, because that way is faster. (check-in: 7af0cb998f user: stephan tags: jni) | |
01:51 | More docs and cleanups related to the aggregate UDF state. Correct the OOM check to behave properly if xFinal() is called without a matching xStep(), xValue(), or xInverse(). (check-in: ff53f1ccdc user: stephan tags: jni) | |
01:19 | Add an OOM check to the previous check-in. Minor internal API renaming. (check-in: 6b56e4d62b user: stephan tags: jni) | |
01:12 | Add support making use of sqlite3_aggregate_context() (in a roundabout way) from Java to accumulate state within aggregate and window UDFs. (check-in: 6405749847 user: stephan tags: jni) | |
00:54 | Remove some unnecessary and incorrect code that was mistakenly added in the previous check-in. (check-in: d3f458dcc3 user: drh tags: json-opt) | |
2023-07-27
| ||
23:51 | Switch to using jsonParseCached() for json_patch(). (check-in: 2ed9c59e6a user: drh tags: json-opt) | |
22:53 | Reformulate jni tests to not require the -ea jvm flag to enable assert(). (check-in: dc356667a8 user: stephan tags: jni) | |
22:42 | Add locking test for BusyHandler and clear up new -Xlint:jni warnings introduced by the busy-handler binding. (check-in: 7dcde2bfce user: stephan tags: jni) | |
22:05 | Bind sqlite3_busy_handler(). Correct mapping of pointers for, and cleanup of, JNI-level per-db state. (check-in: 524747796a user: stephan tags: jni) | |
20:32 | Replace some www: interwiki references in the JNI readme with their full URLs to make the doc more portable. (check-in: 63ce0c9bdd user: stephan tags: jni) | |
20:28 | If the input JSON to a json function that uses cache comes from an RCStr value, then use that RCStr value in the parse rather than making a copy. (check-in: 509ae9c147 user: drh tags: json-opt) | |
20:12 | Merge trunk into jni branch for compiler warning fixes. (check-in: 0514fd340a user: stephan tags: jni) | |
20:08 | Fix a couple of compiler warnings in fts5_index.c. (check-in: bf71faa2a1 user: dan tags: trunk) | |
20:02 | Initial check-in of JNI (Java Native Interface) bindings for the core C API. (check-in: b5374b9ef5 user: stephan tags: jni) | |
19:39 | The OP_Column opcode caches large column values coming from overflow pages. (check-in: ab1edcc7fe user: drh tags: json-opt) | |
19:13 | Add the contentless_delete=1 option to fts5. For creating contentless tables that support DELETE and REPLACE statements. (check-in: d66b182d2b user: dan tags: trunk) | |
18:19 | Merge trunk enhancements into the json-opt branch. (check-in: 5739a16ad2 user: drh tags: json-opt) | |
17:50 | Dynamically determine whether the wasm.xWrap() argc check can be applied, depending on how the wasm environment exposes its exports. (check-in: fd59226b34 user: stephan tags: trunk) | |
15:00 | Dynamically determine whether the wasm.xWrap() argc check workaround for JSPI is necessary, instead of baking it in to JSPI builds. (Edit: closing jspi branch. Introducing JSPI would require making parts of the C API wrapper async.) (Closed-Leaf check-in: 86bb464f31 user: stephan tags: jspi) | |
01:38 | Accommodate a breaking change in emcc 3.1.44. (check-in: 2c5dd34199 user: stephan tags: trunk) | |
01:35 | Accommodate a breaking change in emcc 3.1.44. (check-in: 4ce3860300 user: stephan tags: jspi) | |
00:21 | Fix a performance regression in JSON associated with generating small snippets of JSON from a larger JSON string. See forum thread 15d6bd9cd37202a7. (check-in: 837f2907e1 user: drh tags: trunk) | |
2023-07-26
| ||
23:22 | Reduce the number of memory allocations when parsing JSON. (check-in: 9edd671621 user: drh tags: trunk) | |
21:53 | Minor changes to make coverage testing easier. (check-in: ec8b43382e user: drh tags: trunk) | |
19:22 | Change a switch() case to default for coverage. (check-in: 04f497074b user: drh tags: trunk) | |
19:11 | Make sure jsonReplaceNode() always leaves the JsonParse in a consistent state even if an error is encountered. (check-in: 01d52232dd user: drh tags: trunk) | |
18:34 | Add a comment describing the contents of the ExceptionInformation[] array for win32 EXCEPTION_IN_PAGE_ERROR exceptions. No changes to code. (check-in: 8e20354242 user: dan tags: wal-shm-exceptions) | |
18:13 | Make sure jsonReplaceNode() always leaves the JsonParse in a consistent state even if an error is encountered. (Closed-Leaf check-in: 29c7b1cbc4 user: drh tags: mistake) | |
18:11 | Initial experimentation with getting JSPI (JavaScript Promise Integration) support working. It builds, but requires disabling func argument count validation checks on sqlite3.wasm.xWrap()-processed exports and it crashes cryptically in wasm when the tests are run. (check-in: 5b178f92f5 user: stephan tags: jspi) | |
17:51 | Add the ".scanstats vm" command to the shell tool. For profiling VM code in SQLITE_ENABLE_STMT_SCANSTATUS builds. (check-in: 0cbec3990d user: dan tags: trunk) | |
16:41 | Improve the output when ".scanstats vm" is enabled. (Closed-Leaf check-in: 7df08fd35e user: dan tags: scanstatus-exp) | |
14:18 | Improved caching and reuse of JSON parses. (check-in: df099ad713 user: drh tags: trunk) | |
13:17 | Change the debugging "json_parse(X)" function so that it shows a more complete description of the JsonParse object on standard output and returns the mimified JSON. Former behavior was to return the text of a decode of the aNode array. (check-in: 1bf85d4e38 user: drh tags: json-opt) | |
11:53 | More comment improvements in json.c. Do not run jsonLookup() following an OOM error. (check-in: cd5fda8c2e user: drh tags: json-opt) | |
11:43 | Improved comments and other cleanup for the changes on this branch. (check-in: bac953a80d user: drh tags: json-opt) | |
11:41 | Remove the batch SQL runner from the JS build's 'all' target, as it's long-since unused and adds noticable build time. Add makefile comments about JSPI. (check-in: b8f708e35d user: stephan tags: trunk) | |
11:11 | Add SAHPoolUtil.getFileNames() method, and tests for it, per forum feedback. Add a test to demonstrate that two SAH pools can coexist so long as they have different names. (check-in: 72dc3f8c32 user: stephan tags: trunk) | |
11:00 | Fix jsonForceRCStr() to also add the NULL terminator. (check-in: 134b01f37f user: drh tags: json-opt) | |
07:57 | Reformulate [907dfc4a7aa1] using awk instead of sed for better cross-platform portability. (check-in: 82ff7cc6a4 user: stephan tags: trunk) | |
01:15 | Merge the latest trunk fixes into the json-opt branch. (check-in: ef4e1664d1 user: drh tags: json-opt) | |
01:12 | Add the concept of an RCStr string - a "Reference Counted String". Use these to keep track of big JSON strings that might need to be used in multiple places at the same time with different lifetimes. Add two different JSON string values to each parse - one with and one without changes. The net result is a large reduction in the number of parses that occur when doing an UPDATE of a indexed JSON field using json_replace() or similar. (check-in: a4c1af616e user: drh tags: json-opt) | |
01:05 | Extend the enhancement to json_set() and json_replace(). Clean up cruft. (Closed-Leaf check-in: 2dbb22c75e user: drh tags: json-opt-rcstr) | |
00:48 | Add the JsonParse.zAlt field to old revised JSON text after a change. Demonstrate that this elminates the need for reparsing after a change by using it in the json_remove() function. This is an incremental check-in containing lots of cruft. (check-in: f930b139d6 user: drh tags: json-opt-rcstr) | |
2023-07-25
| ||
20:26 | Clarify ownership of the various objects involved in parsing JSON. (check-in: afe02a398a user: drh tags: json-opt-rcstr) | |
18:28 | Incremental improvements to JSON parsing - trying to fold in the RCStr object. (check-in: 4cb15d934a user: drh tags: json-opt-rcstr) | |
17:54 | Fix a harmless "set-but-not-used" compiler warning in sqlite3session.c. (check-in: 54b3c43fdf user: dan tags: trunk) | |
17:11 | Merge trunk changes into this branch. (Closed-Leaf check-in: 719973d7f5 user: dan tags: fts5-contentless-delete) | |
16:48 | Add extra test for 'deletemerge'. (check-in: bc33cff420 user: dan tags: fts5-contentless-delete) | |
15:48 | Change the name of the fts5 'delete-automerge' option to 'deletemerge'. And add tests for it. (check-in: 1079300db2 user: dan tags: fts5-contentless-delete) | |
15:43 | Fix a minor problem with error reporting in JSON. (check-in: c456e4a899 user: drh tags: json-opt-rcstr) | |
15:08 | Create the new RCStr class of strings and try to use them for JSON storage. (check-in: c1b8725089 user: drh tags: json-opt-rcstr) | |
13:53 | Further tests for 'delete-automerge'. (check-in: ca26c7a37a user: dan tags: fts5-contentless-delete) | |
12:26 | Reformulate a (sed -i) construct in ext/wasm/GNUmakefile to account for Mac's sed -i being different than GNU's. (check-in: 907dfc4a7a user: stephan tags: trunk) | |
00:13 | First attempt to cache modified JSON parses. Does not work. This is an incremental check-in. (Leaf check-in: 075eb09a4f user: drh tags: json-opt-wcache1) | |
2023-07-24
| ||
23:27 | It is an error to try to insert a BLOB value into JSON. (check-in: 28c6e964b1 user: drh tags: json-opt) | |
22:45 | Clean up some #defines in json. (check-in: 327fff501e user: drh tags: json-opt) | |
22:34 | Rework the JSON parse structure to facilitate better caching. Passes all tests. (check-in: ecdcb1ded7 user: drh tags: json-opt) | |
19:13 | Add the fts5 'delete-automerge' integer option. A level is eligible for auto-merging if it has a greater than or equal percentage of its entries deleted by tombstones than the 'delete-automerge' option. Default value is 10. (check-in: b314be66b9 user: dan tags: fts5-contentless-delete) | |
17:59 | Incremental progress toward improved caching of parsed JSON. (check-in: f2c0638846 user: drh tags: json-opt) | |
15:41 | Resolve an ES6 module export construct which is incompatible with node.js, as reported in forum post b9680fa9ad. (check-in: 80927c3913 user: stephan tags: trunk) | |
13:30 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: e0e7b01e27 user: drh tags: reuse-schema) | |
13:24 | Merge the latest trunk enhancements into the bedrock branch. (check-in: a6f3443994 user: drh tags: bedrock) | |
13:20 | Merge the latest trunk enhancements into the wal2 branch. (check-in: b2e56f62ad user: drh tags: wal2) | |
13:15 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 967be041ea user: drh tags: begin-concurrent) | |
12:59 | Update the latest trunk enhancements into the wal-shm-exceptions branch. (check-in: 3187ee3f69 user: drh tags: wal-shm-exceptions) | |
12:37 | Merge the latest trunk enhancements into the json-opt branch. (check-in: 00bfc4918b user: drh tags: json-opt) | |
2023-07-23
| ||
22:14 | When writing the filename header in a opfs-sahpool file, ensure that all remaining bytes in that part of the header are zeroed out to avoid the downstream problems reported in forum post d50ec48a293988a5. (check-in: c1b080e393 user: stephan tags: trunk) | |
2023-07-22
| ||
19:57 | Add the opfs-sahpool sqlite3_vfs implementation to JS, offering an alternative to the other OPFS VFS (with tradeoffs). (check-in: d2e602cda4 user: stephan tags: trunk) | |
19:47 | Integrate contentless delete with auto-merge. (check-in: 85c1589ab1 user: dan tags: fts5-contentless-delete) | |
16:37 | Do not read past the end of a text buffer looking for a zero terminator, as that space might not be initialized. If the buffer is owned, just set the null terminator. This is a better fix for the OSSFuzz-detected use-of-initialized-value problem. (check-in: 931bccb0cc user: drh tags: trunk) | |
15:21 | Fix a harmless use-of-initialized-value warning from OSSFuzz that results from recent large string optmizations. (check-in: 1a6b3dd1c4 user: drh tags: trunk) | |
2023-07-21
| ||
22:28 | Performance enhancements for queries using very large string values. (check-in: 3661b9cd98 user: drh tags: trunk) | |
22:22 | Mark an unreachable branch as NEVER(). (Leaf check-in: 414a4d660c user: drh tags: big-function-text) | |
21:10 | Fix fts5 incremental optimization so that it too can handle an index that consists of a single segment with one or more tombstone hash pages. (check-in: e61c9b083f user: dan tags: fts5-contentless-delete) | |
19:33 | Ensure the fts5 'optimize' command correctly rewrites any index that consists of a single segment and one or more tombstone hash pages. (check-in: f4926006b3 user: dan tags: fts5-contentless-delete) | |
19:17 | Fix harmless compiler warning introduced by the previous check-in. (check-in: 06f829e9e5 user: drh tags: big-function-text) | |
18:38 | Avoid a potentially large strlen() in sqlite3DecOrHexToI64(). (check-in: 5413b02bb6 user: drh tags: big-function-text) | |
18:09 | Further improvements to large string handling in relation to JSON. (check-in: 1e5df0aa3d user: drh tags: big-function-text) | |
15:07 | Fix harmless compiler warning about signed/unsigned comparison. (check-in: 75cc3c89ee user: drh tags: big-function-text) | |
15:01 | Multiple optimizations that try to preserve or infer the zero-terminated property of TEXT values. Avoid unnecessary copying of text values destined to become function parameters. All changes help improve performance of doing UPDATEs on large JSON values that are indexed multiple ways. (check-in: d0278cdedf user: drh tags: big-function-text) | |
11:09 | More infrastructure changes towards improving JSON cache performance. Incremental check-in. (check-in: 1955e66cfc user: drh tags: json-opt) | |
10:51 | Minor internal cleanups in the opfs-sahpool VFS. (Closed-Leaf check-in: 74ad31e290 user: stephan tags: opfs-sahpool) | |
09:10 | Internal cleanups in the async part of the JS library bootstrap phase. (check-in: b6d57ab637 user: stephan tags: opfs-sahpool) | |
2023-07-20
| ||
23:25 | Minor internal cleanups in JS code. (check-in: 21a2ca9fc4 user: stephan tags: opfs-sahpool) | |
20:29 | Fix some divide-by-zero errors that could occur when handling corrupt tombstone hash records. (check-in: 7567ca0676 user: dan tags: fts5-contentless-delete) | |
20:09 | Avoid an infinite loop that could be entered when dealing with corrupt fts5 tombstone hash pages. (check-in: 69ce2ce035 user: dan tags: fts5-contentless-delete) | |
17:45 | Experimental framework upon which to build a better JSON parse structure that supports cached of modified JSON. All of these changes are tentative and subject to change or removal. Incremental check-in. (check-in: e384163a47 user: drh tags: json-opt) | |
16:07 | Add tests and fixes for the new code on this branch. (check-in: 5aac50e92e user: dan tags: fts5-contentless-delete) | |
09:06 | Filter the OPFS VFSes out of the sqlite3-node.mjs build. Add another level of subdirectory to the sahpool to later enable transparent support of client-provided files under the VFS's root dir. Rework the awkward sahpool-via-oo1 mapping. (check-in: 080a4d0aba user: stephan tags: opfs-sahpool) | |
2023-07-19
| ||
23:02 | Performance enhancements to the JSON parser and code generator. (check-in: 0a745897d6 user: drh tags: trunk) | |
20:23 | Revise the new JSON parser performance test to make the test run 25 times longer, and thus provide a more repeatable number. (check-in: bee9e403ae user: drh tags: trunk) | |
19:23 | Describe JSON parser performance testing procedure in test/json/README.md (check-in: c47056e158 user: drh tags: trunk) | |
18:47 | Fix various issues with code added to this branch. (check-in: 8d09011fa2 user: dan tags: fts5-contentless-delete) | |
17:47 | More internal refactoring and docs for opfs-sahpool. (check-in: 64ccf6177a user: stephan tags: opfs-sahpool) | |
17:46 | Update the development-over-ssh docs for the wasm build. (check-in: 500109bd0a user: stephan tags: opfs-sahpool) | |
17:24 | Further improvement to JSON parser performance. (check-in: 144c8ccf6e user: drh tags: json-opt) | |
15:06 | Further performance enhancements to JSON parsing and rendering. Total performance gain for large JSONs so far on this branch is about 11%. (check-in: adb4d6b007 user: drh tags: json-opt) | |
13:50 | Performance optimization for parsing large JSONs that contain lots of text. (check-in: c9fbe0185c user: drh tags: json-opt) | |
13:31 | Major restructuring of opfs-sahpool to improve maintainability and hopefully make it easier to reuse these pieces in the upcoming JSPI-based VFS experiment. (check-in: 534481cd0c user: stephan tags: opfs-sahpool) | |
12:52 | Enhance the JSON parser cache such that it is able to extract lines from the cache and use them for writing, though they then have to be evicted from the cache. This was an experiment in trying to reduce the amount of parsing needed for a big UPDATE, but it does not seem to help any. Retained for reference only. (Closed-Leaf check-in: 2e6fbebc41 user: drh tags: json-write-cache) | |
11:33 | Appearance and legibility improvements for tester1.js. (check-in: 4fd3ed1b64 user: stephan tags: opfs-sahpool) | |
10:17 | Merge the latest trunk enhancements into the sqlite3_stmt_explain branch. (Closed-Leaf check-in: 06eae046c1 user: drh tags: sqlite3_stmt_explain) | |
09:52 | Two minor improvements to sum(), one of which was inspired by forum post af5be98dbc. (check-in: a0d3e7571a user: drh tags: trunk) | |
08:18 | Internal refactoring in opfs-sahpool. Move OPFS tests to the end of tester1.c-cpp.js. (check-in: 6bd5a7413d user: stephan tags: opfs-sahpool) | |
2023-07-18
| ||
21:06 | Do not use the viewscan optimization on a query that has only a single loop, as the cost adjustments can cause problems for outer queries. Proposed fix for the performance regression reported by forum post 64d36440e473516c. (check-in: 76152ad2ff user: drh tags: trunk) | |
20:41 | Improved ".wheretrace" for the VIEWSCAN optimization. (check-in: 27057ea76b user: drh tags: trunk) | |
19:52 | Fix various problems with fts5 contentless_delete=1 tables. (check-in: 0d005112b8 user: dan tags: fts5-contentless-delete) | |
19:47 | More opfs-sahpool tests. (check-in: 60713fa9c4 user: stephan tags: opfs-sahpool) | |
19:27 | Fix a shadowed var in opfs-sahpool and add more tests. (check-in: 9c8a73aff0 user: stephan tags: opfs-sahpool) | |
18:52 | Further refactoring of opfs-sahpool and start integrating it into tester1.c-pp.js. (check-in: 91c7892349 user: stephan tags: opfs-sahpool) | |
17:43 | Merge the FTS5 memory leak fix from trunk. (check-in: fb65cb73d7 user: drh tags: fts5-contentless-delete) | |
17:29 | Enhance the sqlite3_stmt_explain() interface so that avoids unnecessary reprepare operations. (check-in: 050f773add user: drh tags: sqlite3_stmt_explain) | |
16:29 | Fix memory leak in fts5 introduced by [def41225]. (check-in: 4dcad2db74 user: dan tags: trunk) | |
16:24 | Major restructuring of the opfs-sahpool bits to better support multiple instances per app (each sandboxed from each other). Eliminate the pesky promise resolution race condition when two such instances are loaded in parallel. (check-in: 95e5fa498f user: stephan tags: opfs-sahpool) | |
15:06 | Experimental (untested, non-working) changes that try reduce the number of reprepares generated by sqlite3_stmt_explain(). I think I see an easier way to do this now, so I'm parking this experiment on a branch to pursue the new idea. (Closed-Leaf check-in: c2fba6a632 user: drh tags: sqlite3-stmt-explain-opt1) | |
13:55 | Merge trunk changes with this branch. (check-in: 5f66eb4e26 user: dan tags: fts5-contentless-delete) | |
13:55 | Fix a buffer overrun in fts5 that could occur in 'secure-delete' mode when dealing with corrupt database records. (check-in: def41225b2 user: dan tags: trunk) | |
12:09 | Refactor opfs-sahpool to support multiple instances, each with a separate VFS name and directory. (check-in: d036eaf6ac user: stephan tags: opfs-sahpool) | |
2023-07-17
| ||
18:40 | Fix cases where a row is inserted into a contentless_delete=1 fts5 table and then deleted within the same transaction. (check-in: d928856a22 user: dan tags: fts5-contentless-delete) | |
17:59 | Do not allow the 'delete' command to be used on contentless_delete=1 fts5 tables. (check-in: cc694b8340 user: dan tags: fts5-contentless-delete) | |
11:47 | Merge trunk changes into this branch. (check-in: c4fb2f2ea0 user: dan tags: fts5-contentless-delete) | |
07:43 | Another -DSQLITE_TEMP_STORE=3 to 2 change for the wasm build. (check-in: 5ad8f9987c user: stephan tags: opfs-sahpool) | |
07:14 | sahpool vfs: rename defaultCapacity to initialCapacity, per feedback. (check-in: 2c9c95d087 user: stephan tags: opfs-sahpool) | |
07:13 | Change wasm build's -DSQLITE_TEMP_STORE=3 to -DSQLITE_TEMP_STORE=2, primarily so that clients can optionally shift temp files from memory to OPFS storage. (check-in: 764430e804 user: stephan tags: opfs-sahpool) | |
2023-07-16
| ||
21:07 | Remove an extraneous JS script import. (check-in: 5a205b2591 user: stephan tags: opfs-sahpool) | |
20:42 | Add sqlite3-vfs-opfs-sahpool.js to ext/wasm/api/README.md. (check-in: 58d0520104 user: stephan tags: opfs-sahpool) | |
20:20 | Minor doc tweaks. (check-in: 0cb0d7a9e7 user: stephan tags: opfs-sahpool) | |
19:29 | Correct a missing assignment. Minor doc additions. (check-in: 1c4957d0ef user: stephan tags: opfs-sahpool) | |
19:20 | Doc tweaks only, no code changes. (check-in: 044c28dffd user: stephan tags: opfs-sahpool) | |
17:51 | Add a way to remove the opfs-sahpool's persistent state from OPFS or unlink() an individual file. Doc cleanups. (check-in: 80982daac3 user: stephan tags: opfs-sahpool) | |
16:52 | Move SAH pool configuration options from the library-level config to a config passed to the VFS install routine. Extend and document the PoolUtil object. (check-in: d2ed99556f user: stephan tags: opfs-sahpool) | |
14:07 | speedtest1.js: only install opfs-sahpool if it's provided via --vfs flag, to avoid locking errors in concurrent speedtest1 tabs with other VFSes. Add opfs-sahpool reserveMinimumCapacity(). (check-in: aa94c8abfb user: stephan tags: opfs-sahpool) | |
12:02 | During "opfs" VFS init, check for URL param opfs-disable and, if set, do not install the VFS. Added per forum suggestion to provide a way to help rule out misinteraction between the "opfs" and "opfs-sahpool" VFSes. (check-in: 29905b7a75 user: stephan tags: opfs-sahpool) | |
11:49 | Micro-optimizations in opfs-sahpool. (check-in: 52f23db948 user: stephan tags: opfs-sahpool) | |
10:02 | Redefine what the opfs-sahpool installation promise resolves to. Fix addCapacity(). Add utility methods to import/export files. (check-in: 809c6f4de3 user: stephan tags: opfs-sahpool) | |
2023-07-15
| ||
21:08 | Minor cleanups in the opfs-sahpool VFS. (check-in: 279e090709 user: stephan tags: opfs-sahpool) | |
19:08 | Correct opfs-sahpool VFS after the pebkac involving the previous speedtest1 runs. Make that VFS explicitly opt-in to avoid certain unfortunate locking situations. (check-in: 41bf1fe31f user: stephan tags: opfs-sahpool) | |
18:57 | Store large tombstone hash tables in multiple database records. Ensure the same hash tables handle rowid 0. (check-in: 4410e60d0c user: dan tags: fts5-contentless-delete) | |
16:48 | Add the experimental sqlite3_stmt_explain(S,E) interface. (check-in: 5683743ddf user: drh tags: sqlite3_stmt_explain) | |
16:30 | speedtest1 JS: only add --memdb flag by default if no --vfs is provided. (check-in: 676ffe6280 user: stephan tags: opfs-sahpool) | |
11:37 | Rename opfs-sahpool removeCapacity() to reduceCapacity(). (check-in: fff68e9f25 user: stephan tags: opfs-sahpool) | |
11:23 | opfs-sahpool VFS now seems to work, in that it runs fine (and blazingly fast) in speedtest1. Add sqlite3.config options for the high-level configurable parts of opfs-sahpool. (check-in: 5d92d5f4d8 user: stephan tags: opfs-sahpool) | |
01:02 | More work on porting the sahpool bits. Revert to random backing-store names because it works better with the capacity-reduction algorithm. (check-in: b4e005fd38 user: stephan tags: opfs-sahpool) | |
2023-07-14
| ||
23:02 | Switch opfs-sahpool to use deterministic backing-store file names. Delay VFS registration until after the pool's files are all opened. Fail vfs init if the client's OPFS API has an async FileSystemSyncAccessHandle.close() method (indicating that it's outdated). (check-in: 7c6697eded user: stephan tags: opfs-sahpool) | |
21:48 | Integrate the opfs-sahpool VFS into the JS build and get it loading (but it's still far from functional). (check-in: ef96e6b586 user: stephan tags: opfs-sahpool) | |
21:17 | Initial sketches for an alternate OPFS VFS which uses a pool of pre-opened SyncAccessHandles to bypass the need for a dedicated I/O worker and the COOP/COEP HTTP response headers. Currently completely non-functional. (check-in: a93de9f2a5 user: stephan tags: opfs-sahpool) | |
21:06 | Minor internal cleanups in the OPFS VFS. (check-in: 984d491eb3 user: stephan tags: trunk) | |
12:21 | Minor wasm build cleanups. (check-in: 816b503f09 user: stephan tags: trunk) | |
2023-07-13
| ||
18:35 | Reintroduce WASMFS+OPFS support, albeit as a separate (less portable) WASM build. (check-in: 7e4c594e95 user: stephan tags: trunk) | |
18:13 | Minor cleanups related to reintroducing wasmfs support. (Closed-Leaf check-in: 6918a927b5 user: stephan tags: wasmfs-2023) | |
17:27 | More work on the wasmfs build and its test apps. (check-in: 953b855719 user: stephan tags: wasmfs-2023) | |
16:33 | Get speedtest1 wasmfs variant running again. (check-in: 0f77e031da user: stephan tags: wasmfs-2023) | |
14:49 | Fix an off-by-one error in tests for cells overflowing the end of pages. The error is completely harmless for the default page cache, but might cause false-positive SQLITE_CORRUPT errors in systems that use an application-defined page caches that pack pages tightly together in memory. (check-in: ce6793e954 user: drh tags: trunk) | |
14:08 | Significant surgery on the wasm build on the way to incorporating wasmfs as a first-class build option. (check-in: 215c37fce3 user: stephan tags: wasmfs-2023) | |
10:41 | More work on the wasmfs build. Resolve the inconsistent argument type passed to sqlite3InitModule() in such builds. (check-in: 4850a9e2d2 user: stephan tags: wasmfs-2023) | |
04:54 | Minor cleanups in the wasmfs build. (check-in: f64477f210 user: stephan tags: wasmfs-2023) | |
04:26 | Get wasmfs build and its bare-bones test app working again, albeit currently in ES6 mode only. (check-in: 647761ed42 user: stephan tags: wasmfs-2023) | |
03:46 | Replace 'self' with 'globalThis' in some JS test code. (check-in: 53eeffc9b1 user: stephan tags: trunk) | |
01:51 | JS: change the default OPFS VFS journal mode from PERSIST to DELETE, as DELETE is faster in current browsers. (check-in: a061a43e36 user: stephan tags: trunk) | |
01:48 | Remove obsolete ext/wasm/api/sqlite3-wasi.h. (check-in: f661a6e0c1 user: stephan tags: trunk) | |
2023-07-12
| ||
20:24 | Avoid a case of an infinite loop in fts5 when dealing with corrupt records. (check-in: 0e801f11cd user: dan tags: fts5-contentless-delete) | |
19:34 | Fix a crash that may occur when handling corrupt records in contentless_delete=1 mode. (check-in: 74d7610a8e user: dan tags: fts5-contentless-delete) | |
18:38 | Get access to SQL functions and virtual tables used for debugging and analysis of FTS5 using SQLITE_FTS5_DEBUG and without the need for SQLITE_TEST. (check-in: 383de8e225 user: drh tags: fts5-contentless-delete) | |
09:30 | Internal JS doc fix. (check-in: 7c5ea02205 user: stephan tags: trunk) | |
09:16 | Correct handling of the speedtest1 --without-rowid flag in the HTML front-end to speedtest1.wasm. Reduce default speedtest1-with-OPFS workload size in ext/wasm/index.html to speed up manual testing. (check-in: 2daba2cdd3 user: stephan tags: trunk) | |
2023-07-11
| ||
20:57 | Have contentless_delete=1 tables support REPLACE statements. (check-in: 2f553a660e user: dan tags: fts5-contentless-delete) | |
20:19 | Have contentless_delete=1 tables support regular DELETE statements, instead of just the special INSERT syntax. (check-in: fffb861690 user: dan tags: fts5-contentless-delete) | |
19:54 | Reduce divergence between branches: trunk and wal-shm-exceptions. (check-in: d38ed6b1fc user: drh tags: trunk) | |
18:55 | Use a hash-table instead of a flat list to store tombstone rowids. (check-in: 948267b066 user: dan tags: fts5-contentless-delete) | |
15:52 | Get fault injection for testing working correctly. Other code clean-up. (check-in: ff492277ed user: drh tags: wal-shm-exceptions) | |
2023-07-10
| ||
20:44 | Begin adding support for deleting rows from contentless fts5 tables. (check-in: e513bea84d user: dan tags: fts5-contentless-delete) | |
19:21 | Minor style changes to the previous MSVC makefile changes on this branch. (check-in: 4c950872c8 user: mistachkin tags: wal-shm-exceptions) | |
19:13 | Compile for SEH if the USE_SEH=1 option is specified on the nmake command line. (check-in: 0e67a82f6c user: drh tags: wal-shm-exceptions) | |
18:16 | Fix a warning. Unclear yet if the code is correct this way or not. (check-in: 2df4fd76ef user: drh tags: wal-shm-exceptions) | |
18:05 | Merge the latest trunk enhancements into the wal-shm-exceptions branch. (check-in: f655d08d01 user: drh tags: wal-shm-exceptions) | |
2023-07-08
| ||
19:28 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: 7a9cb6f4f4 user: drh tags: reuse-schema) | |
19:16 | Merge the latest trunk enhancements into the bedrock branch. (check-in: 35bfb5bfee user: drh tags: bedrock) | |
19:09 | Merge all the latest trunk enhancements into the wal2 branch. (check-in: f07936535f user: drh tags: wal2) | |
19:00 | Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 3d0823c48e user: drh tags: begin-concurrent) | |
17:42 | Always use the "LL" suffix on 64-bit integer literals. (check-in: 07d95ed60f user: drh tags: trunk) | |
14:27 | Fix harmless scan-build warnings. (check-in: beab3c9863 user: drh tags: trunk) | |
2023-07-07
| ||
18:49 | Omit the use of memmove() in sqlite3FpDecode() in an attempt to avoid spurious warnings from valgrind. Also makes the code slightly smaller and faster. (check-in: b409943af0 user: drh tags: trunk) | |
16:58 | Proof of concept for a new sqlite3_function_needed() interface. (Leaf check-in: cd67edc032 user: drh tags: need-function) | |
12:18 | For the "Valgrind" test scenario, set LONGDOUBLE_TYPE=double as valgrind does not correctly emulated extended precision on x64. (check-in: d3532eaed1 user: drh tags: trunk) | |
12:08 | Add option 2 to SQLITE_TESTCTRL_USELONGDOUBLE to move the setting to its defaults. Enhance the CLI and testfixture to make use of this value. Base the default on sizeof(LONGDOUBLE_TYPE) rather than on sizeof(long double). (check-in: 64e6bd1c25 user: drh tags: trunk) | |
2023-07-06
| ||
20:34 | Improved handling of integer inputs to the new sum() implementation. (check-in: 31561c63bd user: drh tags: trunk) | |
18:29 | A more precise implementation of sqlite3RealToI64(). (check-in: 8813317cb5 user: drh tags: trunk) | |
17:55 | Merge all recent trunk enhancements into the wal-shm-exceptions branch. (check-in: e59cea2d85 user: drh tags: wal-shm-exceptions) | |
17:14 | Fix octet_length() test cases so that they work when the database encoding is utf16. (check-in: ad2e39626e user: drh tags: trunk) | |
15:44 | Use the Kahan-Babushka-Neumaier algorithm to improve the accuracy of sum(). (check-in: c63e26e705 user: drh tags: trunk) | |
14:45 | Fix minor inaccuracies in the new sum() algorithm. (Closed-Leaf check-in: e3f7a960c9 user: drh tags: kahan-babuska-neumaier-summation) | |
13:19 | Experimental attempt to boost the accuracy of sum() using the Kahan-Babuska-Neumaier algorithm. (check-in: ebc5edd3b1 user: drh tags: kahan-babuska-neumaier-summation) | |
00:55 | Use "volatile" isntead of "#pragma" to get floating point calculations working correctly when compiling with GCC for x86 machines. (check-in: 9427f42687 user: drh tags: trunk) | |
2023-07-05
| ||
22:05 | This is alternative work-around for the x86 float-point problem that uses "volatile" rather than compile-specific #pragmas. (Closed-Leaf check-in: 1d972a690f user: drh tags: fix-dekker-with-volatile) | |
19:56 | Improved comments on the work-around to the GCC x86 floating point wonkiness. (check-in: 7b4c16731e user: drh tags: trunk) | |
18:59 | Work around for an apparent GCC bug. See forum post ee7278611394034c for details. (check-in: 5d9e936480 user: drh tags: trunk) | |
15:34 | Make the order of operations explicit for the error term of Dekker double-precision multiply. (check-in: 28f57b34e6 user: drh tags: trunk) | |
14:42 | Simplification of the dekkerMul2() subroutine. (check-in: bfe6432a46 user: drh tags: trunk) | |
12:00 | Add the ieee754_inc(r,N) function to the ieee754.c extension. (check-in: 9a36f26945 user: drh tags: trunk) | |
2023-07-03
| ||
18:32 | Enhance the sqlite3AtoF() function so that it can operate with or without long double and provides accurate results in both cases. (check-in: fd987508d5 user: drh tags: trunk) | |
18:18 | Enhance sqlite3AtoF() so that it honors the USELONGDOUBLE test-control. Enable the test/atof1.test module on non-intel platforms. (Closed-Leaf check-in: b7850fd480 user: drh tags: fp-to-decimal-refactor) | |
15:30 | Store the fp-speed-1.c test program used to measure relative performance of SQLite versus the standard library, in the test/ directory. A header comment explains how to use it. (check-in: eaff376277 user: drh tags: trunk) | |
15:11 | Add the --nolongdouble option to speedtest1.c. (check-in: 6bf6018a00 user: drh tags: trunk) | |
15:03 | Improved precision of binary-to-decimal conversion of floating-point values on all systems but especially non-x86 systems that lake extended precision hardward floating point. (check-in: 32befb224b user: drh tags: trunk) | |
14:56 | Whether or not to use the long-double floating point conversion technique is now a test-control setting. (check-in: 02ae6caff1 user: drh tags: fp-to-decimal-refactor) | |
12:58 | New test cases for floating-point conversions. (check-in: 9435ed76cd user: drh tags: fp-to-decimal-refactor) | |
11:44 | Use Dekker double-precision floating point to do the value normalization step in sqlite3FpDecode() for systems on which "long double" is 8 bytes or less. (check-in: 51f492b440 user: drh tags: fp-to-decimal-refactor) | |
11:39 | Final clean-up of the idea of using Dekker double-precision floating computations to improve accuracy. (Closed-Leaf check-in: 40285d6310 user: drh tags: fp-to-decimal-branch1) | |
10:35 | Squeeze as many bits as we can out of normalization. (check-in: 25d1ad6df1 user: drh tags: fp-to-decimal-branch1) | |
10:18 | Faster Dekker multiplication that removes the restriction on input magnitude. (check-in: 2994caf588 user: drh tags: fp-to-decimal-branch1) | |
10:00 | Fix one constant in the normalization logic. Improved error output from atof1.test. (check-in: d3c4880710 user: drh tags: fp-to-decimal-branch1) | |
09:07 | Replace the dodgy error estimating logic in the previous check-in with full-up Dekker double-double multiplication, and this idea works much better. There are still a few inaccuracies, but it is much closer. (check-in: 4fa6938dac user: drh tags: fp-to-decimal-branch1) | |
00:51 | The fptest(X) routine used for exploring another idea for improving fp-to-decimal conversion without the use of long double. (Leaf check-in: d9a883d7d8 user: drh tags: fp-to-decimal-branch2) | |
00:40 | An idea for improving accuracy of fp-to-decimal conversion for systems that do not have "long double". Does not quite work. Retained only for documentation purposes. (check-in: 7022433338 user: drh tags: fp-to-decimal-branch1) | |
2023-07-01
| ||
20:21 | This check-in adds the use of "long double" to sqlite3FpDecode() which when run on x86 using a compiler that translates "long double" into binary80, causes all legacy tests to pass. But on a system where "long double" is just an alias for "double", some of the tests are still failing. (check-in: ce06982f88 user: drh tags: fp-to-decimal-refactor) | |
18:33 | Reinstate the fpdecode() SQL function for testing, but only when compiled with SQLITE_DEBUG. (check-in: 07eab52e08 user: drh tags: fp-to-decimal-refactor) | |
17:56 | Improved rounding policy. (check-in: 6f1122e942 user: drh tags: fp-to-decimal-refactor) | |
15:23 | Improved response to Infinity and NaN. Remove the termporary fpdecode() function. (check-in: 76ab8ae809 user: drh tags: fp-to-decimal-refactor) | |
14:03 | Progress towards fixing corner-case floating-point formatting issues. (check-in: 1138b8d16e user: drh tags: fp-to-decimal-refactor) | |
2023-06-30
| ||
23:42 | Fix an issue with the "+" attribute in printf(). (check-in: bdfd1eb1d7 user: drh tags: fp-to-decimal-refactor) | |
23:18 | Begin cutting over sqlite3FpDecode() into printf(). The code in this check-in gets a lot right, but there are still some formatting discrepencies. (check-in: c134d423e7 user: drh tags: fp-to-decimal-refactor) | |
19:41 | Add decimal rounding to the sqlite3FpDecode() routine. (check-in: 27871140ca user: drh tags: fp-to-decimal-refactor) | |
19:14 | Add experimental ".scanstats vm" command to the shell tool. (check-in: e727640fb5 user: dan tags: scanstatus-exp) | |
19:13 | Fix an error in the previous commit on this branch. (check-in: 47c11ca90f user: dan tags: scanstatus-exp) | |
18:59 | Add the "nexec" and "ncycle" columns to the bytecode virtual table. For accessing counters collected when SQLITE_DBCONFIG_STMT_SCANSTATUS is enabled. (check-in: f7b163a319 user: dan tags: scanstatus-exp) | |
18:35 | Experiments with a new algorithm for converting ieee-754 binary64 numbers into decimal. (check-in: e923405e44 user: drh tags: fp-to-decimal-refactor) | |
18:31 | Add support for sqlite3_stmt_scanstatus_v2() profiling of GROUP BY clauses that use a temp b-tree, and for sub-queries implemented as co-routines. (check-in: 7afad1f759 user: dan tags: trunk) | |
18:23 | Improve support for sqlite3_stmt_scanstatus_v2() profiling of sub-queries implemented as co-routines. (Closed-Leaf check-in: 4e8718dc35 user: dan tags: scanstatus-exp) | |
17:14 | Add support for sqlite3_stmt_scanstatus_v2() profiling of GROUP BY clauses that use a temp b-tree. (check-in: 796eadcc50 user: dan tags: scanstatus-exp) | |
16:16 | Add extra debugging code for sqlite3_stmt_scanstatus_v2() to test1.c. (check-in: f936f10140 user: dan tags: trunk) | |
14:01 | Completely unwind the enhanced precision sum() from [a915f15a916af698] so as not to offend UBSAN and OSS-Fuzz. (check-in: 85be05b66e user: drh tags: trunk) | |
12:59 | Omit the doubleToReal() function in vdbemem.c. Use the equivalent sqlite3RealToI64() function in its place. (check-in: 625820e8eb user: drh tags: trunk) | |
11:51 | Make the sum() function less precise and slower in order to avoid harmless signed integer overflow UBSAN warnings from OSS-Fuzz. (check-in: 1be0646a2c user: drh tags: trunk) | |
2023-06-29
| ||
23:03 | Cleanup and commenting of the new DECIMAL extension code. No functional changes. (check-in: 5124481663 user: drh tags: trunk) | |
20:28 | Enhancements to the DECIMAL extension: (1) If the argument to decimal(X) is a floating point value (or an 8-byte blob), the floating point value is expanded into its exact decimal representation. (2) Function decimal_sci(X) works the same except it returns the result in scientific notation. (3) New function decimal_pow2(N) returns the full decimal expansion of the N-th integer power of 2. (check-in: 8baf8c10ae user: drh tags: trunk) | |
17:58 | Sync w/trunk (check-in: fe9aa2e9c1 user: larrybr tags: cli_extension) | |
17:48 | Fix harmless compiler warnings about unused function arguments. (check-in: 24927c1377 user: drh tags: trunk) | |
17:36 | Improve the range of floating-point numbers that can be handled as integers for numeric-to-text conversion. (check-in: 41580ba452 user: drh tags: trunk) | |
17:26 | Further refine the dtostr() testing function in the CLI so that it takes an optional second parameter which is the number of significant digits to display. (check-in: 2f9d4444aa user: drh tags: trunk) | |
16:48 | Change the (undocumented) dtostr() SQL function in the CLI so that it only shows the first 26 significant digits - 10 more digits than are available in a 64-bit double. (check-in: d758859f6a user: drh tags: trunk) | |
14:49 | Add the decimal_sci(X) function to the Decimal extension for showing a decimal value in scientific notation: +D.DDDDDe+DD (check-in: 61d4923913 user: drh tags: trunk) | |
12:14 | CLI enhancements to facilitate SQLite core testing: (1) Add built-in functions strtod() and dtostr() that convert text to floating point and back using C-library routines. (2) Do not disable all of ".testctrl" without --unsafe-testing, but only those subcommands of .testctrl that are actually dangerous. (check-in: 669996a8dd user: drh tags: trunk) | |
2023-06-28
| ||
12:02 | Enhance the SUM() aggregate (and related AVG() and TOTAL()) so that the running sum is accurate to about 100 bits. (check-in: a915f15a91 user: drh tags: trunk) | |
11:46 | Improved accuracy of floating-point conversion constants as suggested by forum post 598d32f6135c41c1. (check-in: 4943e8a181 user: drh tags: trunk) | |
2023-06-26
| ||
19:57 | Simple test cases for the enhanced SUM() function. (Closed-Leaf check-in: c66ef2440e user: drh tags: extended-precision-fp) | |
19:35 | Use ideas from T. J. Dekker in "A Floating-Point Technique for Extending the Available Precision" (1971-07-26) to enhance the accuracy of the SUM() aggregate function in cases where input magnitudes vary wildly. (check-in: 439fc00fee user: drh tags: extended-precision-fp) | |
17:08 | Fix CLI .sha3sum error message for keyword identifiers, reported in forum post 7cbe081746dd. (check-in: 9d7813ddcf user: larrybr tags: trunk) | |
07:05 | Replace some JS 'self' references with 'globalThis', as reported via the npm subproject. (check-in: d4e66dfc2e user: stephan tags: trunk) | |
2023-06-25
| ||
20:23 | Fix typo in the README.md file. (check-in: 6d435d1dac user: drh tags: trunk) | |
2023-06-23
| ||
11:10 | Add support for the octet_length() SQL function, with low-level optimizations that avoid loading large string content from disk when the argument to octet_length() is a table column. (check-in: fa5f77862c user: drh tags: trunk) | |
2023-06-22
| ||
21:19 | Optimize the argument to the octet_length() function so that it does not attempt to read content from disk. (Closed-Leaf check-in: 8b8ea4e3f5 user: drh tags: octet_length) | |
15:26 | basic test cases for octet_length(). (check-in: 034a5fe2a0 user: drh tags: octet_length) | |
14:50 | Merge the latest trunk enhancements into the reuse-schema branch. (check-in: 905c6c9ddb user: drh tags: reuse-schema) | |
14:40 | Merge the latest trunk enhancements into the bedrock branch. (check-in: 0551b79b17 user: drh tags: bedrock) | |
14:20 | Merge the latest trunk enhancements into the wal2 branch. (check-in: 80ac494f73 user: drh tags: wal2) | |
13:28 | Merge recent trunk enhancements into the begin-concurrent branch. (check-in: 5bd26fea6a user: drh tags: begin-concurrent) | |
13:01 | Merge recent trunk enhancements into the octet_length branch. (check-in: d35c214811 user: drh tags: octet_length) | |
01:03 | Simplification to the getAndInitPage() routine that results in improved performance. (check-in: 2e9734c233 user: drh tags: trunk) | |
2023-06-21
| ||
21:47 | Improved comment on the getAndInitPage() in btree.c. No code changes. (check-in: dc468cfdb8 user: drh tags: trunk) | |
18:12 | This is a failed attempt to optimize the usage of the page cache in sqlite3BtreeIndexMoveto() by deferring calls to sqlite3PagerUnref() for child pages of the btree until we are sure those pages will not be reused. The code does not work in two senses: (1) Many tests still fail. (2) The performance gain is less than 2 million cycles and does not seem worth the extra risk and complication. (Closed-Leaf check-in: 84731a1fd2 user: drh tags: pcache-opt) | |
14:48 | Sync w/trunk (for CLI -cachetrace) (check-in: a61f937701 user: larrybr tags: cli_extension) | |
14:11 | Add the --pcachetrace option to the CLI. (check-in: 61dfa92b44 user: drh tags: trunk) | |
2023-06-20
| ||
17:45 | Omit unnecessary calls to table locking routines in the common case when there is no shared cache. (check-in: f94f3021cd user: drh tags: trunk) | |
16:26 | Avoid unnecessary calls to sqlite3DeleteTable() with NULL pointers. (check-in: 4a35f39199 user: drh tags: trunk) | |
15:48 | Avoid unnecessary calls to sqlite3CodeRowTrigger(). (check-in: 27c174dbd0 user: drh tags: trunk) | |
11:46 | Performance optimization in sqlite3VdbeAddOp4Int(). (check-in: 456a24324b user: drh tags: trunk) | |
2023-06-19
| ||
23:27 | Avoid unnecessary NULL pointer checks on calls to sqlite3WalkExpr(). (check-in: 73d86a12fb user: drh tags: trunk) | |
20:54 | Small performance improvement and size reduction by recognizing that no SQL keywords have less than 2 characters. (check-in: 6b3d25b798 user: drh tags: trunk) | |
13:09 | Fix large integer constants so that they work on older C compilers. (check-in: 3c94f87806 user: drh tags: trunk) | |
2023-06-17
| ||
23:53 | Cure tclshext build warning. Sync w/trunk. (check-in: e9f2119106 user: larrybr tags: cli_extension) | |
15:42 | Fix harmless compiler warnings that show up on 32-bit RaspberryPI builds. (check-in: bc4d20f362 user: drh tags: trunk) | |
15:22 | In date/time functions, fix the rendering of "subsecond" and the computeHMS() routine to better deal with floating point rounding errors that arise on some 32-bit systems. (check-in: e46a00ae88 user: drh tags: trunk) | |
01:56 | Sync w/trunk. (check-in: 746733c1c5 user: larrybr tags: cli_extension) | |
2023-06-16
| ||
19:45 | Clear MSVC warnings and fix a typedef issue with MSVC build. (check-in: b0cb4cfcea user: larrybr tags: cli_extension) | |
14:39 | Address various harmless compiler warnings from forum post d526da8ee4. (check-in: 365caf2f97 user: drh tags: trunk) | |
11:05 | Fix the pager such that if the xOpen() message sends back the SQLITE_OPEN_MEMORY flag, the pager is opened in journal-mode MEMORY, even if compiled with SQLITE_OMIT_DESERIALIZE. No changes to the logic as long as that OMIT flag is omitted. We need to better document the behavior of xOpen to describe this. (check-in: da1252b298 user: drh tags: trunk) | |
02:18 | More doc tweaks, one teensy enhancement, and a new feature bug fix (check-in: 1073ef0629 user: larrybr tags: cli_extension) | |
2023-06-15
| ||
16:02 | Updates to the README.md file. (check-in: fa5cb6dab5 user: drh tags: trunk) | |
15:43 | Fix harmless typo in a comment. (check-in: 6937986a68 user: drh tags: trunk) | |
2023-06-14
| ||
13:45 | Add SQLITE_DBCONFIG_RANDOM_SCANORDER. This option causes unconstrained table and index scan to happen in a random order, in order to help detect under-constrained queries in applications. Closed because this feature does not add any new capabilities that are not already available with SQLITE_DBCONFIG_REVERSE_SCANORDER, but it does make the behavior non-deterministic, and hence more difficult to test. (Closed-Leaf check-in: 330219863c user: drh tags: random-scanorder) | |
12:19 | Work around what appears to be a GCC 32-bit optimization problem in the computeHMS() routine of the date/time logic. (check-in: aebdbcbebf user: drh tags: trunk) | |
2023-06-13
| ||
23:04 | Improve and add docs for extensible shell. (check-in: 1a57af86da user: larrybr tags: cli_extension) | |
18:10 | Improved sqlite3_error_offset() values for bare column errors on '*' and 'table.*' expressions in SELECT statements. (check-in: 118fe60087 user: drh tags: trunk) | |
16:55 | Extended the time-diff format so that it can have a 5-digit year. This enables time differences to span the full range of dates supported by SQLite. Also fix some inaccuracies in the computation of time differences and add new test cases. (check-in: d57ddbf4ee user: drh tags: trunk) | |
2023-06-12
| ||
18:22 | Initialize a local variable in FTS3 to avoid a GCC compiler warning. (check-in: 7ec4ab327d user: drh tags: trunk) | |
18:11 | Finish .parameter improvements. (no set <cast_op> anymore, not useful enough for its apparent complexity) (check-in: bbbdb864f0 user: larrybr tags: cli_extension) | |
14:26 | The decision was made to halt work on this enhancement. See the discussion beginning with forum post 4c8a673560d7999a. The changes on this branch work, but they add unnecessary user complexity with no corresponding benefit. (Closed-Leaf check-in: c8ef3b7874 user: drh tags: newbie-safe-aggregates) | |
13:49 | Fix a problem causing bloom filters to be used less efficiently than they might be. Problem reported by forum post 06c3f01da6. (check-in: 56d9bb7aa6 user: dan tags: trunk) | |
13:31 | Check-in [70e12efd1b189560] left a path through lockBtree() that failed to set the BTS_PAGESIZE_FIXED flag. That omission is fixed by this check-in. dbsqlfuzz 02c9ab74eb0619c9ae3b894ce157fae1d7f94645 (check-in: 30dcc872eb user: drh tags: trunk) | |
11:06 | Fix a buffer over-read that could occur as part of an fts5 secure-delete operation on a database containing corrupt fts5 records. dbsqlfuzz a463eac437783bcd246cc675b87842618a569cae (check-in: a35c50eca9 user: dan tags: trunk) | |
2023-06-11
| ||
22:05 | Merge the latest trunk enhancements into the newbie-safe-aggregates branch. (check-in: 75a877a923 user: drh tags: newbie-safe-aggregates) | |
21:58 | Make sure temporary sqlite3_value objects used by STAT4 are reset to NULL prior to being reused, to prevent a memory leak associated with the custom xDel string value destructor. dbsqlfuzz 65209ab5d5730e4fd14fff9d024325a77239036e. (check-in: 88be7075cd user: drh tags: trunk) | |
2023-06-10
| ||
19:33 | Defer setting the BTS_PAGESIZE_FIXED flag until after we are certain there are no errors and the page size has been set. (check-in: 70e12efd1b user: drh tags: trunk) | |
18:40 | Fix an assert that can go bad if STAT4 content is corrupt. This is a follow-up to the previous check-in. (check-in: ac1d3860af user: drh tags: trunk) | |
17:27 | Add documentation for SQLITE_DBCONFIG_STRICT_AGGREGATE. (check-in: 76fb915138 user: drh tags: newbie-safe-aggregates) | |
17:15 | Merge the latest trunk enhancements into the newbie-safe-aggregates branch. (check-in: e19e20fbaf user: drh tags: newbie-safe-aggregates) | |
17:05 | Extra space to prevent a buffer overread on corrupt STAT4 records. dbsqlfuzz 7128d1b41ce9df2c007f9c24c1e89e2f1b2590ca. (check-in: b99135288b user: drh tags: trunk) | |
10:37 | Enhance fuzzcheck so that it understand the sqlite3_db_config() and optimization settings from unused bits in the database header, which dbsqlfuzz is now using. (check-in: 918708c6de user: drh tags: trunk) | |
09:24 | Fix a potential UAF in the parser caused by the changes on this branch. (check-in: c29ec76944 user: drh tags: newbie-safe-aggregates) | |
08:19 | Add CFLAGS_FIDDLE to ext/wasm/fiddle.make as a way to pass on additional compilation flags to the fiddle build from the CLI, e.g. CFLAGS_FIDDLE=-DSQLITE_STRICT_AGGREGATE. Expose SQLITE_DBCONFIG_STRICT_AGGREGATE to JS. (check-in: 0b01720879 user: stephan tags: newbie-safe-aggregates) | |
2023-06-09
| ||
19:24 | Naming consistency: Always use the singular "STRICT AGGREGATE", not the plural. (check-in: 275d056e46 user: drh tags: newbie-safe-aggregates) | |
18:58 | Improved sqlite3_error_offset() values for bare column errors on '*' and 'table.*' expressions in SELECT statements. (check-in: 446ad162f7 user: drh tags: newbie-safe-aggregates) | |
18:30 | The -DSQLITE_STRICT_AGGREGATES compile-time option enables SQLITE_DBCONFIG_STRICT_AGGREGATE by default. (check-in: cd1f6b27d9 user: drh tags: newbie-safe-aggregates) | |
15:54 | Simplify a memcpy() in defragmentPage(). It now might copy more content than is strictly necessary, but runs faster and uses less code space. Possible reasons for the improved performance: (1) the copy is now always 8-byte aligned, (2) fewer intermediate results are required which means less register pressure which helps the compiler to optimize the subroutine. (check-in: 6e5607ae4d user: drh tags: trunk) | |
13:08 | Experimental change to add a per-connection option that raises an error if a bare column appears in an aggregate query. (check-in: f587891134 user: drh tags: newbie-safe-aggregates) | |
06:04 | More .parameter improvements, a WIP for ".parameter set <cast_op> ..." (check-in: 2b51dcdad8 user: larrybr tags: cli_extension) | |
01:11 | Sync w/trunk. Fix spelling nits. Add ".parameter edit ..." improvements. (check-in: d73f065b93 user: larrybr tags: cli_extension) | |
2023-06-08
| ||
20:49 | Remove SQLITE_EXTENSION_INIT macros from dbdata.c. (check-in: 106ec74576 user: dan tags: trunk) | |
16:19 | Improvements to the src-verify.c utility program so that it continues to muddle through a corrupt manifest file, making the most sense of it that it can and reporting "manifest" has having changed at the end. (check-in: 157b5d25e0 user: drh tags: trunk) | |
15:30 | Fix the amagamation generator so that it works one a clean source tree. (check-in: f502610d03 user: drh tags: trunk) | |
15:27 | Include source provenance in the header comment of the amalgamation. (check-in: e3eb5af905 user: drh tags: trunk) | |
12:52 | Enhance Lemon so that it remembers which -D command-line options are actually used in the grammar and includes a list of all such options in the header of the generated output file. (check-in: c47a4dbd24 user: drh tags: trunk) | |
2023-06-07
| ||
23:10 | Add spell-checking for all comments in main sources. (./src/ .c .h .in) make target "misspell" tells of misspelled words for which no exceptions have been put into tool/custom.txt . (check-in: 5332abf0ad user: larrybr tags: trunk) | |
17:03 | Fix straggler misspellings and tidy the custom dictionary. Also include pickups from forum post c61fb09afd. (Closed-Leaf check-in: 8c291d9994 user: larrybr tags: spell-check) | |
08:40 | Add a C-source spell-checking facility. make misspell (on Nix) (check-in: 26c1bb4bd9 user: larrybr tags: spell-check) | |