/ Timeline
Login

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

50 most recent check-ins

2023-10-02
13:35
Allow json_replace() to accept JSONB arguments as the new value. (Leaf 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(). (Leaf 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. (Leaf 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:dd42df144651d779|forum post dd42df144651d779]. (Leaf 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:dd42df144651d779|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:/forumpost/8922e2ad2ad41205|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)