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
|
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 |
|
stephan
|
1528014703
|
Resolve two assertions in the auto-extension JNI which were triggered via new SQLTester infrastructure. Move SQLTester's db-init SQL injection into an auto-extension.
FossilOrigin-Name: 2952906c30bc2b7987f2c39837d56bd121f5817dc094e6ccdb6d4eea5e9b8d17
|
2023-08-10 12:36:40 +00:00 |
|
stephan
|
61186d1243
|
Make test completion status more visible at a glance on modern terminals.
FossilOrigin-Name: a4e96c306c4c270f417243e7923d7e6c4f860528dd67990dfd8d9768a6c4873f
|
2023-08-10 11:15:20 +00:00 |
|
stephan
|
e51fae4134
|
Disable REQUIRED_PROPERTIES handling in SQLTester, per /chat. Scripts with that directive are now skipped.
FossilOrigin-Name: ddc534cb25b59faf18a860a51f2dd41a1a73963aeb541b9553301fe784608393
|
2023-08-10 11:04:46 +00:00 |
|
stephan
|
0a8cc1f634
|
Add a visual indicator (emoji) to TestScript verbose messages, dependent on the message's level of verbosity.
FossilOrigin-Name: dc323d3894f2d53470cd8be261632267fa3d2af73500acfa1e9adbfa53b771fd
|
2023-08-10 10:58:55 +00:00 |
|
stephan
|
34fac74362
|
Add the current --testcase name to SQLTester --verbose output.
FossilOrigin-Name: f87367402b25adf30f35ab75aa5efc495230d4a83f2fc10b99734c3f3f593840
|
2023-08-10 10:44:53 +00:00 |
|
stephan
|
ec8298fbd1
|
More SQLTester docs. Add --verbosity command to help zoom in on script areas while debugging. Spice up test-start/end output with some emoji.
FossilOrigin-Name: 8dd08021496f504c23945ecc2bbe1e4a13109fdd03457ca6269b4cb1cc4cd04c
|
2023-08-10 10:34:50 +00:00 |
|
stephan
|
63fb588d30
|
Give DbException the option of closing the db to simplify error handling in one case.
FossilOrigin-Name: 908c9a44505422a3a15bef3a174d8b931863bc9c74485311a0e62cfec30087bd
|
2023-08-10 05:25:13 +00:00 |
|
stephan
|
6a61a19f9a
|
Initial version of REQUIRED_PROPERTIES support for SQLTester, with TEMPSTORE_(FILE/MEM) and RECURSIVE_TRIGGERS options.
FossilOrigin-Name: 48d16c9d2fe5f54b09004b4f09759c4e2ad247ae84130feb557951e32f48976a
|
2023-08-10 05:14:22 +00:00 |
|
stephan
|
f703dfa381
|
Generic cleanups and fixes in SQLTester.
FossilOrigin-Name: fc5d3cc30d2b96da42ea10dfb39f1631ff93b8384514fffd641b343df51da2a6
|
2023-08-10 04:24:12 +00:00 |
|
stephan
|
eda67031de
|
Change the SQLite3Jni API annotations to use SOURCE retention (used only at compile-time).
FossilOrigin-Name: 3c3fea6bf284721ac376e2ab5a757cf30245dd39264aaf98a8d6cd5575484275
|
2023-08-10 02:09:12 +00:00 |
|
stephan
|
0c6df29cba
|
Move all of the SQLTester code into a single file, since it's only got 1 public class. Remove 'public' from many methods which don't need it. Add more documentation to it.
FossilOrigin-Name: 2815d676951abdab674c374fd903486ea5796f8ee4cb338d41f19693419f8471
|
2023-08-10 01:44:48 +00:00 |
|
stephan
|
2a91065145
|
Defer static JNI-side init of SQLTester until main() is called so that its auto-extensions do not leak over to clients of the main library.
FossilOrigin-Name: e461fdd53bd3212bee24ec5f5d5c234011ab30f3f67e115de9f85fdb760e3848
|
2023-08-10 01:19:40 +00:00 |
|
stephan
|
58c2ca4483
|
Merge trunk into jni branch.
FossilOrigin-Name: 52fa6f78414c41073431c166550806bb8a835bd38cfc1236c9363784c78b81b9
|
2023-08-10 01:05:28 +00:00 |
|
stephan
|
50a17a1b3a
|
Treat all args to --glob as a single glob.
FossilOrigin-Name: 4737bd345732e34cabbf90821e007d3027e68d6583c2e05e1e8bf5920373a6dc
|
2023-08-10 01:03:19 +00:00 |
|
stephan
|
3a0e45d0af
|
Remove --print's ability to read ahead.
FossilOrigin-Name: 15cfee972bcbd857d18ea626c9a9da64b2a445516946f3dd83c75a4f6b8a92fa
|
2023-08-10 00:58:48 +00:00 |
|
stephan
|
84c1a7b49f
|
Replace the SQLTester infrastructure with a line-oriented, non-regex-heavy parser. Add --column-names command.
FossilOrigin-Name: 88863908ee2059c2d18a095cbd91f41674c7b0d0a8864ec21715a5317054df4d
|
2023-08-10 00:34:38 +00:00 |
|
stephan
|
e35a703b76
|
Port the SQLTester 'v1' commands to the 'v2' evaluation bits. Still TODO is swapping out v1 with these separate impls.
FossilOrigin-Name: 0cf57e5b0f90779e450e9db1ca009610df5e6f4487337d49017636bde3bb02d6
|
2023-08-09 23:47:14 +00:00 |
|
stephan
|
35af4c5ff1
|
Correct REQUIRED_PROPERTIES handling to not fail if there are no properties.
FossilOrigin-Name: 7a19bef4f572a90fb7896b9360f9c72b052955ca9b0549be870b2b245c1f1b2b
|
2023-08-09 22:30:10 +00:00 |
|
stephan
|
bef0369ff4
|
More for the SQLTester rework. Can read input and dispatch commands, but only --print is currently implemented.
FossilOrigin-Name: 4fa2ad33edbcef393dd98dbf90586ad8f32ec0beab02f197c8038a44be86c314
|
2023-08-09 22:18:22 +00:00 |
|
stephan
|
e41c09ac8c
|
Initial sketches of a line-by-line parser for SQLTester to overcome its compatibility shortcomings. Far from complete.
FossilOrigin-Name: 43534cd042499c1bef44ca5c4a8305a710d99e70e8b0adce6df50c6a1f0402b9
|
2023-08-09 19:51:39 +00:00 |
|
stephan
|
e0fb44090b
|
Adapt TestScript to skip REQUIRED_PROPERTIES, per [7a07863e082664da], and improve a couple of adject reasons-for-skipping messages.
FossilOrigin-Name: f937097e9b22a6c78c242cbf00c71bdc57f04b1b9a15ae24058bc2813c99688c
|
2023-08-09 18:25:50 +00:00 |
|
drh
|
7f66a3eeb2
|
Add an extra constraint to the test-script-interpreter.md spec.
FossilOrigin-Name: 7a07863e082664da2efcf4ecd36785d2583abbda12526cdb643cf1aa0568292e
|
2023-08-09 17:47:34 +00:00 |
|
stephan
|
16e620e07f
|
SQLTester --result command: do not double-{}-wrap error messages and do not throw on db error.
FossilOrigin-Name: f7be20f5a62f8970f957e5c3a1d1c6536995df5c078dbac34a44f09682e43945
|
2023-08-09 17:23:52 +00:00 |
|
stephan
|
5d2a618340
|
Move the test command body's trim() back into the TestScript class (to simplify Command-level code) but do it after double-verbose has had the chance to emit it as-is (so that debug output is not mangled by the trim).
FossilOrigin-Name: f15ecb68f7ca129478336b462508d2c40ea052b4040facefdbc67b13e6aea99d
|
2023-08-09 17:04:58 +00:00 |
|
stephan
|
583fc5b963
|
Tweak the SQLTester --verbose and double-verbose output a bit for legibility.
FossilOrigin-Name: 46b79afaafda40cb1f920cc96600adf11e8c688184c9559a08eb86776ccf3663
|
2023-08-09 16:56:42 +00:00 |
|
stephan
|
589857b965
|
Strip --oom commands from SQLTester input since (A) we can't currently do anything with them and (B) they can appear as body content of --testcase commands and the current parser cannot deal with that. If --verbose is provided once, emit the name and args of each command as it's run. If --verbose is used twice or more, also emit the command's body text, if any.
FossilOrigin-Name: 0770e8467d4bb9490d9ed6e8a20766ffee7049cc3667db6d036c13fccbb6f3ab
|
2023-08-09 16:29:07 +00:00 |
|
stephan
|
bd87174bae
|
Update the definition of "special characters" for the SQLTester and correct the code to match it.
FossilOrigin-Name: 217f6e0c9c09c576b09ea59fce085a53d1a133927046102b4d00fd58109efc93
|
2023-08-09 16:03:12 +00:00 |
|
stephan
|
65c7226e31
|
Extend TestScript to be able to report why it should be skipped. Expand the test-skipping rules to account for the current spec doc. Add the {} empty-string case to the spec doc.
FossilOrigin-Name: 4fcc8cb0cc2bbc0da71bdb99dacfdec54814af4c0e4c37619bad6a8e5fa62937
|
2023-08-09 15:46:55 +00:00 |
|
stephan
|
5b400552be
|
Add a test for the --null command.
FossilOrigin-Name: 83ac815debcc75dac1fbbdc17736f5e33fb675fdab0bf649367592a0d18074e4
|
2023-08-09 14:47:01 +00:00 |
|
stephan
|
aa6b35cc80
|
Extend SQLTester glob support with '#'.
FossilOrigin-Name: 756ef83f45b69d9f78965ef1171d36477a32f938fe179e59b95f32f07849c0e5
|
2023-08-09 14:43:54 +00:00 |
|
stephan
|
4340f27e17
|
Implement the SQLTester's result escaping rules.
FossilOrigin-Name: 61bb950873a1ec45a71b15a0ab5128a50417c4ecdd7d5bd9add0c18afcbadf34
|
2023-08-09 14:24:22 +00:00 |
|
stephan
|
5158a9a9a7
|
Add --json and --json-block SQLTester commands.
FossilOrigin-Name: 478129d901824e675d86494044f73c313532e9f80e7ee6f425474df8237a82f5
|
2023-08-09 13:51:50 +00:00 |
|
stephan
|
ff6b15fbb2
|
Add SQLTester --tableresult command.
FossilOrigin-Name: 8c5b6d893df4a4e82c6d8e07507fc160b11412ede4bb903ff4e3f5ffa59a9cb9
|
2023-08-09 13:16:10 +00:00 |
|
stephan
|
aec9aa9289
|
Clean up the SQLTester output a bit by using the module name, instead of filename, where appropriate.
FossilOrigin-Name: 5323e4fd254274cc527af7536c622b786394599c68eca2da6c7fc641727dbdb2
|
2023-08-09 12:05:17 +00:00 |
|
stephan
|
283e87146c
|
Document SQLTester's --print command and add some argument validation to it.
FossilOrigin-Name: ab9c945bb0b4210b3f47e6341f150f8a7cc45f9e4e4c2247e91d2528ed4772a6
|
2023-08-09 11:10:48 +00:00 |
|
stephan
|
e6c29da777
|
Rework how SQLTester's Command objects are dispatched and how TestScript stores its command entries.
FossilOrigin-Name: f929f1f7f70181813f74562614f3f2aa29e65590560e3fce1677b8b176e3c6de
|
2023-08-09 11:05:43 +00:00 |
|
stephan
|
23a35c2145
|
Some minor tweaks in SQLTester in prep for larger refactoring.
FossilOrigin-Name: 1d93f93ac9708839e62d2f1b489adc5d47ff290c2d5aef4dd56be4e1e46c81b2
|
2023-08-09 09:56:37 +00:00 |
|
stephan
|
41f9449016
|
Remove the current-statement tracking from the JNI internals because it will break down in the face of client-side mixed-mode native/java code, e.g. in cases like SQLTester. This makes tracing of sqlite3_stmt a micron slower but also reliably correct.
FossilOrigin-Name: 4c0ec89dca00a9199d1e36768c034aa5eff03b13b5e015cf580f160dc4f141ad
|
2023-08-08 22:10:27 +00:00 |
|
stephan
|
78fc4ae4d9
|
Adapt JNI build to be buildable with or without SQLTester.
FossilOrigin-Name: adae7d78692af73e770a9cc0a4264ab32ecc18a5c0deb64f3c1e790d959bab43
|
2023-08-08 21:22:56 +00:00 |
|
stephan
|
c783fd36dc
|
Add SQLTester dup() and dup_count() UDFs. Correct arg handling of the --run command.
FossilOrigin-Name: 0dba3073f44685a51a5db7ff8886295fe04dfd43f69cbf53ad3d5afce741076b
|
2023-08-08 21:05:39 +00:00 |
|
stephan
|
4d3aa08f67
|
Correct --result arg count check and add infrastructure to let us add custom C-side behavior to SQLTester via an auto extension.
FossilOrigin-Name: bb8321702eea52fa9d42987a4b053b32d8eba15580a39d7831cd8d6f1ceb62bf
|
2023-08-08 20:41:29 +00:00 |
|