Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
525 check-ins using file src/date.c version 3b8d02977d
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) | |
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) | |
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
| ||
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) | |
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) | |
2024-06-04
| ||
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) | |
2024-05-15
| ||
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) | |
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) | |
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-04-15
| ||
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: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
| ||
16:52 | Adjustment to EQP output in one test case. (check-in: 08dd2b927b user: drh tags: branch-3.45) | |
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) | |
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) | |
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
| ||
15:18 | Avoid some performance problems in the recover extension when recovering strategically corrupted databases. (check-in: d83b0ffe8b user: dan tags: branch-3.45) | |
14:07 | Ignore CHECK constraints when qualifying the xfer optimization while running VACUUM. (check-in: bb6f990809 user: drh tags: branch-3.45) | |
2024-04-05
| ||
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) | |
2024-04-04
| ||
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) | |
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) | |
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) | |
2024-03-21
| ||
22:12 | Fix a assert() that is incorrect, though harmless. Also add a test case. (check-in: 90537ce044 user: drh tags: branch-3.45) | |
2024-03-19
| ||
10:58 | Fix a problem involving infinities int the Kahan-Babushka-Neumaier summation algorithm. (check-in: 8af5878138 user: drh tags: branch-3.45) | |
2024-03-12
| ||
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) | |
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) | |
2024-03-09
| ||
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
| ||
14:11 | Silently ignore redundant ON CONFLICT clauses in an UPSERT. (check-in: 46245855a0 user: drh tags: branch-3.45) | |
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) | |
2024-03-05
| ||
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) | |
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) | |
2024-02-17
| ||
03:36 | Fix rounding in zero-precision %f and %g printf conversions. (check-in: 1ebea57ff2 user: drh tags: branch-3.45) | |
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) | |
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) | |
2024-02-12
| ||
17:01 | Have rtree avoid keeping a blob handle open following an error. (check-in: 26978f34bd user: drh tags: branch-3.45) | |
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) | |
2024-02-10
| ||
03:12 | Further clarify sqlite3_exec() callback parameter lifetime. (check-in: 044ce823a4 user: larrybr tags: branch-3.45) | |
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) | |
2024-02-07
| ||
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) | |
2024-02-06
| ||
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) | |
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) | |
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) | |
16:49 | Avoid a potential buffer overread when handling corrupt json blobs. (check-in: ac402cc551 user: drh tags: branch-3.45) | |
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) | |
2024-01-28
| ||
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) | |
00:35 | Apply the same fix found in [99057383acc8f920] to descending scans. (check-in: 593d6a1c2e user: drh tags: branch-3.45) | |
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) | |
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) | |
15:04 | Fix harmless "unused parameter" compiler warning in the new fts3IntegrityMethod implementation. (check-in: 9d459f6b50 user: drh tags: branch-3.45) | |
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) | |
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-20
| ||
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) | |
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
| ||
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: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) | |
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
| ||
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: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: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) | |
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: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) | |
2023-11-23
| ||
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) | |
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: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) | |
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: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: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: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) | |
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-18
| ||
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) | |
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:10 | Work toward getting jsonb_remove() to work directly on JSONB blobs. (check-in: a79ff8e58f user: drh tags: jsonb-remove) | |
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: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) | |
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) | |
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
| ||
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: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: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) | |
2023-11-09
| ||
17:53 | Expose SQLITE_RESULT_SUBTYPE to wasm. (check-in: 6d2fe9848b user: stephan tags: trunk) | |
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: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: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) | |
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) | |
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) | |
2023-11-05
| ||
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: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) | |