stephan
|
6f92f35449
|
Merge trunk into jni-threading branch.
FossilOrigin-Name: 8254479c6ff1ea3cc9e56de1698db8405c03da90b9bf4c401182e47e0842baf8
|
2023-08-19 12:34:23 +00:00 |
|
stephan
|
bfa486d5fc
|
JNI doc additions.
FossilOrigin-Name: 0c7ac34f30e1f7e35a2ac4e5e55e5f24857b24afa81a7abecba60f1c9c68b9ff
|
2023-08-19 12:32:00 +00:00 |
|
stephan
|
187da43379
|
JNI test code cleanups.
FossilOrigin-Name: e202b6e69da8cced114d027cf2e91a04dfdd50b601b3274214783f7d750c558c
|
2023-08-19 11:52:36 +00:00 |
|
stephan
|
8d9179bd07
|
Minor JNI cleanups.
FossilOrigin-Name: 1cecb9e0383aa78c491f9ba88c831a88b4b2d40ceef1b87be494b6ddc0789e41
|
2023-08-19 11:26:52 +00:00 |
|
stephan
|
3cf6c0f276
|
Add multi-thread run mode to JNI Tester1. It works but hangs on exit sometimes for Java reasons as yet not understood.
FossilOrigin-Name: bdbaf7a4534f40e550b646979e67e7b7731566bb5a2631ed376ac85a9bec40a7
|
2023-08-19 10:43:05 +00:00 |
|
stephan
|
46d677e713
|
Replace JNI::NewStringUTF() for the remaining cases where output may be incompatible with MUTF-8. It is now only used when we know the output to be plain ASCII.
FossilOrigin-Name: 2d955eef25ab116c487ebc34c6f2d2836d310af239ef1993f5aeee5a3f68d590
|
2023-08-19 08:22:34 +00:00 |
|
drh
|
4d8eb16f07
|
Rename the decimal_sci() function to decimal_exp().
[forum:/forumpost/fa027bb0ab|Forum post fa027bb0ab].
FossilOrigin-Name: c48f1be8cc505a7e2902c79e26c1d9a121ff5c55785ac812d2e09232b2414695
|
2023-08-18 15:39:38 +00:00 |
|
stephan
|
383df02b16
|
Remove some obsolete JNI-internal docs.
FossilOrigin-Name: 00a2a3736a6dcde81d920815520040f3c47f965165e7128ca1f4062e6ec7c17c
|
2023-08-17 22:04:07 +00:00 |
|
dan
|
e15b35d5a6
|
Fix an error in documentation comments in fts5.h.
FossilOrigin-Name: 24d96bd65d8ccdd50a6f4fe217d196728a2f8658d128f9352c287f64e034104a
|
2023-08-17 16:59:35 +00:00 |
|
dan
|
fab6882fd6
|
Add extra test to fts5synonym2.test.
FossilOrigin-Name: 39ea11be3b35c5ecde9bc0fe66af673b8f440dc523422887d05a29feef036b01
|
2023-08-17 16:49:06 +00:00 |
|
stephan
|
6c5f96fc4d
|
Tighten up the JNI auto-ext handling.
FossilOrigin-Name: c09c8d05a20d916a9d9304eeea723ef7666a862a9e53f5feeeb1b03f9153d4b2
|
2023-08-17 13:13:22 +00:00 |
|
stephan
|
1dcb246988
|
Minor internal JNI cleanups and fixes.
FossilOrigin-Name: 0e9437de026cbfb333b90bb3400f1c015f85d49d73a25ad1000623216b88bfa0
|
2023-08-17 12:44:52 +00:00 |
|
stephan
|
0fa2545e7f
|
Remove the FIXME markers related to threading. Code style cleanups.
FossilOrigin-Name: 154ab26dc6ba2d1fd976e8fe6dc1b1a06c734f7e9a276a3edc5c2f30b0d6d36a
|
2023-08-17 10:49:06 +00:00 |
|
stephan
|
ff9ff54801
|
Cherrypick [00ac653562a6] to remove stray JNI debug output. No functional changes.
FossilOrigin-Name: e12d70f38c0ed5c0abf9a1e30ce4db59a4426e1e8cb1f8f07834fc1bedfcc65a
|
2023-08-15 21:44:22 +00:00 |
|
stephan
|
c131675401
|
Cherrypick [653ed92dc391] (went to wrong branch). Doc change only, no code changes.
FossilOrigin-Name: 79a14457f0067814e7c33de709e2f9e19ab880d3eebbcb6f9fcce52a4720ecac
|
2023-08-15 20:57:42 +00:00 |
|
dan
|
8c5611a169
|
Fix problems in fts5 test code.
FossilOrigin-Name: c16ed3b1cc7b4c21bfa96062bf9028ae071c89e63df3b444b59f1753594e4e94
|
2023-08-15 14:53:49 +00:00 |
|
stephan
|
6b51e35a9b
|
Minor reshaping of Tester1 moving towards making a multi-threaded run mode.
FossilOrigin-Name: f104c14c26c123ee78c09fc1bc59efb8668dc624da05c1d8dbeaf3c9dd02a393
|
2023-08-15 09:26:47 +00:00 |
|
stephan
|
9019e2e667
|
Bring handling of the Java auto-ext handler more in line with the core in terms of locking and mutability during traversal. This removes the explicit synchronous requirement from the Java open() and auto-ext bindings.
FossilOrigin-Name: 42994b952e092ae4fa319395208622e887387ca3ff8ac57961c824a6c272bf0e
|
2023-08-14 17:12:55 +00:00 |
|
stephan
|
7f2dea75ad
|
More work on the JNI-specific mutexes. Rework the NativePointerHolder cache lookup to be slightly simpler and O(1) instead of O(N).
FossilOrigin-Name: c84ded0e59aea4861d72b53b4b40cf580747c0f6ca58c334a996f1a825276cb5
|
2023-08-14 13:27:40 +00:00 |
|
stephan
|
d518e94adb
|
JNI-internal docs and removal of obsolete code.
FossilOrigin-Name: b62d93258b6a661f3a9b61468b3b641c14faf2d2196f78aca95fe14de43c9444
|
2023-08-14 08:28:46 +00:00 |
|
stephan
|
6a1ed4c811
|
Internal API renaming for clarity's sake.
FossilOrigin-Name: 911e4fc5aaf9478214095a65f74af3ebca883922c36cf7a8d911116c42cf9de8
|
2023-08-13 20:58:12 +00:00 |
|
stephan
|
88381e53fc
|
Add a mutex for auto-extensions, tied in to the open() process since that's the route into auto-extensions.
FossilOrigin-Name: 8da97e0db4eeacf91aa6fd909fd7cb73b050d194dfc7739a502b55f7eca6d7b1
|
2023-08-13 12:40:27 +00:00 |
|
stephan
|
4b4a911c5f
|
Add some docs and metrics for the new mutex internals.
FossilOrigin-Name: 33d1780b43182d2574adbc1928707af825c485c99762738e58bc6d7c6c52ac6a
|
2023-08-13 10:28:35 +00:00 |
|
stephan
|
8a6888c19e
|
Remove SQLITE_DEBUG from JNI build.
FossilOrigin-Name: 82f004cf7408c503c5787b46c7b13ceb0a20a3ad1d4f69d56127772c40e214a1
|
2023-08-13 10:22:15 +00:00 |
|
stephan
|
71e5694cd5
|
An initial attempt at protecting the JNI global state via mutexes at the C level instead of relying on Java's synchronized keyword. It seems to work but increases the run time of the single-threaded batch tester by roughly 3 times.
FossilOrigin-Name: c64e6a52ac79164be37fe643a4a39bd187af198a379410def8b8419f7c2224d4
|
2023-08-13 09:53:27 +00:00 |
|
stephan
|
0c07549fd6
|
Bind sqlite3_interrupt() and sqlite3_is_interrupted() to JNI but with caveats regarding mutexing of the JNIEnv cache. Add a loud warning to the JNI 'dist' target that it should be built with JDK8 (a.k.a. Java 1.8) for compatibility reasons.
FossilOrigin-Name: fbf99a2423dd20e4544bdeea85f714e9368ce3b92fefe97efb39a0fb4a557abe
|
2023-08-12 23:47:58 +00:00 |
|
stephan
|
202651fe86
|
Merge the Java Native Interface (JNI) binding into trunk.
FossilOrigin-Name: 48b13edcec6935bf125b265b41a3e6f7b2407afff89d5b4daa2939e3c5679ca0
|
2023-08-12 21:39:18 +00:00 |
|
stephan
|
54402964b0
|
Update wasm's push-testing rule to exclude files which were recently removed from the build.
FossilOrigin-Name: 0a6930a7ff8f8c6ca244d1d654532f3d2a02d77ef67c6cae0c53092743d59ea6
|
2023-08-12 21:08:41 +00:00 |
|
stephan
|
d8a94dbb36
|
Correct JNI .jar rules to only include *.java/class files, not *.* (*~ files).
FossilOrigin-Name: 1ba7754045a009d9c94b23ac76b9bb8d9c9cb24d42dcdf1203ee75ac85765d3e
|
2023-08-12 20:50:29 +00:00 |
|
stephan
|
68522e1627
|
More JNI docs.
FossilOrigin-Name: 290028d3ca5638f3bb18a0b243c7ba3c31c8a2b1a837c36ec29e0fc4ed6533f0
|
2023-08-12 15:37:53 +00:00 |
|
stephan
|
5b3a754360
|
Further simplifications in the interface of the OutputPointer family of Java classes.
FossilOrigin-Name: 962c3e0de2d64ab8a2bcf1a19f9c4224df3d15a41ac9f9b29da685be95c4ef7a
|
2023-08-12 15:09:09 +00:00 |
|
stephan
|
c216df75c6
|
Tweaks and docs for the OutputPointer family of Java classes.
FossilOrigin-Name: 265c8fd0d4d425054f6bf7e9cb607ad2e0e46189f16c3014f7fdf9b650085497
|
2023-08-12 10:39:26 +00:00 |
|
stephan
|
613390680d
|
Bind sqlite3_db_status() to JNI.
FossilOrigin-Name: b79477a0af94127b0638a8822de01156bef855a7e167f678809e1c978e1a0c3e
|
2023-08-12 10:27:08 +00:00 |
|
stephan
|
238bea2ae6
|
Bind sqlite3_status(64)() to JNI.
FossilOrigin-Name: cefb6614e65ca1764ec72702f92f801382e63aa9b221fc9c68719d497e7499fd
|
2023-08-12 10:06:59 +00:00 |
|
stephan
|
48dcdd3b74
|
Add timing info to SQLTester.
FossilOrigin-Name: b69b5facbf94e03e74d4a739ab85c5baac1c9ecbea8c330b2135d77e525b5d8a
|
2023-08-11 21:25:33 +00:00 |
|
stephan
|
a6746456d9
|
Merge trunk into jni branch.
FossilOrigin-Name: 4f0aeeba0287e846908180eab6f7080ebe1323ebe49340771864d110e1ca5b2b
|
2023-08-11 21:24:08 +00:00 |
|
stephan
|
783f5b5aa2
|
Fix a makefile deps problem which caused ext/jni build to fail if sqlite3.c/h were not created beforehand.
FossilOrigin-Name: 101de670774f63757180282763730aa53e70198bd7a674c27e6044632d39d22a
|
2023-08-11 20:32:40 +00:00 |
|
stephan
|
16c8c96745
|
Minor SQLTester test tweaks and have 'make tester' include the out-of-tree tests if they are found.
FossilOrigin-Name: 6c8538d83495ce65dbd7417263b3b06dbbb2a649e9a61a743911944599d75ffc
|
2023-08-11 18:59:57 +00:00 |
|
stephan
|
7009c43eaf
|
Bind sqlite3_sql() and sqlite3_expanded_sql() to JNI. Start marking C-side functions which would need explicit mutex support if we remove 'synchronized' from their Java entry points (but there are many more left to mark).
FossilOrigin-Name: c7fb32d1ef30d34449c3289c384ce33317c770927534af20d4b96fa385da40bc
|
2023-08-11 18:04:53 +00:00 |
|
stephan
|
c3b7e1c4e8
|
Add a doc link for the new sqlite3_js_posix_create_file().
FossilOrigin-Name: 0d7aac45b8e7078cc80757e12d6f0b2584f2b0b184dacc2348ad3519978e5bf9
|
2023-08-11 17:45:23 +00:00 |
|
stephan
|
b949244ea1
|
Add sqlite3.capi.sqlite3_js_posix_create_file() and oo1.OpfsDb.importDb() as alternatives for the newly-deprecated sqlite3_js_vfs_create_file().
FossilOrigin-Name: da6eaf8d8258f3e2c8633fd7faf4e90c3307b5c60bd8b69c626b3c82b19dbdef
|
2023-08-11 17:38:17 +00:00 |
|
stephan
|
7e13152952
|
Deprecate sqlite3_js_vfs_create_file() because, it was discovered today, its out-of-scope use of the sqlite3_vfs, sqlite3_file, and sqlite3_io_methods APIs triggers unresolvable assertions in the core when built with SQLITE_DEBUG.
FossilOrigin-Name: f3647a3ac8eca8c821b0b1e403da7bfb0feabd0eb5ee83709cd4956dfc56a492
|
2023-08-11 14:31:20 +00:00 |
|
stephan
|
a0423e0fc1
|
Mark _all_ JNI binding funcs as synchronized so that Java can lock them and protect our global-state access. The alternative is writing a mountain of C-side code to do the same thing.
FossilOrigin-Name: afe190a940441de9bef8835c2dc6d278f861a772c3b7c7a2d399b2eabd4872e3
|
2023-08-10 21:50:52 +00:00 |
|
stephan
|
5c9f5e4022
|
Work around jdk8 and jdk19 mangling the C name of sqlite3_db_config() differently. Correct the variadic arg handling of the JNI-side subset of sqlite3_db_config() options.
FossilOrigin-Name: 746894c3c043c47f8b4c231de8921df81c5d0634260d299359bea73132dc7867
|
2023-08-10 21:29:59 +00:00 |
|
stephan
|
0c08c8c208
|
Add a working dist zip file for the JNI bits.
FossilOrigin-Name: d6a4d212ceba662470d8957b6a8d7075d18a84bd0d3e13ce7adcab03604fc3b7
|
2023-08-10 20:52:14 +00:00 |
|
stephan
|
a52b8c8845
|
Initial pass at 'make dist' rules for the JNI bundle, but they still need a bare-bones, posix-make-compatible makefile to include in the bundle.
FossilOrigin-Name: ff54e66a4d43f2f0f8b25ded970779e6760865a05346e09b39607bb035b02bd7
|
2023-08-10 18:57:37 +00:00 |
|
stephan
|
2ee01b0c9a
|
Merge trunk into jni branch for the newly-relocated version-info tool.
FossilOrigin-Name: cc8e8cba67c0dcfb9b416041a19456cf5248d909f3efb6fee707a5950be4f374
|
2023-08-10 17:39:26 +00:00 |
|
stephan
|
bb51af68f4
|
Move ext/wasm/version-info.c to tool/ for re-use in build other dist bundles.
FossilOrigin-Name: 4b0871fd367b6d9706e892aa13f64604967f5e3ba92381960f73aeabd3d23f84
|
2023-08-10 17:32:37 +00:00 |
|
stephan
|
a22a2d266f
|
Add SQLTester --keep-going flag to allow it to continue to the next script after an error.
FossilOrigin-Name: 4d635f781b55ed9011bdf07ee6bed2d004b1c2ebba76aa110e26d8fe3152a733
|
2023-08-10 16:42:22 +00:00 |
|
stephan
|
92f699d384
|
Document that auto-extensions registered via JNI will fail if they open a db (to avoid triggering an endless loop in the auto-extensions). Discover the hard way that JDKv19 creates different mangled JNI names for some functions than JDKv8. Start reformatting much of the JNI API decls in prep for making them even longer.
FossilOrigin-Name: 99c0941f1c006622932a9cca12661f354f363a6c8a2b5675ea66149e0a9eb927
|
2023-08-10 13:10:25 +00:00 |
|