stephan
|
1a2563a950
|
Doc cleanups.
FossilOrigin-Name: 5f56b007704f2aad4cbc6f0ccd1e1f1c974865971f99451352714ee7e077c284
|
2023-08-06 15:01:38 +00:00 |
|
stephan
|
5558624b43
|
Bind sqlite3_config() to JNI for call variants taking (int,int*) and (int,const char *) variadic arguments.
FossilOrigin-Name: 6119289da85ac0c83e2a7236d24bbfff22334d6cf1d852756dc658ad6a75dfec
|
2023-08-06 14:19:09 +00:00 |
|
stephan
|
9c4c16c80d
|
JNI-internal cleanups and API renaming. Add a C-side java-string-to-utf8 conversion.
FossilOrigin-Name: 672d85795d04131135b1dc6a02d64eceb8b5084217c17766afeca4af23c07ec4
|
2023-08-06 13:02:43 +00:00 |
|
stephan
|
6a9364a518
|
Remove doc outdated warning about sqlite3_trace_v2() JNI binding being incompatible with MUTF-8. Use new to-string capability to simplify Fts5ExtensionApi::xColumnText() JNI binding.
FossilOrigin-Name: ebcfc2379be12f76a96f3605b734f406b3354d4c985062cdbfca0cf7e3f31379
|
2023-08-06 11:05:17 +00:00 |
|
stephan
|
57645b67fa
|
Add a way to convert from standard UTF-8 to a Java string (JNI lacks this capability).
FossilOrigin-Name: 07dd082c9e371829a18aeb574f842891e545e1fc125760238ede7e7e2b6a4262
|
2023-08-06 10:49:47 +00:00 |
|
stephan
|
1bce6b468e
|
Bind sqlite3_db_filename() and (closely related) (A) add many more docs about the UTF-8/MUTF-8 discrepancy (B) start adding internals to enable us to perform the standard-UTF-8-to-Java conversion from C.
FossilOrigin-Name: 586720fa714ac74491cd85d0c6645242e55e5989ad312ef6e15e0b0acc6906ff
|
2023-08-06 10:14:53 +00:00 |
|
stephan
|
153288dc89
|
Bind sqlite3_set_authorizer() to JNI.
FossilOrigin-Name: e0fa03135942cd2fe732a74510d380ba78ab230c452168e638f32b4aee04b3f7
|
2023-08-05 22:41:36 +00:00 |
|
stephan
|
28e95830ad
|
Refactor the per-JNIEnv cache from a fixed-size static array to a linked list of dynamically-allocated entries. Uncache all per-db state (which is necessarily JNIEnv-specific) when the corresponding JNIEnv is uncached.
FossilOrigin-Name: 9dd8b78419e19e88bc3fbff9bf200390b146b2461af2bb6b93d8467036619e33
|
2023-08-05 21:35:58 +00:00 |
|
stephan
|
67214a9594
|
Add SQLite3Jni.uncacheJniEnv(), a way for Java threads to clear their thread-specific cached state from the JNI bindings when they're about to terminate (or are otherwise done using the library).
FossilOrigin-Name: 7468f8761bece58f7ced3d112bbe2fb454432d9c54c9b96cedb5a15bc2926d0f
|
2023-08-05 20:19:45 +00:00 |
|
stephan
|
27cb7d6a1d
|
In the JNI docs, note that the sizeof SQLITE_TRANSIENT and SQLITE_STATIC should ideally be the same as the platform's pointer size.
FossilOrigin-Name: 7d4ac44ec419ed0474bdb9d237b97660cf0d8faba8fe686f6a914d7bc04dfa3b
|
2023-08-05 19:20:15 +00:00 |
|
stephan
|
fdeb2c8121
|
JNI internal refactoring and cleanups.
FossilOrigin-Name: 7397973a2f191d75b149cf73a6d7ee1798820c1cd37d83af14e565067ede1b04
|
2023-08-05 12:48:33 +00:00 |
|
stephan
|
695d0b698a
|
Bind Fts5ExtensionApi::xUserData() to JNI and extend xCreateFunction() to accept that argument. In test code, use assert() instead of exceptions if assert() is enabled so that test failures (exceptions) thrown via callbacks do not get suppressed (which they otherwise necessarily are to avoid crashing the host app).
FossilOrigin-Name: e43837377696e468cd31cf71585fe235ffe67a9f4d3b036c5f9d0cb7141d0f57
|
2023-08-05 11:16:54 +00:00 |
|
stephan
|
4f07be39b7
|
Add missing Fts5PhraseIter.java to the build.
FossilOrigin-Name: 96281ad0d5b2f020622c4f85f8694886e6a29fb43e1fbeb2a346ed2e94f109fb
|
2023-08-05 04:30:31 +00:00 |
|
stephan
|
ec71e555c4
|
Bind fts5_api::xCreateFunction() to JNI and demonstrate it with a test.
FossilOrigin-Name: c653bf16cbdccae05ab14059b140191afd5c17740fb78d756d8822986e54b17c
|
2023-08-05 04:23:27 +00:00 |
|
stephan
|
977b6919f2
|
Start adding fts5_api to JNI.
FossilOrigin-Name: 14d18fe983c83412d72fd2005a45a2b8c48d347b7bbf8ef9630ae460cff85c32
|
2023-08-05 01:28:30 +00:00 |
|
stephan
|
0c179dd5b4
|
Bind the remaining Fts5ExtensionApi methods to JNI, noting that all are completely untested because the higher-level bits needed to do so are still missing.
FossilOrigin-Name: 23383c1dfd240ce47f504dd5c3402c9a31f166fbde5bb72d91309a5655074b33
|
2023-08-05 00:40:28 +00:00 |
|
stephan
|
195611d8e6
|
In the opfs-sahpool VFS's importDb() and exportFile() methods, throw if the actually-wrote/read amounts differ from the expected-to-write/read amounts, per feedback in [forum:a4122e986f|forum post a4122e986f].
FossilOrigin-Name: a617ebf4e5d1af1b5b15e9782ad111399caaa3ea7b99bb0c8691c8b4283b6d6e
|
2023-08-04 16:01:55 +00:00 |
|
stephan
|
cc8202b646
|
More work on the JNI binding of fts5 customization (still a long ways to go).
FossilOrigin-Name: 1a246fd21657f5bb13eeacc4059894ab787ea9a3c45bd9bdd3030a66643d2fef
|
2023-08-04 15:38:59 +00:00 |
|
stephan
|
c7795cfd47
|
Eliminate code duplication in the two JNI tester classes.
FossilOrigin-Name: 63e7bbe3d5fcfb531f9d7fa88398c1191570e69b5d11adcb9c5e64b8345b4e6c
|
2023-08-04 13:27:45 +00:00 |
|
stephan
|
5e208f712f
|
FTS-related JNI refactoring. Move FTS-specific tests into their own class and dynamically load it, if possible, from the main test app.
FossilOrigin-Name: b7a8428fcd969e7a29a23c2dae61883f69501094f2de0f79bbee3c02c672cbf5
|
2023-08-04 13:03:31 +00:00 |
|
stephan
|
b15223bce6
|
More work towards binding FTS5 customization to JNI. Add Fts*.java files missing from previous checkin.
FossilOrigin-Name: 91263178f463ca4623dd0203696eff6bcfd68abde5d2471be3f5a3edd791c52a
|
2023-08-04 12:44:06 +00:00 |
|
dan
|
b383744835
|
Change comment on Fts5ExtensionApi.iVersion from "always set to 3" to "always set to 2".
FossilOrigin-Name: b7de399c277394a6a3bbf253d4177aa82753271e5087b98b2c2268f629a7dfdd
|
2023-08-04 11:10:10 +00:00 |
|
stephan
|
c0952c11a7
|
Start including fts5 customization bits into JNI, but it's far from functional.
FossilOrigin-Name: abaf5edd0430e3301a11bd0acb9ce4b81b310237e1799701411db56ef7605e01
|
2023-08-04 11:08:25 +00:00 |
|
stephan
|
e133a0ec05
|
Improve internal error handling in the JNI create_function() impl.
FossilOrigin-Name: 2c88390faa108a60c8fb1eb7aad05d90f3daf4cfef14ca73987597aaf7be83c9
|
2023-08-04 09:53:13 +00:00 |
|
stephan
|
a24769454e
|
Resolve the timing/ordering issue of a JS-to-WASM-converted xDestroy() function being uninstalled from WASM right before the underlying native call tries to call it. This has been a long-unnoticed bug which appears only when removing such functions or replacing them.
FossilOrigin-Name: 031c9a76b6ad1572e7a88f4d2d62f206b0d37bd1170e2c8a24248c5ec628f2f5
|
2023-08-04 08:45:25 +00:00 |
|
stephan
|
444424dab8
|
Part 2 of the fix from [a0f808363318c00fd1db78b].
FossilOrigin-Name: 5c3104228d75c8fafbe24e46623777f3a8647f1b50267af61d46f7fad0e0434e
|
2023-08-04 08:41:55 +00:00 |
|
stephan
|
e98fa205f8
|
Fix a discrepancy between sqlite3_values_to_js() and its API docs/intended behavior.
FossilOrigin-Name: 7b85c68fe252c0aa69724c82a95a4432e33ebdfb879b4b1b2ee2f9b98e9b792a
|
2023-08-03 16:22:59 +00:00 |
|
stephan
|
ed86e0a0a7
|
More JNI-internal docs. Correct handling of a Java exception if a trace callback throws.
FossilOrigin-Name: 306b269a01037bc5c98276276fdb17b37027d1ee0d603183f42a65966245bdff
|
2023-08-02 17:29:18 +00:00 |
|
stephan
|
decc1425a3
|
Internal doc additions in the JNI bits.
FossilOrigin-Name: b56643644e065b03fe2c3545e02ed3b2f6fd9f77c39aa84a02a00d695e9a12dc
|
2023-08-02 17:20:52 +00:00 |
|
stephan
|
2877c43e6c
|
Filter the wasmfs-specific JS module result type check out of non-wasmfs builds.
FossilOrigin-Name: ef7c121049f77200ecc4da260a90776264af0e84122d0133b4986959aedc653a
|
2023-08-01 16:41:12 +00:00 |
|
stephan
|
887f6e5082
|
Fix part 2 of 2 for /fiddle: a make deps problem which caused fiddle to load but fail to run when sqlite3.c was missing.
FossilOrigin-Name: 6011bc26764760af750de68f1553f45382766dd2195633ae267bdb4f9ac75d0f
|
2023-08-01 16:38:08 +00:00 |
|
stephan
|
a08d363f67
|
Fix part 1 of 2 for /fiddle not running: build flags which were renamed during refactoring.
FossilOrigin-Name: 214ffeeff77997c3352d30aaa6e51e2dea9706f0d08f73f4eacfad1864817fc6
|
2023-08-01 16:17:00 +00:00 |
|
dan
|
c1a07d3bab
|
Fix an assert() in fts5_index.c that might fail when dealing with corrupt records.
FossilOrigin-Name: aa55c83f35c2ab134e0842201e46e021079283f9c65595c86664060b3aa8d715
|
2023-08-01 11:03:06 +00:00 |
|
stephan
|
ed77e13f05
|
More docs for the Java side of the JNI bindings.
FossilOrigin-Name: d8e9bcee96b90d56701f7907a8bd48853211caf757e1aa8decc7ed25eece6770
|
2023-08-01 10:19:05 +00:00 |
|
stephan
|
e209d144c3
|
Internal exception-handling cleanups in the JNI bindings.
FossilOrigin-Name: 057b1d4f6ffff73c120566895f61ea3fd8118968464d67ec9262096a7aa03f39
|
2023-08-01 09:44:26 +00:00 |
|
stephan
|
0bc72d2b91
|
Minor JNI-related doc tweaks and code re-ordering.
FossilOrigin-Name: b663b27e425966f34fb62482a18048f0e2934380e5c411ae3627f1fe6a765c04
|
2023-08-01 08:48:13 +00:00 |
|
stephan
|
db6f0bef91
|
Experimentally change the JNI sqlite3_trace_v2() callback type to have more convenient access to the current Java-side sqlite3_stmt at the cost of some uncomfortably fiddly current-statement tracking in the JNI layer. Subject to change.
FossilOrigin-Name: 459db332af6ea358b42bac096b9d26f1045b9ec32fad8463bca06807b2396b2c
|
2023-07-31 13:52:46 +00:00 |
|
stephan
|
e3e9bdcd0b
|
Add some JNI-internal metrics, accessible via passing -v when running Tester1.java. Document an OpenJDK bug which leads to incorrect -Xlint:jni warnings.
FossilOrigin-Name: a5d68a6b64abe3c2dfc3a32157f70fd8a4ad89feef2510b3bbb2d86b325d51ae
|
2023-07-31 12:10:32 +00:00 |
|
stephan
|
8f714e21a0
|
Correct a mis-cast in the JNI wrapper which just happened to accidentally work. Update JNI binding of sqlite3_context_db_handle() to return the bound-at-open() db instance instead of a new/temp proxy object.
FossilOrigin-Name: 9faca5d9ed4a749421e08bd1da8b7672c0fd31366124fdb613c46e19dece0fc1
|
2023-07-31 10:55:30 +00:00 |
|
stephan
|
ede8900912
|
Add another test for JNI-bound scalar UDFs.
FossilOrigin-Name: 8b322d92e247be606f83977767dc361ee4f7bc819122a630bdaa1110177db9b8
|
2023-07-31 10:42:05 +00:00 |
|
stephan
|
e2e696d11f
|
Update some internal docs for the past two checkins. Add a way to dump out some debug info about the current JNI environment.
FossilOrigin-Name: ac9b8bb1e64450d980e2986084996549ae5c59e68c9f0c4c69539c239b64468b
|
2023-07-31 10:22:34 +00:00 |
|
stephan
|
452108b4fc
|
Refactor the busy-handler-specific JNI hook type to use the generic hook type.
FossilOrigin-Name: d9efdc6dd20a34bfdaad5d4bf8e67cce7e35238299eb91e4459d59fda11978a6
|
2023-07-31 10:08:36 +00:00 |
|
stephan
|
46c46e400a
|
Refactor the collation-specific JNI hook type to use the generic hook type.
FossilOrigin-Name: 02c1d3b6501fedf3d6e6d1ca60699df268522182c5ba3b49ae8f4691499ef0fc
|
2023-07-31 09:45:49 +00:00 |
|
stephan
|
41a7ac637a
|
Internal JNI doc tweaks.
FossilOrigin-Name: f4aa2c82882cb6be1fd52977de19fd03c2e38abb857b520f951b32d610972ab6
|
2023-07-31 09:28:15 +00:00 |
|
stephan
|
9c1c6da930
|
Consolidate triplicated xDestroy()-calling code. Remove some unnecessary casts.
FossilOrigin-Name: 24c0763d0e025187c74002ffee11fd48d3cd7b40e01469d28484bb67f701884b
|
2023-07-31 07:15:25 +00:00 |
|
stephan
|
09947d0aad
|
Internal JNI API renaming.
FossilOrigin-Name: fcfc070673cef2f657f4737f096678439ed7c011fb2e5391e0721f82f5d8af51
|
2023-07-30 18:41:25 +00:00 |
|
stephan
|
91710673e7
|
Internal JNI refactoring towards consolidating support for callbacks with and without finalizers.
FossilOrigin-Name: 120983a570d6de055cef9d916096de3410897ea9f46d23ea6eff1f9b549e423a
|
2023-07-30 17:24:01 +00:00 |
|
stephan
|
72bb29283f
|
Mark the Java wrapper classes of the C-native types as 'final' (cannot be subclassed).
FossilOrigin-Name: 4fd3d93623d67c25fb8a490e0d4ea56d531d858067011ab1b28cce694098feff
|
2023-07-30 13:47:51 +00:00 |
|
stephan
|
13b059025f
|
Minor tweaks and optimizations in the JNI bindings.
FossilOrigin-Name: 41fb5898f1a78d9fd85a020e28a6048a7359b54e35632e9072917cbdbcd8b07d
|
2023-07-30 13:30:52 +00:00 |
|
stephan
|
502a5c2e26
|
Bind sqlite3_collation_needed() to JNI. Related adjacent cleanups and fixes.
FossilOrigin-Name: 16ff167691733350907d2d995c774a885214acd0fe8ec491c16b786f00fe85d4
|
2023-07-30 11:36:41 +00:00 |
|