drh
449b34571e
Enable the EXISTS-to-JOIN optimization if the outer query has no
...
FROM clause.
FossilOrigin-Name: 1b9b124f9a35ebd1ac4ea70ef1ee08a4c82c11da690d4164f6b785a6fd9730d9
2025-07-08 17:28:09 +00:00
drh
8c8443a38a
Small performance optimization in the resolver.
...
FossilOrigin-Name: 840646df0696706bd4dd7a04dfc8b16ad80c24cbcbc57a22c9e65a93cc17af2b
2025-07-07 19:03:50 +00:00
drh
44a03671c4
Merge the latest trunk enhancements and fixes into the empty-table-optimizations branch.
...
FossilOrigin-Name: f15cdf07573c05276a13885d74bae21a93544766344f19ef939b7a69edd1073b
2025-07-07 18:35:51 +00:00
drh
0a5508aeb4
Rework the fix to the problem described by
...
[forum:/forumpost/b9647a113b465950|forum post b9647a113b] so that it
provides a more complete fix that covers cases that were not resolved by
the original fix, and so that it does not cause performance regressions.
FossilOrigin-Name: 28db0d152d90fb5e62d03ea5caceabe8901be98522aef3dc2b54564fbc35355d
2025-07-07 16:19:44 +00:00
drh
4fe1ac8fe1
Simplifications to the row-value IN operator logic. Do not let the query
...
planner accept a WhereLoop for a row-value IN operator that uses the same
index column more than once.
FossilOrigin-Name: d2adf61f21a3ce901a2b08199ad0de191e88ef16e097c5f7a75c95ad958eff12
2025-07-07 15:40:53 +00:00
stephan
24d290e7b0
Work around the Emscripten 4.10 regression described in [ https://github.com/emscripten-core/emscripten/issues/24656 | Emscripten ticket #24656 ]. Problem reported off-list by BrickViking.
...
FossilOrigin-Name: c385475b250f3364507a95c5832137098a9bb7c7fc12ab3bb116e1fad7bb7645
2025-07-07 12:11:26 +00:00
dan
8504d37b99
Avoid invoking the preupdate hook from within sqlite3_blob_write() if the cursor is already invalid.
...
FossilOrigin-Name: 9f335b9a4e9e761a0c6afd6dc69665a24506141bde88530bf59fcbdf957ae881
2025-07-07 11:37:55 +00:00
drh
4aacd1ef8e
Back out the fix at [ba7d5bad32ad6aac] because it does not always work and because
...
it causes a performance regression. Add new test cases for row-value lookups of
indexes that contain redundant columns, three of which are currently failing. This
branch is seeking an improved solution to the redundant index column problem for
row-value lookups.
FossilOrigin-Name: ad8ddcefab5cc526b1cd77731e00939c672e61ca83350d28961b67635d20da03
2025-07-07 10:54:00 +00:00
drh
0840460689
Fix parser error introduced by [325e547a2195571e]. See
...
[forum:/forumpost/095dbfc06e5b1f7e|forum post 095dbfc06e5].
FossilOrigin-Name: 4eefab44941fc6e17742fa49c8734e7f00a2177d82bc572e596228add53aad39
2025-07-07 02:18:27 +00:00
drh
c701d17366
Improvements to the EXPLAIN QUERY PLAN output for EXISTS-to-JOIN.
...
FossilOrigin-Name: 6b1ecbaa2ee405be040901dceac45d027d35c313622748ba4dbbd404e297a7fa
2025-07-06 01:19:09 +00:00
drh
8bc112e3e4
Enhance the EXISTS-to-JOIN optimization so that it works on EXISTS subqueries
...
that do not have a WHERE clause, and so that it works on nested EXISTS
subqueries.
FossilOrigin-Name: c1d5295724f9cf7f49e0786d28016eff2d268a2b670f934d24c76787626089db
2025-07-05 23:33:21 +00:00
stephan
27408ab9c9
Add 'reconfigure' target to Makefile.in to re-run the configure script with the same flags it was generated with.
...
FossilOrigin-Name: c60907e77b32824aaaf024d299cdaf161b5f64fc927ffe5d5455eeb5754e6b01
2025-07-04 18:32:18 +00:00
stephan
d9eae6b75a
Propagate the -ldl and -lpthread flags, if needed, into sqlite3.pc, per request in [forum:44a58c807353162f | forum post 44a58c807353162f].
...
FossilOrigin-Name: 64f5f14322349b47451b8cac03bf8cd6f1ae45a8822e7f1ddee3d0b265047501
2025-07-04 17:20:37 +00:00
drh
45bc9b9f97
Merge fixes from trunk into the empty-table-optimizations branch
...
FossilOrigin-Name: 6f98b16d210a9f5b6ca4b4599e3dab3263eddbae7c70ddbcabf988f4a1014e8b
2025-07-04 14:24:18 +00:00
drh
e33ea17d24
Fix harmless compiler warnings.
...
FossilOrigin-Name: 13af4acebe09b047756c22b800136cffaba532e7fcaa448a4edf4fedb94e9bbc
2025-07-04 12:25:24 +00:00
drh
a12e92d2f7
Remove an ALWAYS() added by [960a8e6fc91f4] that turns out to be false
...
in some cases of malformed SQL.
FossilOrigin-Name: cc8171461bf35f584888a24b844c8b79ad30155b19b61161e9f3abc276e8aae5
2025-07-04 11:48:11 +00:00
drh
478dfc7e74
Do not allow the EXISTS-to-JOIN optimization if the EXISTS clause is based
...
on a view, since that view might expand into a join.
FossilOrigin-Name: 872c41feddafcc21a02f1229ce017ceea9f8e309a4dd5b6e323477d67f975947
2025-07-04 11:06:34 +00:00
drh
1b62720fa8
Improve the early-termination optimization so that it works in queries
...
which use the LIKE optimization in the outer loop.
FossilOrigin-Name: b4e4d148243cfcb09aa0aaca30e83812b42e2780073e55c0e8c6e3da16243dfc
2025-07-04 10:26:55 +00:00
drh
1e3a862b79
Merge the latest trunk fixes and enhancements into the empty-table-optimizations branch
...
FossilOrigin-Name: d4f47e04f5880e99a53089e2dd5cde64a7ea44f059d9906b5d11324896546714
2025-07-03 20:51:08 +00:00
dan
bd05edd98f
Fix a few cases where LIMIT clauses that were part of scalar sub-queries on virtual tables were not being passed to xBestIndex methods correctly.
...
FossilOrigin-Name: 960a8e6fc91f47add3a089dc6cef013109deadf809994c5149ad3bdfb3884de0
2025-07-03 16:05:41 +00:00
drh
a24a397b8b
Improvements to sqlite3_vtab_rhs_value() logging in the
...
ext/misc/vtablog.c extension.
FossilOrigin-Name: 25131ee84f53dab1191e02c19cefd256aed2828c7edea325fcc0ba3b0a668583
2025-07-03 15:50:18 +00:00
dan
0e6e05d4d5
Make the value of an explicit LIMIT clause on a scalar sub-query available to xBestIndex for simple "LIMIT 0" and "LIMIT 1" queries.
...
FossilOrigin-Name: 33b6a63caafccc61b3193714911cd8b5dd9b7f1798054b8c7845b23688d531f2
2025-07-03 15:32:27 +00:00
dan
c525e6e817
Make handling of LIMIT clauses in correlated sub-queries on virtual tables more efficient.
...
FossilOrigin-Name: 7214cb2a5b35190a06a1040cd4c54f325d347f8d8e36a07fd76c0a421e266522
2025-07-03 14:28:47 +00:00
drh
1ff6f19d8b
Enhancements to the xBestIndex output from the ext/misc/vtablog.c
...
extension.
FossilOrigin-Name: 8b31acc0b18f38eb4af6efebd1ea25cd65a146651101579aee20afd9ec6dc2de
2025-07-03 14:10:03 +00:00
drh
bfb4993364
Fix an uninitialized variable added yesterday by [d27d34fb746280e7].
...
This problem was discovered overnight by
[https://github.com/google/oss-fuzz |OSSFuzz].
FossilOrigin-Name: 6db4703f1178fc808f3a75c355fb6638fb12c88f6e1ce7f579e200ced8089114
2025-07-03 11:52:17 +00:00
drh
debc8f7bb7
Minor tweaks to the exists-to-join optimization.
...
FossilOrigin-Name: 9cb600ad576c68647ed943a0773019312c5f01c9c1ca9ff0bf1214b03a531b48
2025-07-03 00:17:27 +00:00
drh
aa54d7a0ca
Merge in the exists-to-join optimization that has been modified
...
to relax the requirement of having an indexed join constraint.
FossilOrigin-Name: 1c1aef2b7feae29066d0330699ab634ef41f5b60cdcd479a60cb1a5409553138
2025-07-02 20:46:02 +00:00
drh
eb27359e5e
Fix VDBE coverage
...
FossilOrigin-Name: ff593a16d61cc5c588d1737deb822abb90b1759475a4cabfcf608978b1191487
2025-07-02 17:43:59 +00:00
drh
33f3273705
Early exit if one of the inner loops of a 3-way or larger join is an
...
empty table.
FossilOrigin-Name: eaad6ac707a5960d9518d4049b7b1759e7512727ce87be3c402408144bda0a97
2025-07-02 14:53:48 +00:00
drh
216676664d
If the LHS for an EXCEPT or INTERSECT operator is empty, skip over the
...
computation of the RHS.
FossilOrigin-Name: 13f096ae8a850a05d4a8684561066f11693ee66289e6568c44ef32822cca06f6
2025-07-02 13:19:24 +00:00
drh
6245e5a46b
Improve the bytecode for joins such that it exits earlier if it determines
...
that no output is possible.
FossilOrigin-Name: 2d2b61cba44a756a3a41ef5c95bbb0c0b7111f4b679c578fec9bd0b214cca367
2025-07-02 11:47:54 +00:00
drh
caf0473652
Ensure that Expr.op2 values for TK_AGG_FUNCTION nodes are adjusted when
...
query flattening.
FossilOrigin-Name: d27d34fb746280e7e81335db4e195914b15403ef0da7b2955550553dd78fbe9a
2025-07-02 02:03:43 +00:00
drh
2427ce16d9
Improved comments on bytecode used to implement aggregate queries, to aid
...
in debugging.
FossilOrigin-Name: a1a8b85cdba64a17dcdcd4e6b42b872957cec2dc05b0ac34dfcd82f59344034b
2025-07-01 23:17:36 +00:00
drh
46bfcc1a21
Improved byte-code comments for the short-circuit optimization of
...
[0083d5169a46104a], to aid in debugging.
FossilOrigin-Name: 113f9d10e347eeaa893ff8b47a461009e0b12589374b93cf3e0bddd19c702dea
2025-07-01 20:32:45 +00:00
drh
5e71497404
Cache and reuse virtual table cursors in the bytecode engine.
...
FossilOrigin-Name: 2d187d4232d750cb1840f1d89c8aed65962cb0883c1d7f91c554b451e475c514
2025-07-01 17:36:55 +00:00
dan
526399b0fd
Avoid an assert() failure in fts5 that may occur when processing corrupt records.
...
FossilOrigin-Name: 8afd6ca85724a69970181042d6aac53742ea2b76ded5966b2541c3afe1121fb9
2025-07-01 16:21:47 +00:00
drh
e1910ed1d2
Merge trunk fixes into the empty-table-optimizations branch.
...
FossilOrigin-Name: 63306e447efb3ac17e789a331ed3bb65459eb8b79d66e9c185ba3bd852f34ce3
2025-07-01 15:13:37 +00:00
drh
d82c6a2cf7
When attempting to optimize "expr AND false" to "false" and
...
"expr IN ()" to "false", take care not to delete aggregate functions
in the "expr" as doing so can change the meaning of the query.
See [forum:/forumpost/f4878de3e7dd4764|forum thread f4878de3e7].
FossilOrigin-Name: 77397bd67d918db57d5ac545d6d963194806fdabcdaa8f822b6b09e4cfe8b715
2025-07-01 12:43:13 +00:00
drh
3d21dcc924
More aggressive optimization of addrHalt for RIGHT JOIN.
...
FossilOrigin-Name: 5e51d1c0dfcafef9e71c99de3f626dee157c935724b84c6e0c630299a880446f
2025-06-30 21:07:08 +00:00
drh
ba56f7020d
Compute WhereLevel.addrBrk and .addrHalt early so that those labels can be
...
used to abort loops early. Use this to improve performance on two more
of the cases described by [forum:/forumpost/52651713ac|forum post 52651713ac].
FossilOrigin-Name: 6fc0b9ac23be6840542982de4bb282ebca1db8b5ab3baefdde95a997c1506e81
2025-06-30 20:19:19 +00:00
drh
99f1aa03fb
Strive to skip the evaluation of scalar subqueries that are part of a
...
larger expression if the result from the scalar subquery does not change the
result of the overall expression.
FossilOrigin-Name: 0083d5169a46104a25355bdd9d5a2f4027b049191ebda571dd228477ec217296
2025-06-30 16:41:40 +00:00
drh
280559b446
For all binary operators, try to avoid computing subquery operands if the
...
other operand is NULL.
FossilOrigin-Name: d86eb16283c4b573c506d4faa422d5d9aeb6abc279d8e6a8e2104737162d417f
2025-06-30 12:14:47 +00:00
drh
e2e81e6983
Slightly smaller and faster version of the previous check-in.
...
FossilOrigin-Name: f6e6fd02f4ad49c390a2d3c9626d57f9b2fff1f67eb361b30074cc1f5121810e
2025-06-30 11:04:55 +00:00
stephan
b8c81790b2
Minor API doc typo fixes from brickviking.
...
FossilOrigin-Name: b48d95191662e09659b5b55ae65cd462c9e1700c4f92dd9d40b59548f0797c02
2025-06-30 11:00:59 +00:00
drh
e24f20a4f5
Factor out the code that tries to avoid evaluating subquery operands if the
...
other operand is NULL into a subroutine, so that it can be more easily reused
by other parts of the code generator.
FossilOrigin-Name: 3c6c71bcea16443b82234414137dfa1b59e2ee8fe5097906c738fc1228fec4e6
2025-06-30 10:30:47 +00:00
stephan
f0991c416b
Minor API doc typo fixes from brickviking.
...
FossilOrigin-Name: c7cf9dcb69ce558ba6b81b2787f92ed7383e37f08b199faeb14f7adb4e494532
2025-06-29 07:32:20 +00:00
drh
311d73efc2
Improve the bytecode generated for comparisons so that if one operand is
...
a subquery and the other operand evaluates to NULL, the subquery operand
is not even computed. This fixes 5 of the 12 slow queries described
in [forum:/forumpost/52651713ac|forum post 52651713ac].
FossilOrigin-Name: f147bc04776ac0056412f69dfc518016c0d5b4e9d964664e3d88f595fb29dbe0
2025-06-28 17:59:15 +00:00
drh
c52e9d97d4
Raise an error right away if the number of aggregate terms in a query
...
exceeds the maximum number of columns.
FossilOrigin-Name: 5508b56fd24016c13981ec280ecdd833007c9d8dd595edb295b984c2b487b5c8
2025-06-27 19:02:21 +00:00
stephan
fbf1c0526e
API doc typo fixes and closing DD element tags from brickviking.
...
FossilOrigin-Name: c9ddd15b0197e6e5c5a74581d94cf986523514ffdb28c66ba18de9a22aec97e9
2025-06-27 12:46:50 +00:00
drh
e77e589a35
Work around an apparent GCC UBSAN bug. See
...
[forum:/forumpost/1d7c25d4a2d6f5e2|forum thread 1d7c25d4a2d] for details.
FossilOrigin-Name: 23056532e51abcff486e38a3319545e6663b4a855abe1bc443e2cd7e0473748c
2025-06-26 18:57:20 +00:00
stephan
981022b7ff
Minor API doc fixes sent off-list from brickviking.
...
FossilOrigin-Name: cb4d05633a0c9cdf146f3108e1b4b10754cd79d72a425d8cc9cd21836037a01b
2025-06-25 20:42:40 +00:00
drh
a67c71224f
Similar fix to the previous check-in, but this time for
...
sqlite3_preupdate_new().
FossilOrigin-Name: 9aaff764d508cbd9823f23cdf0c510255721bc5c09be481ebc60bd8902ceb8c5
2025-06-24 18:27:59 +00:00
drh
66cd200ede
Range check the column index on the sqlite3_preupdate_old() interface
...
and return SQLITE_MISUSE if too large.
[forum:/forumpost/b617e497287235d0|Forum post b617e49728].
FossilOrigin-Name: 6a5701e6c7be25cba93e55438f950966e1dacb32eb2b23a8acc8ac53da6f0a85
2025-06-24 15:58:32 +00:00
stephan
513fff88c4
API doc typo fixes and one rephrasing improvement from brickviking.
...
FossilOrigin-Name: 85e8060c4701a601d4bc8a639acd268ee4f2736193820d55ecd9b8abf864132f
2025-06-24 07:38:52 +00:00
dan
fe182f74b2
Improve some of the error messages emitted by fts5 when it encounters corruption.
...
FossilOrigin-Name: 48044a6b57c0a16cb75139c103ad88ca4ab64d74f70a3dee0d8b817fbfbec3c6
2025-06-23 19:38:22 +00:00
drh
b1560be826
Fix an SQL typo introduced by the previous check-in.
...
FossilOrigin-Name: 72a81d247bc74a21d077d311969ac585d0f26bffbd210ec60f03c38bf138790e
2025-06-23 19:00:30 +00:00
drh
28789029ee
Escape the "_" character in LIKE patterns in the CLI.
...
[forum:/forumpost/6a89702f5d|Forum post 6a89702f5d].
FossilOrigin-Name: cf61cd359e666c66b6bba4407a653c799f7f07e1f5ee6b837ad467029c461a6a
2025-06-23 16:51:33 +00:00
drh
f453e8d84e
Fix a harmless compiler warning injected by [c978aed3b6f82b3d].
...
FossilOrigin-Name: f46500247b3a2f8b4a2f0f032cc4066af9cb3918e38a09c59db0a1da5747a25c
2025-06-23 13:42:59 +00:00
drh
4c1c400d64
Improved "statement aborts at ..." log-file messages that identify the
...
trigger that caused the abort.
FossilOrigin-Name: 7691264fe37300c880d612c91cf093327841fbe85fb7ec67e777e911d2cfc9ee
2025-06-23 13:28:13 +00:00
stephan
87c807c6dd
Add the --disable-rpath configure script flag to address [forum:13cac3b56516f849 | forum post 13cac3b56516f849].
...
FossilOrigin-Name: a59d9bb25e518f5d79f654615b92f6c50cfb704b5abee0f820912644b89366c5
2025-06-22 22:48:11 +00:00
stephan
b5aa9593ac
API doc typo fixes from brickviking.
...
FossilOrigin-Name: 18e07f8f53693d0dace3c4025a572c1a10582290a338aa7f0913c83842a69b05
2025-06-22 12:04:47 +00:00
stephan
5806a922ba
Minor JS test cleanups prompted by a linter.
...
FossilOrigin-Name: 764235a3d15fda55af85ebe3b5885fa27336cc0e979f1be2f6770b66a84bbe87
2025-06-21 16:33:05 +00:00
stephan
427d2cd57d
Remove some duplicated JS tests.
...
FossilOrigin-Name: d1cb9ed79d806f667c22f5ba9861451d4d0765aa3072e085831045cf3a39f8b4
2025-06-21 16:18:23 +00:00
stephan
db37e6097c
Reduce the maximum --size flag for JS kvvfs speedtest1 from 4 to 2, as --size 3 and 4 are overflowing the kvvfs storage limits.
...
FossilOrigin-Name: b77b3adc828ce543e880e230701edd5e0ccb681e4c3c724ea8ad5ecbd69c73a6
2025-06-21 16:02:20 +00:00
stephan
6fcb7f22a1
Give oo1.Stmt.get() similar treatment to [8c187140a60b]. This is an internal change only - the API is unaffected.
...
FossilOrigin-Name: f5a7abc0a447273de40dacc463d267d26d4b62be56ee15baf05825791c2a7a6e
2025-06-21 15:58:20 +00:00
stephan
2f7f948fa7
Extend the SEE-via-kvvfs tests to include all three key types.
...
FossilOrigin-Name: fc001aa5ee978795c2ff670bea64db0b69b6bde98653769d9cede8825a28e698
2025-06-21 15:38:59 +00:00
stephan
0cdde5b44f
Rework how JS's oo1.DB.exec() flags its Stmt objects to make certain Stmt APIs illegal (i.e. throwing) if called while that Stmt is being step()ped by DB.exec() (which can happen via client-provided per-result-row callbacks). This is an internal change only - the API is unaffected. Remove some unrelated dead code.
...
FossilOrigin-Name: 8c187140a60b62dc3b6066b8615766d52b7a29a5de992cbb6d312dbb225a980b
2025-06-21 14:38:53 +00:00
stephan
a0c6de56ba
Numerous small doc typo from BrickViking.
...
FossilOrigin-Name: 3aab4415de615c178205936372c625bb571bad1016c3d2e7bb2a45932356f3d6
2025-06-21 06:07:13 +00:00
drh
b68d63158a
Enhance sqlite3BtreeSetPageSize() so that it detects early if no changes
...
are needed and exists with SQLITE_OK.
FossilOrigin-Name: c978aed3b6f82b3d9d2e0ca0283c611351bca5e5496e86a9d5d0731ebcd27c84
2025-06-20 13:12:55 +00:00
drh
59de42763f
Fix an out-of-order local variable declaration in ext/misc/fileio.c.
...
FossilOrigin-Name: a88bb75288a06492a04ab1278e8a2101a74f4ba712d328b4c73e86ac01cb946d
2025-06-19 20:19:12 +00:00
drh
37794b4ad0
Improve the accuracy of sqlite3BtreeRowCountEst().
...
FossilOrigin-Name: e553fb538ec1527457e2927edf9127dccf268a8a3b5918d4fb0d066ad9676094
2025-06-19 20:00:37 +00:00
drh
397b82cf0f
Generalize the indexCellCompare() so that works on any index page, not just
...
the current page that a cursor is pointing to.
FossilOrigin-Name: b305a7f5db183d8e0e5d62ca3c9c6260ad94bb954f7342bd3caabcd8308a21f5
2025-06-19 19:33:06 +00:00
stephan
92d1bec584
A slight doc rephrasing for clarity, suggested in the forum.
...
FossilOrigin-Name: 0d6084a398edb013fcfb613eff8d75e2f86cbb5e3c8049328ede89e75db93cb3
2025-06-19 12:35:30 +00:00
stephan
a5c484b432
Doc typo fixes from [forum:0bce273669 | forum post 0bce273669].
...
FossilOrigin-Name: 8f97e3f00d24b26fe87a9d3396ad855277a1a369f6f89e9c77dc9af4d203bdf1
2025-06-19 10:46:39 +00:00
stephan
64159096b8
Expose the column metadata APIs to WASM (which does not require a non-default sqlite3.c build, contrary to my prior mistaken claims). This adds only 424 bytes to sqlite3.wasm and 660 bytes to sqlite3.js.
...
FossilOrigin-Name: 3cf983816ccd167d93cb39c7a16b6db4b4f7ef2a64f4181d3bc4530cd0bd3b67
2025-06-19 10:25:50 +00:00
drh
ab9c91ae82
Extend the pedantic enforcement of type to VIRTUAL columns.
...
FossilOrigin-Name: b734c74e55acb26eb61b60937bef870f4b55b2e2e7560a22362f5f31ba2fcd03
2025-06-18 19:04:28 +00:00
drh
bcf25e7129
Enforce judgmental typing on STORED generated columns for STRICT
...
tables. [forum:/forumpost/6caf195248a849e4|Forum post 6caf195248].
FossilOrigin-Name: 5e9279bff0482806f86657ae05ca3e916708d138bc3c3ceb3fbf454818649d44
2025-06-18 16:17:00 +00:00
stephan
2be0a700ff
Export the column-metadata APIs to WASM. Doing so requires a non-default build of sqlite3.c, so this is a proof-of-concept branch saved just in case SQLITE_ENABLE_COLUMN_METADATA ever becomes the default for sqlite3.c.
...
FossilOrigin-Name: 59db3f639d1073678805dea26a4686eddfb238f055aa90bd429fc7fd33241502
2025-06-18 15:37:04 +00:00
stephan
3a26f72e20
Add the --enable-column-metadata flag to the configure script (off by default). It's only available in the canonical build, not the autoconf build, because it changes how sqlite3.c gets generated.
...
FossilOrigin-Name: 986b601db11a041d280eb61004723604bf4b6fd573b9832c97e3a9da9ea16e9a
2025-06-18 15:22:50 +00:00
stephan
d961d49971
Eliminate configure/build discrepancies in how 'make tclextension-...' works vs other makefile-side handling of the extension, conforming to the former.
...
FossilOrigin-Name: 7ca545fd3b460fcf92e117baef42655eb6e78ebb5bdc6302f8f1b5b8446c0a06
2025-06-18 14:17:18 +00:00
drh
9a9140ba59
Change the definition of SQLITE_DYNAMIC to a function that has exactly
...
the same type as sqlite3_destructor_type, in an effort to work around
possible legacy compiler bugs.
FossilOrigin-Name: 83553edf78c35d171a0ddf1a51306e963d715e56d95b8159b561b729cfb27843
2025-06-18 14:14:46 +00:00
stephan
12bd8ea09a
Add the --tclConfig.sh FILE flag to buildtclext.tcl to eliminate the discrepancy between the configure-time-detected tclConfig.sh and the one auto-detected by the tclextension family of makefile targets. Add the tclextension-all target to run all of the various tclextension-... targets in their natural order to facilitate testing changes like this one. Update the --help text to note that --with-tclsh should only be used if there's a specific need, and that --with-tcl is generall preferred. This is in response to [ https://github.com/termux/termux-packages/issues/23268 | Termux ticket 23268].
...
FossilOrigin-Name: 928976abcb11f9d5abe1f7631002592c4af7bf83ecadba5b0763866d039c2270
2025-06-18 11:11:30 +00:00
stephan
1e9baaf743
tea: remove the vsatisfies 8.6- enforcement from the extension because at least one platform with tcl 8.6 is inexplicably failing it. [forum:fde857fb8101a4be | Forum post fde857fb8101a4be]
...
FossilOrigin-Name: 7331e32a76a8a41cc1bd1c84069219c9929e0e0f941c1d9e308cbbb7959373c5
2025-06-17 20:50:51 +00:00
drh
df8aa3745a
Avoid writing frames with no checksums into the wal file if a
...
savepoint is rolled back after dirty pages have already been
spilled into the wal file.
FossilOrigin-Name: 5973f9b9aa828ec9274b02a124b95f452c58235eaafffbdda1c32b4ae2d5616d
2025-06-17 19:10:33 +00:00
drh
110055cd6c
Fix a corner-case for [9441fff52cc4e19c].
...
FossilOrigin-Name: 336a59eb3afd80ce048de472368df6dfc32934ee783859d37663ed8f5cf169a5
2025-06-17 18:57:07 +00:00
dan
79a746b1f2
Update walcksum.test so that it works with SQLITE_DEFAULT_AUTOVACUUM=1 builds.
...
FossilOrigin-Name: 0da16f6c625bff9f2ca5624afa6dce6b5a157f44c1d56b25b92946c13217ab02
2025-06-17 18:17:09 +00:00
stephan
9ebf9d358b
Extend [b5c6cb13cff5] to use a wildcard on darwin* because some OSes report a version number in the suffix. [forum:0c4bbc2962dfb06e | Forum post 0c4bbc2962dfb06e].
...
FossilOrigin-Name: d960bd6f9256410ebc98125b0567380457e39bc8fe768fcd9ea05c6de1994df6
2025-06-17 17:15:12 +00:00
stephan
e68aa0e44b
Minor proj.tcl portability fixes and cleanups suggested in [forum:7b218c3c9f|forum post 7b218c3c9f]. Tested on Linux, Msys, Cygwin, and Haiku.
...
FossilOrigin-Name: b5c6cb13cff53f4ba1e0e6a0d61389252bd004d9099727e7a9304217e3f81d80
2025-06-17 14:56:30 +00:00
stephan
6e1c2f0483
proj.tcl portability fixes and cleanups suggested in [forum:7b218c3c9f|forum post 7b218c3c9f]. Branching so that it can be tested on msys/cygwin/haiku before committing to it.
...
FossilOrigin-Name: 89552e9137b7ebba9600443720e936e8dc4f7ab021d2ac3f0bb01b74071e130c
2025-06-17 14:37:31 +00:00
dan
1ea6a53762
Avoid writing frames with no checksums into the wal file if a savepoint is rolled back after dirty pages have already been spilled into the wal file. Possible fix for [forum:/forumpost/b490f726db | forum post b490f726db].
...
FossilOrigin-Name: 3a3269fe8e925a522d5df9f011220a842fb15a9f56e785884e32d2e15abda5bb
2025-06-17 11:36:39 +00:00
drh
86d9c2d9f3
Fix an issue going back to version 3.39.0 with transitive IS constraints
...
in queries that make use of RIGHT JOIN. Problem reported by
[forum:/forumpost/68f29a2005|forum post 68f29a2005].
FossilOrigin-Name: 9441fff52cc4e19c44df1a77ffe474f409d519b270c7166ce17f99e6ea48fc1e
2025-06-16 17:36:11 +00:00
drh
d3a13f7d25
Improved debugging output for the transitive constraint optimization.
...
FossilOrigin-Name: 94b53c20e9bc8687c44272419aa7a93076eebdeae9a4f50b95b96a49993f9c0d
2025-06-16 16:07:14 +00:00
drh
6ed5aa4b9b
Make the show-%p-az-zero hack of the previous check-in configurable at
...
run-time using the 0x100000 bit of either .treetrace or .wheretrace.
As before, this is all a no-op except for debugging builds.
FossilOrigin-Name: a29627d7e7f8344d9a099cc133bda85250b02dc5ee5f358ba59691e0816b5b2d
2025-06-16 15:34:26 +00:00
drh
67f708298f
Add an "#if 0" that can be changed to "1" to cause all %p output to render
...
as 0, thus making comparisons of .treetrace and .wheretrace output easier.
FossilOrigin-Name: 65e2704c0bc329f3dd248548a2d4edb7d3ace8ceaf0b82b8618b9b1b764884cd
2025-06-16 13:51:09 +00:00
dan
792d1d1b6d
Have sqlite3_setlk_timeout() take the database handle mutex. This fixes an assert() failure that could occur if sqlite3_setlk_timeout() were called on a threadsafe handle.
...
FossilOrigin-Name: a95d126e1330e1b83f42b51f97c4c216622cf38062f3b5d72ccb76313187e850
2025-06-12 07:35:38 +00:00
dan
6a5e74cbf0
Fix a problem with UPDATEs on fts5 tables that contain blob values.
...
FossilOrigin-Name: badf3014bd1620fd3d4b8013f641fd820b249649fb93cc75b7b8df9dfd6f32a6
2025-06-11 15:03:53 +00:00
drh
23e59b34e9
Fix the concat_ws() SQL function so that it includes empty strings in the
...
concatenation. [forum:/forumpost/52503ac21d|Forum post 52503ac21d].
FossilOrigin-Name: 80a78987da484d435a8242c05c48d546d430920df713b24a9d9d9fff7ba1113d
2025-06-11 00:01:42 +00:00
drh
a09a4fbac9
Improved selection of the divisor when subdividing nested Bitvec objects.
...
This fixes a potential stack overflow that can occur when the database size
is within 60 pages of the maximum allowed by the file format.
FossilOrigin-Name: f7ab764ed9df6d7a4a96cb0933d291f00174f33fed3d9951785078fe225adcb7
2025-06-10 19:52:21 +00:00
drh
6a23ff5a07
Minor corrections to the new Bitvec testing logic.
...
FossilOrigin-Name: 77b79ca1277419b91589aff2c601d4abdd7107d48019a58f7f7c85d96c2a538e
2025-06-10 18:26:09 +00:00
drh
5706b316c3
Enhancements to sqlite3BitvecBuiltinTest() that allow testing code to
...
create very large Bitvec objects that do not use the linear array cross-check.
FossilOrigin-Name: c5680672cae23f65637eebf66f3bb983a2864be03ea70378832034f3c89ef728
2025-06-10 17:22:53 +00:00
drh
90ba0d4995
Improved diagnostics for Bitvec: Add the sqlite3ShowBitvec() routine that
...
can be called from a debugger (only available with SQLITE_DEBUG). Add new
output opcodes for sqlite3BitvecBuiltinTest().
FossilOrigin-Name: dea1e37fa67ada6efc1533b449d9eb22338d9e58eec8f89b48c38319c212c8f4
2025-06-10 16:02:29 +00:00
drh
f091f423ad
Adjustments to ext/misc/fileio.c in an attempt to get it to build using mingw.
...
FossilOrigin-Name: 96b14a3f1193de8f30e9fa704f87558dab8027a218868d32e47688cd5df497b7
2025-06-09 22:38:34 +00:00
drh
4c323ba4be
Remove unnecessary whitespace and otherwise improve comments in the
...
wherecode.c module. No coding changes.
FossilOrigin-Name: 2eb4e9bf0f2df50324a62fb272a92bbd931b8b4e4b35bac0c05b676c97b61339
2025-06-06 23:10:18 +00:00
drh
368c549044
Update the "msort" function in Lemon so that it works with lists of any
...
length, and also so that the sort is stable. This patch was motivated by
[forum:/forumpost/63750d717c9ed961|forum post 63750d717c] but was
independently developed, then tested by temporarily setting LISTSIZE to 2.
FossilOrigin-Name: aba5c3135edf7de2798ad808fa0ff176fdba3f4a9b101f1f4210b441cba8e75d
2025-06-06 23:02:03 +00:00
drh
b1929b7117
Remove the clunky test_windirent.h and test_windirent.c files from src/
...
and replace them with a much cleaner and more compact ext/misc/windirent.h.
FossilOrigin-Name: acc978df52ec41ffdb5c27764f30d53efa1f25a314b7d98983dc0d211a36b570
2025-06-05 20:12:41 +00:00
drh
6facd9566d
Enhance the FSDIR virtual table with a new "level" column. The query planner
...
knows how to optimize to avoid search deeper than the maximum requested level.
FossilOrigin-Name: 1ddc0f9e79c33957961bc1443ccb74d756a02cbd20850052079782e76aef2706
2025-06-05 18:28:54 +00:00
stephan
26370358b6
tea build: add an info-exists check after a 'scan' call, as scan does not create its target vars on error. Problem reported at [forum:fde857fb8101a4be | forum post fde857fb8101a4be] and triggers when the 'vsatisfies' test for the host's Tcl version fails (so the build would fail anyway, but will fail more informatively with this fix).
...
FossilOrigin-Name: 4f21874d5d20aef2e2d67a59e4fa03d98aa6514b16e4d956acfc817142cfbdb6
2025-06-04 18:34:20 +00:00
stephan
a29b138692
Apply the duplicate 'export default' workaround to the (untested and unsupported) node-specific build rules in mkwasmbuilds.c to resolve a problem reported off-list by Thomas Steiner.
...
FossilOrigin-Name: 2f8a1b79533879e4975b405c46fea496ba8bffbef065e7dd0ad29fd4aa8f8f92
2025-06-03 18:10:59 +00:00
drh
1d151e6d25
Enhance sqlite3_rsync so that it works even if the replica database is
...
initially malformed.
FossilOrigin-Name: ea1754f7d8a770477a1b19b606b27724fdc0b733e51fef32c1ef834f972c3cc5
2025-06-03 10:49:51 +00:00
drh
df724c893a
Fix an off-by-one error in sqlite3_rsync, reported in
...
[forum:/forumpost/b6d78f60fc|forum post b6d78f60fc].
FossilOrigin-Name: 27d9e8e79b921c4a86916556f3bf56b94684a7e3d40166c0fdaaf750d4011de0
2025-06-03 10:28:47 +00:00
drh
140748f949
Fix harmless compiler warning introduced by the setlk-snapshot-fix merge.
...
FossilOrigin-Name: c1f20f89d9eb3e1dd1018c0e0efe5d3043a592f078e235ad04b960334c7186c2
2025-06-03 10:18:54 +00:00
drh
2bd9f69d40
Fix JSONB edit so that when it is trying to reduce the size of an element
...
it understands 0xf0 (8-byte) sizes.
FossilOrigin-Name: 5b3de6e8ab6b228bf6c0e0c31b50ca29d8b7852b460eaaca6c6ecf5a3c083cab
2025-06-02 23:34:42 +00:00
drh
333b07b18d
Increase the version number to 3.51.0
...
FossilOrigin-Name: ed69d4432712603bea2161e0ca0c99e59480fb000e1cbf1aa1401d924544e351
2025-06-02 18:58:42 +00:00
dan
9269b212bf
Fixes to ensure SQLITE_ENABLE_SETLK_TIMEOUT builds use a blocking lock and do not call xSleep() when (a) opening a snapshot transaction, and (b) when blocked by another process running recovery.
...
FossilOrigin-Name: 7f9c0cdd0630a41db359b188b226a1ad6a3bae1663c27169acfe25edc7fb171b
2025-06-02 18:48:36 +00:00
dan
69ce758efa
Fix os_win.c so that SQLITE_ENABLE_SETLK_TIMEOUT=2 builds work on windows.
...
FossilOrigin-Name: 8efb95e0d4670b9c5dbd8cf34512334f47951a8dff8fdadc8645f75076acd91f
2025-06-02 18:37:32 +00:00
drh
342ef63e63
Improve the accuracy of affinity and collating sequence analysis for
...
NATURAL JOINs to the left of RIGHT JOINs where source tables are views
or subqueries. Initial problem report in
[forum:/forumpost/829306db47|forum post 829306db47].
FossilOrigin-Name: f184d1d236e47962658a4639d9533f67a525b74cfe0f06c93e9b85fdcd02a15f
2025-06-02 18:34:17 +00:00
dan
cfee69fbe4
Updates to new test cases to run with SQLITE_ENABLE_SETLK_TIMEOUT=2 builds.
...
FossilOrigin-Name: c6d3e3542fdf6a3428d3a2ec20c699c169ed53341dc782d81f7fe5944f769748
2025-06-02 18:09:46 +00:00
dan
eb9a145711
Merge trunk changes into this branch.
...
FossilOrigin-Name: 7d27451804e525190f8e67da75aaeb3bf2de677021f7566c6681398e60a88c72
2025-06-02 17:44:10 +00:00
stephan
d84bbac8be
Slight modernization of the TEA README.txt.
...
FossilOrigin-Name: bf7be67e3fb7b75fc281997f7bf9aa69eaf4da6bdf2fefe359b12d25ec95f512
2025-06-02 15:17:59 +00:00
stephan
a3fcd7c79e
TEA: remove the stale man page and references to the MSC makefiles from the README.txt. Based on discussion at [forum:87e6660191a472c5 | forum post 87e6660191a472c5]. A couple of weeks ago we internally discussed pulling in the MSC makefiles from the 3.49 tree but they are stale and possibly unused, so opted against it for the time being.
...
FossilOrigin-Name: c9888a409565e6c8891a3dafa56962df364fb729a61df2701dc0bb282e36fb75
2025-06-02 15:10:41 +00:00
drh
8658a8df59
Remove an unnecessary parameter from sqlite3VdbeRecordUnpack(). Improved
...
comments and assert()s on KeyInfo.
FossilOrigin-Name: 387f4c4d98b8fb83f6ae406e4143dabda7766e8752b7f6ca104655e51330c978
2025-06-02 13:54:33 +00:00
drh
7590bfd7fc
Fix stale comments related to KeyInfo. Add new assert()s associated with
...
memory management of KeyInfo.
FossilOrigin-Name: abd805bc76f14ede7359b029908179b7ca57e929c5918acae1403ef73ae0bd47
2025-06-02 09:49:07 +00:00
drh
d4c224b833
Fix an off-by-one error in the size computation of a vdbe-sorter.
...
[forum:/forumpost/c1cc8b057a|Forum post c1cc8b057a].
Problem introduced by checkin [d4307a0d43f42e96].
FossilOrigin-Name: 8b7a7fcf62e5c2742c243808fa482472954f2b4aae0bc7ae513bc07065c93737
2025-06-01 21:38:35 +00:00
drh
f18bf8997b
Fix VACUUM so that it works even when ATTACH_WRITE is disabled.
...
FossilOrigin-Name: 42494f85acb303919d3f1f2202f8b95fbd657652da4b8dc00451c10ea6c496e0
2025-06-01 16:10:25 +00:00
drh
c0190101d1
Enhance "box" and "column" mode formatting in the CLI to better deal with
...
double-wide characters.
FossilOrigin-Name: b0de22ed0abf2ea5d269f191c884d7b2be167a2ed27018c25aaa0ea238cd621a
2025-05-31 20:51:42 +00:00
dan
977b0f8813
Update a few test scripts so that they run on windows.
...
FossilOrigin-Name: 14a18f4e3a3f35e636262a253364ab1e8054ed38c0c7fd482633522cbcf5ffc4
2025-05-31 19:55:07 +00:00
drh
0d3e5ca28e
New makefile target "xdevtest" works like "releasetest" except that it
...
omits the "verify-source" dependency so that it can be run with uncommitted
changes in the source tree.
FossilOrigin-Name: 1afb1ac3e9f0a122f1374799c09b60a0dd5443434d4567d94385096ada91bf12
2025-05-31 18:26:37 +00:00
dan
51e3f855b8
Fix an affinity problem caused by a USING or NATURAL JOIN on the LHS of a FULL JOIN. [forum:/forumpost/5028c785b6|Forum post 5028c785b6].
...
FossilOrigin-Name: 8d393ca07fe09f48d77adb517e2e4baaa58a9251422de62a0504999205d3ea1d
2025-05-31 18:16:21 +00:00
drh
5248693924
Relax query flattener constraint (3b) and thereby allow flattening the RHS of
...
a LEFT JOIN even if the RHS contains a virtual table. This was previously
disallowed by [9dbae1df75219e2a] as a performance optimization. It
turns out that the constraint causes performance issues, and we do not have
a record of any performance issue that it solves.
FossilOrigin-Name: 1ddaa92057e550ea281d45d9860eafe69399224725548a93dd91c47a34e52152
2025-05-31 16:17:14 +00:00
dan
420233e375
Fix assert() statements in os_unix.c and os_win.c. Allow walsetlk_recover.test to run in non-SQLITE_ENABLE_SNAPSHOT builds.
...
FossilOrigin-Name: 9f521ecda2b8d2f383cc84e308b3a4adfcf1bd6339eb834c8fa76c8704c861b7
2025-05-31 15:10:41 +00:00
stephan
1ff4233f90
Move a mis-located makefile comment block.
...
FossilOrigin-Name: 7d884386bec11f47c2c18002dd8c573c9b5cb6f7cdf2307a96cccead05b6abf2
2025-05-31 11:08:06 +00:00
stephan
10206572b6
tcl extension: UDFs may now 'break' to return an SQL NULL. Add the (eval -asdict) flag to use a dict, instead of an array, for the eval row data.
...
FossilOrigin-Name: 413a626b5c7902c1810142536c36e4ea8ee7c616ea82dfe1114199f9319091f7
2025-05-31 11:02:06 +00:00
stephan
b504aab848
Add some missing UNUSED_PARAMETER() annotations to squelch downstream build warnings when using -Wextra -pedantic.
...
FossilOrigin-Name: a98a2f49355ec39c56e571c70d377675b1bd99a6d43cf9217b0eb1e081895d8e
2025-05-31 09:44:00 +00:00
drh
d930d7ef14
Follow-up to the previous: The same optimization suppression needs to
...
happen if the left-hand side is coming from a LEFT JOIN.
FossilOrigin-Name: cf5b37b3a39013d8ca9de92da2289346caf52b56daff59e19b140cc586a3421f
2025-05-30 22:58:09 +00:00
dan
ded1959120
If blocking locks are enabled, avoid using the busy handler when blocked by another process running recovery.
...
FossilOrigin-Name: a35236757ab57c4c9b34e47c5dbc10d8f1220f8152955f5303cf9c3902ee169b
2025-05-30 20:52:18 +00:00
drh
dd16539e71
When synthesizing an ON constraint from a USING or NATURAL, if the left-hand
...
side is coming from a RIGHT JOIN, be sure to set the EP_CanBeNull flag so that
the optimizer knows to check for NULL even if the column has a NOT NULL
constraint. Fix for the problem reported by
[forum:/forumpost/4fc70203b61c7e12|forum post 4fc70203b61]
FossilOrigin-Name: 60adc78a22956429d34ccc4e2c193c5994c11c3b3cff7901d47fad7d92dba935
2025-05-30 19:55:46 +00:00
dan
88ed38ca6d
Avoid invoking the busy-handler if a blocking lock times out while attempting to open a snapshot transaction.
...
FossilOrigin-Name: fe11f85fd3283bb7002f43bd8b796e9e7b67f6d1a92eb676be06b46d1458fc1d
2025-05-30 18:23:03 +00:00
stephan
f42ceb9075
Configure-related fixes and additions, most notably integration of self-tests for proj.tcl's APIs. Teaish make-install fixes based on the discussion in [forum:87e6660191a472c5 | forum thread 87e6660191a472c5].
...
FossilOrigin-Name: 2e486f8fd011d28fdd7e59ff34f7f04374019932eb160a8c4de56a5ce01e5782
2025-05-30 16:08:31 +00:00
stephan
7ac10ec8b5
Random typo fixes in JNI docs.
...
FossilOrigin-Name: f63608a3847469b130e029cc569fe6f03a9053352ec43c10d69849cbab4f61c5
2025-05-30 15:46:52 +00:00
drh
8ae57fab64
Use a more robust backup definition for offsetof().
...
FossilOrigin-Name: 22441955e03df07903b98832a60c05c53721cd67c667f6c83d5e97fcc62735ee
2025-05-30 15:43:04 +00:00
dan
b65326f51a
Add "include <stddef.h>" to fts5 and rtree to ensure that they use the system version of the offsetof() macro when it is available, as the built-in version triggers ubsan errors with clang.
...
FossilOrigin-Name: 838deb7f3423df84061a043928ed34e1d74e2e7d57ef1a9519bb32fea82e4352
2025-05-30 11:14:11 +00:00
stephan
0148820fd7
Squelch an interesting but harmless struct initialization warning emitted after an emsdk update. Fix JS breakage introduced by changes in Emscripten 4.0.7: manually export the HEAPxyz symbols which used to be exposed by default.
...
FossilOrigin-Name: 10d0897cc9a5998fe1344cfbb242a78b59012e29aa3b1993895dfac26721b053
2025-05-30 10:18:09 +00:00
stephan
d2b230a488
Fix the missing -lm link flag for the sqlite3 shell when building the autoconf bundle with --disable-static-shell, as reported in [forum:5adf1c932a | forum post 5adf1c932a].
...
FossilOrigin-Name: f6318c4a6b5a133657741c066ef2c76a71880dbc98cfff1fdd632637daf002dc
2025-05-29 20:29:13 +00:00
drh
f429845a60
Extend the fix for ticket [623eff57e76d45f6] so that it covers RIGHT JOIN
...
in addition to LEFT JOIN. Problem reported by
[forum:/forumpost/7dee41d32506c4ae|forum post 2025-05-29T15:10:14Z].
FossilOrigin-Name: 29b1e1b97619d03a97ef562a5707929e241d019179b4ff1d0bc2a8c008441431
2025-05-29 18:44:41 +00:00
drh
b163f66de0
Fix a goofy hash function in Lemon. No changes to SQLite itself.
...
FossilOrigin-Name: d6cbabe23d3919d5bde6a83421cdae92125caec09d5c39a648d0305878c6a1dc
2025-05-29 17:46:34 +00:00
drh
3f52361352
Version 3.50.0
...
FossilOrigin-Name: dfc790f998f450d9c35e3ba1c8c89c17466cb559f87b0239e4aab9d34e28f742
2025-05-29 14:26:00 +00:00
drh
b3c1884b65
Do not use a partial index unless the WHERE clause uses one or more columns
...
from the table being indexed. This resolves the issue reported by
[forum:/forumpost/a8704b30f3|forum post 2025-05-28T13:03:40Z]. Test cases
are in TH3.
FossilOrigin-Name: f037ca064daeb81cb386da2a372d8e2d2dce55a3a13bc7bea4968ca51bf2843a
2025-05-28 16:56:23 +00:00
drh
b3bcf489a4
Do not use a partial index if the truth of the WHERE clause does not depend
...
on at least one column from the table being indexed.
FossilOrigin-Name: cbe2a392e45d40778570656d2ef2db43e58ad6453bd9d4b936fecfd963e22736
2025-05-28 14:59:42 +00:00
drh
f08f71a21d
Slight change to tool/split-sqlite3c.tcl to make it compatible with jimsh
...
FossilOrigin-Name: fe670ddda933007386eb10facf4048ee88671f74b1fd41dfc3120beb717b8c9e
2025-05-26 23:20:23 +00:00
drh
f96d44e5de
Fix a bug in the speedtest.tcl testing script that was introduced by
...
[7e9845433ff26bdc]
FossilOrigin-Name: e4ffa86aa6ca82a42933281f6cbfca7bad702797eb8d6e684a1992e68dc1cfb7
2025-05-26 17:29:13 +00:00
stephan
209894c2f5
In the TEA build, enable USE_TCL_STUBS on Mac platforms.
...
FossilOrigin-Name: 0b5415151c9bf558378f83b1a60df3d3760f1aa311895af04e1fb79a8fb29e79
2025-05-26 16:59:49 +00:00
dan
93394ebc27
On OpenBSD, do not test fuzzcheck with ubsan as part of "make devtest".
...
FossilOrigin-Name: a3dabd599c3d3143b67258b307d352968e5f5d4ea0456940d16ae678de8c95eb
2025-05-26 16:17:06 +00:00
drh
8f06aed1df
Avoid calls to sprintf() in Lemon, since OpenBSD hates sprintf().
...
FossilOrigin-Name: ed17858ddf833b6b9c2164f31ee9138a998d28ec1564d09e20deb102eefedbc8
2025-05-26 15:36:43 +00:00
stephan
3f01048954
When detecting TCLLIBDIR, skip over //zipfs paths, as the (file isdirectory) command will actually return true for those, but they're useless for installation purposes. This resolves the tea build's inability to install on stock openbsd.
...
FossilOrigin-Name: 5b29724a3287c9a910f303faf056d0706b66c3e6ba23f9746c11d775c631f374
2025-05-26 15:20:57 +00:00
stephan
45fa2347fe
tclsqlite.c doc typo fix.
...
FossilOrigin-Name: de0dfac1e5ca9d2661674c20664095386f60c77378311507fcba08111df52b38
2025-05-26 07:15:20 +00:00
drh
a01b7adb13
Change json_group_object() so that it ignores entries where the label
...
is NULL. [forum:/forumpost/e5bd251fb5|Forum post e5bd251fb5].
FossilOrigin-Name: 28215d131cd970a2756338579fb6b6091ab155be8f419505cae8ac918956165c
2025-05-24 20:20:20 +00:00
stephan
c5031b578b
vtablog.c doc fixes reported in [forum:416d1e37b2|forum post 416d1e37b2].
...
FossilOrigin-Name: 5d25f62bcd2d754134f608162778b49b0e71c29bd5a6f2461a07caca3d76c7de
2025-05-24 16:01:50 +00:00
drh
81a2f7ba8f
Amend the previous: Set SQLITE_JSON_MAX_DEPTH to 500 on *all* builds
...
of fuzzcheck.
FossilOrigin-Name: c266e38c5b61f47b920027aad418b641ab32cb8a3360dbcfd9f9f29b14fd5375
2025-05-24 01:34:41 +00:00
drh
85f37eba16
Limit JSON recursion depth to 500 when running ASAN in fuzzcheck, to prevent
...
stack overflow on ARM64.
FossilOrigin-Name: 5e96e177a040b46aa55492037ce5dc71ab49d66b45659d739f2ee6c3042f16ef
2025-05-23 20:50:49 +00:00
drh
c1ea1a6d4d
Add the --osmalloc option to the test/speedtest.tcl testing script.
...
Adjust ./configure so that it does not check for malloc_usable_size().
FossilOrigin-Name: 7e9845433ff26bdc5fe8654281d584394b77e3b206d09669b4468e0271c6eb37
2025-05-23 14:52:23 +00:00
dan
96e16194b8
Fix a problem with using streaming iterators with sqlite3changegroup_add_change().
...
FossilOrigin-Name: 3dbde727146d28c316df47c7b5116be7f2476a0a0c893207c2a4ca3ab285cb5e
2025-05-22 18:04:48 +00:00
drh
4a0b7a332f
Clarify some malloc size computations to simplify the proof that they
...
are safe. Remove some code associated with cygwin that is marked "#if 0".
FossilOrigin-Name: ba8184d132a935aa1980fbfb61ff308b93d433d559db4968f9014f7653ac9c6e
2025-05-19 14:50:36 +00:00
drh
79c792d5d9
Make the new sqlite3_setlk_timeout() interface accessible to loadable
...
extensions.
FossilOrigin-Name: 8819b7285b71932327f47d29fa575cfb338e2fccd3f7c2023faf0575bfdb0079
2025-05-19 14:04:48 +00:00
drh
890de76cf5
Remove stray tab characters from source files.
...
FossilOrigin-Name: 298ff5a1dc5dbccaf6acd91731044f478a5ce522745332801708ceee996b01e6
2025-05-19 12:46:08 +00:00
drh
a58208a214
Fix a harmless comment typo
...
FossilOrigin-Name: c4d25acec3c1e28e5a4664a74c263cc0d00e118a6db4b26b51cb0d42d0f2b26f
2025-05-19 12:34:11 +00:00
drh
acf95a3217
Adjust the tool/warnings.sh script so that it works on the latest versions
...
of clang on Mac.
FossilOrigin-Name: 05a3dd9a179193d00968329152c8ffe6532f0cbdad7d19b47af32aebc0cd0d9e
2025-05-19 11:08:30 +00:00
stephan
953e450e8e
Latest teaish pieces, most significantly for tcl portability fixes. Move autoconf/teaish/autosetup/... to autosetup/teaish/. to simplify maintenance and deployment via the autoconf bundle.
...
FossilOrigin-Name: 381d3e82e831bedee56108fb585880d802c4d7d50b0804d909a33ff15a3be185
2025-05-17 11:06:02 +00:00
stephan
c953cb6b3b
Minor tcl doc update.
...
FossilOrigin-Name: 43259e8c3fab13b4597cdd1c670df00ec756a6fefdeb7d4ba2e0644e4ad47113
2025-05-17 10:35:11 +00:00
stephan
9bb2548e3e
Rename feature-tests.tcl to feature.tcl. Haiku tcl portability fixes.
...
FossilOrigin-Name: 15bd9e581a6d6ebe281b091adc04dca4d1c7fa9bbb582bcbab8c401b4f976753
2025-05-17 10:32:48 +00:00
stephan
1e24694b59
Latest upstream teaish pieces for minor fixes. Restructure this copy of teaish to simplify maintenance and the autoconf bundle build.
...
FossilOrigin-Name: 2b8d9b75ec5fe96cb5d06a3464fd4eb9a53018b7b548fedcd6cdbc46cdb55bdc
2025-05-17 07:02:06 +00:00
drh
972a0f5e8d
Improved version of the previous check-in.
...
FossilOrigin-Name: 036c97e36cb36a2ac765a8e8539433dcb63f69155d4c24857f84faa44eed6eb5
2025-05-16 18:19:11 +00:00
drh
cd64392301
Fix the optimization of check-in [663f5dd32d9db832] that strives to avoid
...
duplicate compuations in the GROUP BY clause so that it works even if the
GROUP BY term is a subquery on the RHS of a LEFT JOIN. Problem found
by dbsqlfuzz. Test cases in TH3.
FossilOrigin-Name: 955a026996b93e530ca5b566689cc646b31d3b9b5a5837897a58452d70f6d942
2025-05-16 17:30:20 +00:00
drh
cecf833325
Add the --enablefk option to the "changeset apply" command of the
...
changeset program.
FossilOrigin-Name: e98d46d436f8d251ae0da5ee85fd856aca3b57cd48d1be31fa6ca88fe72cad00
2025-05-15 18:50:19 +00:00
drh
c638017280
Enhance the "changeset" utility program with new command-line options for
...
the "changeset apply" command.
FossilOrigin-Name: 428daca4f1b3e1a33b7e2f5acf114fa6136d46555e9947e2e88ea107bfec5e4f
2025-05-15 17:33:32 +00:00
drh
4165fd8a86
Rework the showHelp() function in the CLI implementation so that its
...
purpose and operation are well described by the header commit. Omit
the use of enums that cause issues for MSVC 2025.
FossilOrigin-Name: 336ceeccc6f85bd78f4a26648af7edf9056d569a767b4120f125a02b2090a349
2025-05-15 11:20:54 +00:00
drh
691b44a1b3
Back out the "low-quality index" query planner hack of check-in
...
[bcac937526d9a6ef]. Subsequent query planner enhancements for dealing
with star-queries make that change unnecessary and the change was recently
found to cause a performance regression in an unrelated query.
Also fix a typo in a debugging message.
FossilOrigin-Name: e7dcf25efae364b7cdf9eb8265803c816c8b8557e4a7684da428badc6ffb3875
2025-05-14 16:40:05 +00:00
drh
c02ac7b9d7
Fix trunk fork.
...
FossilOrigin-Name: 53644c42c5ee40e905a72bb014515e5e30265577d543eeca09139800822b5b42
2025-05-13 19:06:11 +00:00
stephan
186fd30436
Adjust the strftime() test in test/date4.test to remove flags not supported in musl libc if that environment is detected.
...
FossilOrigin-Name: fc254c1eb784c79a371bf961945a18a680982cdcd3fdcd7e6bb481712fe21cf8
2025-05-13 18:58:56 +00:00
drh
494830ca8e
First cut at enhancing the fsdir virtual table so that it works with
...
unicode characters on Windows.
FossilOrigin-Name: c9e04dadfdf6c860631ce5603693add565ff2033aa25af5736302af7045fc91e
2025-05-13 16:58:36 +00:00
drh
0df6c5b9a7
Omit the unused readdir_r() routine from test_windirent.c
...
FossilOrigin-Name: f9a216e3ad1b3bc9be350aad5ef3dc8b3534d3ee67d160bfedda81a61295320c
2025-05-13 15:09:13 +00:00
stephan
0a0777d845
Session extension doc typo fix reported in [forum:75e9408acb|forum post 75e9408acb].
...
FossilOrigin-Name: b96cfff52b4f364388f168198e999ae2407c4afbc7b020f8bb350ab103ffb55c
2025-05-12 19:12:50 +00:00
drh
a0b34dcfc0
Fix a coding mistake in vfstrace.
...
FossilOrigin-Name: f0054cc0bce4ed735796da1ea68b7773a582042bdd60fdae4e1af4c592104d15
2025-05-12 11:48:39 +00:00
drh
eb55814c62
Remove a redundant typedef from the sqlite3_rsync.c source file.
...
FossilOrigin-Name: b4c37c6bcc644e21a29955e31151ea22a07627e524ce913afd3d2d6eeb7e0bb6
2025-05-11 10:48:10 +00:00
drh
94e22bc077
Provide the SQLITE_BUG_COMPATIBLE_20250510 compile-time option that restores
...
the JSON5 bug fixed in the previous check-in, in case some applications need
it for legacy compatibility.
FossilOrigin-Name: 491cf31904fdbc9567b838d1ba27901e75f8ea3a117043017d08354bb09f9711
2025-05-10 17:09:53 +00:00
drh
844b457950
Add enforcement of the obscure JSON5 syntax rule that the \0 escape
...
sequence must not be followed by a digit.
[forum:/forumpost/c061e87faf7d1c55|Forum post c061e87faf].
FossilOrigin-Name: 83c7477f2b9b0d6cb54cf6b14bf3c8ef4807e4bddc7986d275cf6717da8606b7
2025-05-10 15:53:17 +00:00
drh
733aff3be8
Fix PRAGMA trusted_schema=OFF and similar so that it restricts the kinds
...
of functions in CHECK constraints that the documentation says it does. It
was letting through some function that it ought not have. This is a
defect in [5720924cb07766cd]. See
[forum:/forumpost/3fa9d44c0b381342|forum thread 2025-05-08T08:50Z].
Additional test cases will be added separately.
FossilOrigin-Name: 25920beebf71ebc9a1bb9f56932280c9e03390f26fe9da2258f950979b238ce6
2025-05-08 16:18:18 +00:00
stephan
cc28137e08
Internal doc typo fix. No code changes.
...
FossilOrigin-Name: ac2aa39f7e3ae7ac921fac6566186939a1282f80ced5b3e3d5006a77ecf583ff
2025-05-08 13:51:55 +00:00
drh
f087b6ace3
Fix a harmless warning about and oversize shift operation on malformed JSONB
...
inputs. [https://issues.oss-fuzz.com/issues/415850463 |OSSFuzz 415850463].
FossilOrigin-Name: cf8b55b3b6f0b73158e21731a206d5a8d8d9892989d91171a11c6dbbee34b338
2025-05-07 17:13:30 +00:00
dan
f67058367b
Add test cases for the NOT NULL/IS NULL optimization in CHECK constraints fix.
...
FossilOrigin-Name: 6eb2939a6093c0796910645172d80c53055559dd57c012f1dc815d89fbf84447
2025-05-06 17:56:32 +00:00
drh
288f356854
Fix a bug in the NOT NULL/IS NULL optimization of check-in [cb94350185f555c3]
...
that can cause invalid data to be used for a column if that column has a
CHECK constraint that includes the NOT NULL or IS NULL operator.
Problem discovered by the
[https://issues.chromium.org/issues/415397143 |Chromium fuzzer]. Never
seen in the wild, as far as anybody knows.
FossilOrigin-Name: 2adaee9aa90f280a406007695fbc4a314806584c93d6b62b46c031492b31ec27
2025-05-06 17:53:27 +00:00
drh
ad39fa81af
Fix the sqlite3VdbeTypeofColumn() function so that it works correctly
...
even when SQLITE_DEBUG is defined.
FossilOrigin-Name: 1d5021533ed688d7a815ce75b338c72f577c14554027f88a21419935a9e68239
2025-05-06 16:28:44 +00:00
drh
3b51a1ac01
Fix console-I/O on Windows for DEBUG=3 builds. Broken by
...
[925e97e6f4238f02].
FossilOrigin-Name: ccef4f7058928943be9204b2e53baaf791021e78e538396ba9f2a1d76323e8cf
2025-05-06 15:39:39 +00:00
drh
d7324103b1
Enhance sqlite3_rsync so that if the first attempt to invoke a copy
...
of itself on the remote system using ssh fails, try again after
augmenting the PATH. This enables sqlite3_rsync to work without the
--exe option when the remote system is a Mac.
FossilOrigin-Name: 38d4c94d8c7802101ef3bfb411002f9497fdbbbd2b4d3514cef5b76ffd66f75b
2025-05-03 15:17:21 +00:00
drh
37b76bac18
Fix a harmless redundant variable declaration in sqlite3_rsync.
...
FossilOrigin-Name: f8f15eff6ae50d569ed13a3b18f33eaa43453c0cb80b6007df38e880b62f45d0
2025-05-03 10:55:47 +00:00
drh
e618674714
Addition summary results output when using -vvv on sqlite3_rsync.
...
FossilOrigin-Name: c702999cfac37fdcae64d261408e58d1f49fee65434fe346db6a2a6c7f8ac54e
2025-05-03 10:49:39 +00:00
drh
d7b83224bb
Promote the --protocol option to sqlite3_rsync from being an undocumented
...
debug option to being a supported and user-visible option. This is
sometimes needed to work around bugs in prior versions running on the
remote.
FossilOrigin-Name: 4855e04e44e8fce2d6e37dd468eb6e9f4565c36cbc964156e65ac0449d7c212f
2025-05-03 10:35:32 +00:00
drh
f4d435dc0d
Enhance sqlite3_rsync (in a backwards-compatible way) so that it has the
...
ability to send hashes for blocks of pages in addition to individual pages.
By judicious use of this capability, network bandwidth requirement to sync two
similar databases is reduced.
FossilOrigin-Name: e5d87aaa8fe1e8c8cb63813d26851183e77809a3d36e4c16c37f88b4b4724d6d
2025-05-03 08:17:46 +00:00
drh
e2826db73a
Improvements to protocol negotiation.
...
FossilOrigin-Name: 4f5a06e42010c3e047429f736ffb8e2e89a1eb599277c176945b57710f6713ca
2025-05-03 07:00:51 +00:00
drh
5f4d013732
Clean up command-line parsing. Add the undocumented
...
-protocol option for debugging.
FossilOrigin-Name: 2a52b174e6e91cd7cfca0b20b39cdd231f377c7bc073f4223574556b94b16aa5
2025-05-02 23:50:30 +00:00
drh
bef9565485
Now appears to be working. More testing needed. Refinement of the
...
version-2 algorithm needed.
FossilOrigin-Name: cb035181d9fb5909696b8ec8f9c3eeb7a7dfb4b50e82e1d3f2d5ad150afcc0ff
2025-05-02 22:25:40 +00:00
drh
f124ddf36a
Bug fixes. Added new debugging features to better visualize the
...
protocol.
FossilOrigin-Name: c70330668690e7c3c55ae34137d5b2c91871432004b82b2b23a89fc3f1322a62
2025-05-02 18:32:46 +00:00
drh
fbafaa5619
This is the start of an experiment in getting sqlite3_rsync to use less
...
bandwidth when the two databases are very similar, by sending hashes
over blocks of pages initially, rather than over individual pages, then
requesting more detail when hashes do not match.
FossilOrigin-Name: 266b4b8f0104bd4b1cff87ed78b0223006bf661a9650294a2b330d50c7ee8a0c
2025-05-02 17:39:21 +00:00
drh
5db695197b
Do not allow sqlite3_rsync to convert the replica from WAL-mode into
...
DELETE-mode, as that can disrupt existing clients on the replica side.
DELETE-mode to WAL-mode conversions are allowed, however. See
[forum:/forumpost/6b575b66156673ee|forum thread 6b575b66156].
FossilOrigin-Name: 660a035b6ce6684d429b882133e032181cc1664f4efadf1bc0e4ae27d45071c4
2025-05-02 11:18:09 +00:00
drh
2bd983a974
Enhance sqlite3_rsync so that, by default, it will sync non-WAL-mode
...
database files. Add a new command-line option --wal-only that restricts
the sync to WAL-mode databases only (the former default). Improve
command-line option parsing so that only a single "-" is required before
each option.
FossilOrigin-Name: 4b53603fe468c0c28b818762917e41bdd870de6d4cc143688f1cdea3136c81a4
2025-05-01 18:07:27 +00:00
drh
391f70c527
Allow sqlite3_rsync to work on non-WAL-mode databases, as long as the
...
--wal-only flag is not used.
FossilOrigin-Name: e4126dcd1eba4f040a7c07102d34692287b74b41a3437a3b9d15c4f8c9d4e6fd
2025-05-01 16:07:52 +00:00
drh
f23a61258b
Fix a harmless problem in the CLI in which SQL errors that occur during
...
the ".schema" command are properly ignored, yes still appear in the ".log"
output. [forum:/forumpost/42fe6520b803be51|Forum post 42fe6520b8]
FossilOrigin-Name: 20abf1ec107f942e4527901685d61283c9c2fe7bcefad63dbf5c6cbf050da849
2025-04-30 14:37:00 +00:00
drh
88ed1806a4
Fix an issue in Bloom filters on RHS subsqueries to IN operators.
...
See [forum:/forumpost/792a09cb3df9e69f|forum post 792a09cb3d] for
a description of the problem. Also improve comments related
to [baa83b460c677c21] which was origin of the problem.
FossilOrigin-Name: cdef486e212fe4b26605065d9cff08f608cb80df48ee64e4be63637769bdfacc
2025-04-30 12:48:20 +00:00
stephan
a20c09c477
Upstream teaish for a tcl portability fix on Haiku and a much nicer impl of proj-tclConfig-sh-to-autosetup.
...
FossilOrigin-Name: ca0d30a43b3dfb95dd6b491f592031a053b0b5e95361ffe01ec8bd56d5e2d110
2025-04-29 17:30:51 +00:00
drh
5a9a2d8526
Remove the run-fuzzcheck makefile targets, since testrunner now
...
accomplishes that for us, and does a better job of it.
FossilOrigin-Name: 3ffd867ed31cd0779aa92b5e8b71592a8e7224977f9da8e5d6793a78bbb80070
2025-04-29 16:30:58 +00:00
drh
2ba946b341
Add the "--fuzzdb FILENAME" to testrunner.tcl as an alternative to setting
...
the FUZZDB environment variable (as that can be awkward to do on Windows).
Further improvements to the testrunner.tcl documentation.
FossilOrigin-Name: 6fb84156a262ff89d1a2d1df6fbfac4c1a43fb55b9d15205508662e2c9b0894f
2025-04-29 14:23:21 +00:00
drh
873fc5dff2
Update testrunner.tcl documentation. Fix typo in testrunner.tcl output.
...
FossilOrigin-Name: ba8800b4ba0a690c89d9fb96bb9a0d8789d04160ff9c47ea9afb2b403bec7f0b
2025-04-29 11:35:51 +00:00
drh
c171d7624e
Improved --explain display of FUZZDB test plans in testrunner.tcl.
...
FossilOrigin-Name: 42bdd7262ec4f8163263e0535c2cc35b526754d77e1f3ccf5b73b0f44d470d9c
2025-04-29 10:41:16 +00:00
drh
ece7709f18
Do not run FUZZDB on either Windows-Memdebug or Windows-Win32Heap.
...
FossilOrigin-Name: 10d8401d59136dda7051af0da398b06a18031560f2734f4fa347d339765d2089
2025-04-29 10:29:35 +00:00
drh
8a68ab963e
Make testrunner.tcl more restrictive about which configurations run
...
fuzzcheck-asan and fuzzcheck-ubsan.
FossilOrigin-Name: 785599394dde0fb36ae2e07d611f9523a05a0817dbd8c416582b3b682dbfa4ff
2025-04-29 01:37:31 +00:00
drh
246dc92354
Testrunner.tcl now runs fuzzcheck-asan and fuzzcheck-ubsan tests.
...
FossilOrigin-Name: 3d8f3a255843c063157265702b76d40c38c774d29d658eea2d77efac92ac8789
2025-04-28 19:15:46 +00:00
drh
d4cc3a42e2
If the FUZZDB environment variable is set when running testrunner.tcl and
...
that env-var points to a fuzzcheck database, then suppliment the fuzzcheck
tests with that extra database.
FossilOrigin-Name: c08530dd6a71cb547d164e2313657c917f280e7988211bf199c8776e78a4e2a6
2025-04-28 17:56:23 +00:00
drh
1365bcffbf
Enhance testrunner.tcl so that it does not build testfixture unnecessarily -
...
if the pattern does not match any TCL test.
FossilOrigin-Name: 896d767f1cba64bda7b91b0daebd60ebe4457a58d762da443bf61cf5b39ad2d9
2025-04-28 16:28:00 +00:00
drh
7fec7c96c4
Fix testrunner.tcl so that it honors pattern matches in non-testfixture
...
tests, such as fuzzcheck and sessionfuzz.
FossilOrigin-Name: 81857474fe90f50b760c22d61a6ad477642dabe1052390cd1614dcec8adb1376
2025-04-28 16:17:17 +00:00
drh
738443c523
Remove a stray blank line from the test/testrunner.tcl script.
...
FossilOrigin-Name: 7d6005b0d17d86d72757f3578872e82fd12f61ac9160a0277e397df09f6338a9
2025-04-28 15:00:28 +00:00
drh
9112717180
Remove long-obsolete performance testing scripts from the tools/ folder.
...
The test/speedtest.tcl script is what should be used these days. This
is just cruft clean-up.
FossilOrigin-Name: 956af8c294ae5b826a5b645922df07dad360290d19bf2b6a7f74d0a783a3e692
2025-04-28 13:32:46 +00:00
stephan
886f674198
tea: pull in upstream teaish. Consolidate the build definition from the upstream build and this one to ease maintenace. Improve compatibility with historical TEA usage of --with-tcl=... (it insists on a /lib suffix for that path).
...
FossilOrigin-Name: 0ea5993dd8549056d73f3d5447e0a810495ece23a75be8add78fba6842125d85
2025-04-28 09:25:19 +00:00
stephan
c26cde3bfd
proj.tcl: correct the auto-reconfigure rules to include any X=Y passed to configure. Improve handling of quoted CFLAGS.
...
FossilOrigin-Name: 7a2f4f319c90b768c6acc96671a3173c0ef0493180f3c4d5443f1ca03d92f6b4
2025-04-27 06:01:26 +00:00
stephan
c49c7dad89
autoconf/tea: the default value of --threadsafe=X is now based on a pkgconfig query using the target tclsh, which is much more reliable than grepping Tcl's linker flags. Doc touchups.
...
FossilOrigin-Name: 4aeec30443b282f10353cdb9415fdce436287280f0f5d5d6b9917da831744898
2025-04-27 04:21:27 +00:00
drh
0f0450eda3
Fix an off-by-one error in an assert(), discovered by oss-fuzz. This is a
...
harmless error in as much as assert()s are disabled in production builds, and
because the off-by-one only occurs on nonsensical CREATE INDEX statements.
FossilOrigin-Name: 3e627d66ebdef8dfe41bd12a0474d1afca9f50051771774679d25bd1833e69ae
2025-04-25 12:39:32 +00:00
stephan
ef90c4209c
Teaish internal API tweaks and ensure that -encoding utf-8 is used when source'ing test scripts.
...
FossilOrigin-Name: f878f578f8fac95a939e3eabe8b64d5627d2ccd98de1e28081b9bca42ffee027
2025-04-25 11:27:13 +00:00
stephan
d3b39b18d0
Upstream teaish fixes and improvements.
...
FossilOrigin-Name: 235ea2c0e1823fe4324c3890069a9131ebb6de14e55eb56c0e9f42a7e491a699
2025-04-23 14:54:13 +00:00
drh
37f22ff75e
Fix a problem in the fts5matchinfo.test file that prevented it from
...
working on Mac.
FossilOrigin-Name: 5a411c609ba0ee17b1ce5bd0b40b9ded92d76f35933f92b2e02a58a3f169c715
2025-04-22 18:45:40 +00:00
stephan
024818be2b
Latest upstream jimtcl to fix rare segfault cases.
...
FossilOrigin-Name: b6c5516940851bd17706435148253325d1b912a44ae138d2b8ca33e5167418c7
2025-04-22 09:29:53 +00:00
stephan
204d787644
Generic cleanups and fixes in the teaish build.
...
FossilOrigin-Name: 734823a5a8e073b511ebc3f37df3542c1bb734b9b1e1bd50ca3e9df12c4bb89e
2025-04-22 01:01:19 +00:00
drh
d2fd099570
Remove an extra conditional that was inserted earlier today and which
...
is unreachable.
FossilOrigin-Name: 5ea56af2d27611c5a8ea275316d21a02e70032f93243549ae776e9a89edc6229
2025-04-21 23:44:55 +00:00
drh
81cde80f7b
Further improvements to the decision of whether or not a BLOB input
...
is JSONB.
FossilOrigin-Name: 6538813cb89f6109727481e29633e2e98f98e0257c58695e3b53e8ce237d9195
2025-04-21 20:58:49 +00:00
drh
cbe4a26e02
Do a better job of providing bug compatibility with SQLite 3.44.0. See
...
[forum:/forumpost/07e206fcd6|forum thread 07e206fcd6] for background.
FossilOrigin-Name: 614d061b32c3bdf4825323d6f8e8a98624e4eeeb96dd442d8e365527122ed3bc
2025-04-21 19:53:12 +00:00
dan
c4e7cf68ce
Update to comments in sqlite3session.h.
...
FossilOrigin-Name: ea9acb5573f4d71a314e4467d30477a1d01c8db648985750a42b3c047f404c9c
2025-04-19 20:08:04 +00:00
drh
f857482ed1
Add an appropriate _declspec to the declaration of the sqlite3_dbdata_init()
...
function in the recovery extension.
FossilOrigin-Name: 00313d15270b36fce44f7784c97ddc42517e23c209c1ccc4d814ef06b11528c0
2025-04-18 14:47:56 +00:00
stephan
31e08190ab
Upstream teaish, which simplifies how extension metadata are initialized and shrinks proj.tcl by 4k.
...
FossilOrigin-Name: c72c00d34d70b36f847af19a2382299746448b5dd94a616f6b567389c5694c17
2025-04-17 19:41:37 +00:00
drh
10744c61ad
When logging errors using sqlite3_log() and the error text includes the
...
text of an SQL statement, but the SQL statement text at the end so that if
the error message buffer overflows it is the SQL statement text that gets
truncated, not the statement of the problem.
FossilOrigin-Name: de0968226effb79f9d25539da7882fa5475e4ff2410870b45a63a6545deb5979
2025-04-17 19:01:54 +00:00
drh
56747d1840
Increase the size of the output buffer for sqlite3_log().
...
FossilOrigin-Name: a64e8491c9863f890daa9f5d8f678728dc0d00bc1f3c238b50214ec545450fcf
2025-04-17 17:46:28 +00:00
stephan
680a9584c6
Add docs explaining how to test the teaish build.
...
FossilOrigin-Name: b53619ddb74fa250f03564d04e732248b4161d4d10d6f02268b7c95382d110ff
2025-04-16 22:25:02 +00:00
stephan
c264a0fd95
Latest upstream teaish. Most notably it adds the ability for the extension to specify a minimum Tcl version, and this build now enforces a minimum Tcl of 8.6.
...
FossilOrigin-Name: c86315e538f4d75161faa72673927cde8be080c983f04a98491d1add14615038
2025-04-16 21:53:01 +00:00
stephan
259532c0ad
Update doc/tcl-extension-testing.md for Unix systems, consolidating the Tcl 8.x and 9.x sections.
...
FossilOrigin-Name: c4c5dcb79c57f6e38cfe9b68b00e60e42d03ef30aeaefc5bf9dafed994849e1d
2025-04-16 17:47:16 +00:00
drh
6fe2a9a8f1
Attempt to provide EBCDIC translations to the tables in the JSON
...
implementation. The SQLite developers do not have access to any
computers using EBCDIC and so have no way to test this patch, and
cannot vouch for its accuracy.
FossilOrigin-Name: 84e698f38429c142caaa66ac086410f2035691b2ad39ad2fc4e0ebc31dd58a5b
2025-04-16 17:36:26 +00:00
stephan
cd83a85e05
Change the target libdir name in the teaish build to match historical tea builds.
...
FossilOrigin-Name: 8ae437301ed0cf71ef0e07be07917d9702221d27bdc98491209d8f28c7a500e2
2025-04-16 15:40:40 +00:00
stephan
b70d450426
A portability fix for proj.tcl: some Tcl builds do not like (array set x $someArray). Also better --mandir handling on Haiku (where the former problem was found).7
...
FossilOrigin-Name: 849534499d9b2056c0eabef7f3e65f79f58e8a6fefb3f7603de44774da7166b5
2025-04-16 14:21:48 +00:00
stephan
b1cc4aeb61
Latest upstream teaish for fixes and improvements.
...
FossilOrigin-Name: 8f9148b33e01aa7963140704ef16e4304799e5842fa60e55373ccdabe8e3616d
2025-04-16 12:48:27 +00:00
drh
0243ca8245
Correctly handle the case of a multi-column UNIQUE constraint that contains
...
the ROWID as one of it columns, and then the columns of that UNIQUE are
used in a row-value IN operator as a WHERE clause constraint. Reported by
[forum:/forumpost/b9647a113b465950|forum post b9647a113b]. Problem
introduced by [723f1be3d4a905a6], part of ticket [da78413751863].
FossilOrigin-Name: d22475b81c4e26ccc50f3b5626d43b32f7a2de34e5a764539554665bdda735d5
2025-04-15 21:59:38 +00:00
drh
8488789d74
Fix a minor typo in a code comment.
...
FossilOrigin-Name: 158e8c4fd7bdfc1cd4c0135abecd0d00994cd4027cf74ce6e5cf73d76475ae95
2025-04-15 19:53:36 +00:00
stephan
850289bf1e
Cleanups and refactoring in proj.tcl and teaish.
...
FossilOrigin-Name: 6b7ca8176e8c1b5e99e177c3daaba47b0674fa2f82d91754e7a8f66460ca8419
2025-04-15 15:20:30 +00:00
dan
136afcfcc1
Avoid a potential integer overflow in non-default builds of the fts3 matchinfo() function.
...
FossilOrigin-Name: aecc0100cef3ea83feed558dbe34dd6313721fa54052ee1ed529741cec8cacda
2025-04-15 11:06:37 +00:00
stephan
56da8772bd
Further cleanups and code consolidation between teaish.tcl and sqlite-config.tcl parts.
...
FossilOrigin-Name: 07e9ceee51380ee25e580178fa82030be5d2b65d4f4b4dc86c94b21f7f04f291
2025-04-15 02:02:36 +00:00
stephan
dc2d79f80f
Slight simplifications in the teaish build.
...
FossilOrigin-Name: 6b2d0e09e4806b5731764192782ec7e1ad595c529202a684d23bcfe2fae559d7
2025-04-15 00:47:31 +00:00
stephan
5950eb8aa7
Update teaish to the latest upstream copy. Move some of its utility code into proj.tcl for reuse in the top-level configure bits.
...
FossilOrigin-Name: 921c5ea76925be911222ac5f2887b8a967ff47b1aa43e196231e6168a3f9cb88
2025-04-14 23:52:11 +00:00
drh
483e1181c5
Improved estimate on the number of output rows in a recursive common table expression
...
that uses the UNION operator. Follow-up to [f911f1c4977fbcae] and it's output row
estimate changes associated with DISTINCT queries.
FossilOrigin-Name: 92513f6bce7ecc778e78af3a77bc66ff65585fffa2e3138f8acb9e617121eeb0
2025-04-14 19:43:30 +00:00
stephan
c801f8954e
JNI: part 3 (of 3) of typos and Java style tweaks suggested in [forum:99ac7961d82f57f3|forum post 99ac7961d82f57f3]. Tested with jdk v8 and v21.
...
FossilOrigin-Name: 914d4c9d6c26536ca14be80eee6c54af4311eac6bf88b327738075275f4b77da
2025-04-14 13:31:18 +00:00
stephan
d01239f379
JNI: part 2 of typos and Java style tweaks suggested in [forum:99ac7961d82f57f3|forum post 99ac7961d82f57f3].
...
FossilOrigin-Name: 5e6e9aee5b43e6ae98e78293a0da30e82ad18c3c9c03fc6298240233ddadb2a2
2025-04-14 12:09:24 +00:00
stephan
6cabff0c22
JNI: part 1 of typos and Java style tweaks suggested in [forum:99ac7961d82f57f3|forum post 99ac7961d82f57f3].
...
FossilOrigin-Name: ab00af4e48501b0413650df31147866a805c34b7ecf506d1e208bc3ae6c2ef28
2025-04-14 11:31:10 +00:00
stephan
6964b2f737
Doc/help text tweaks in autoconf/tea.
...
FossilOrigin-Name: d6889f6b9aa70bc90f71883b3e7ba359162477afe5048dacb7dfa11733ad1e5a
2025-04-14 10:20:41 +00:00
stephan
a572bbfc7c
Minor cleanups and fixes in the autoconf/tea pieces.
...
FossilOrigin-Name: 4d6536bd0ad333854309e825feaca26fdd13ac4458c7ccfbe77fc76cc5a968bc
2025-04-14 10:18:40 +00:00
stephan
a5198b2e13
Latest upstream teaish, which restructures the teaish files a bit.
...
FossilOrigin-Name: 4f54f7d07d31938f271bc5d04a40cb1f7b5e6ea48e78ad06b7cc65483533f54e
2025-04-13 16:22:58 +00:00
stephan
6b4dcad514
tea build: use autosetup's file-normalize instead of Tcl's (file normalize) because the latter throws on cygwin for names like '.' and './'. Update a doc URL.
...
FossilOrigin-Name: 0fe77341a0f1e869a909623cdd07b03355b90d302b4f8a875e520befab88ce35
2025-04-12 21:47:18 +00:00
stephan
337f703c54
Port autoconf/tea from the autotools to autosetup.
...
FossilOrigin-Name: 691708642bf1cac562274a6df427d7c631aa4401dfbe98711963cf89203fb104
2025-04-12 21:24:10 +00:00
stephan
837dc09bce
Move the post-configure dot-in-file validation from sqlite-config.tcl to proj.tcl for reuse in the tea port and other downstream trees.
...
FossilOrigin-Name: 0bac496d5c92c979295e702efc01803f6985b54d3d8ca30dce077c9776f7dcf2
2025-04-12 19:26:18 +00:00
stephan
6b0429676e
Doc typo fix.
...
FossilOrigin-Name: 10b917040b167de6aba6ee434b4e982580e690bbfe80521e34236b29d8e00b7d
2025-04-12 18:37:53 +00:00
stephan
807186f1d3
Eliminate a duplicate -lz flag in the teaish build.
...
FossilOrigin-Name: 5efb372c9b0d46625cb17aa3e48ead0da2483ca9d04d1507c9d728763f1ee959
2025-04-12 10:33:12 +00:00
stephan
a69b2b2973
Add missing teaish.test.tcl.
...
FossilOrigin-Name: 3946a3ad9cd2d03b6940621066a8e5be0bd6fade88cbf6cb2823425a90eba9c9
2025-04-12 03:20:42 +00:00
stephan
22a85a418e
Add missing exports of various LDFLAGS and CFLAGS for the teaish build.
...
FossilOrigin-Name: 7462b1c66e8b3799ba1d73a1b815993e1c511ac0b7263e747ca0186d263ad001
2025-04-12 03:08:13 +00:00
stephan
71b7e44869
Correct out-of-tree build for autoconf/tea.
...
FossilOrigin-Name: 955b516618a34eac69da25fc7405015701a72f3cb918fca0cda7d316f6c3db9a
2025-04-12 02:44:02 +00:00
stephan
19b0701087
Initial port of the TEA build (autoconf/tea) from autotools to autosetup.
...
FossilOrigin-Name: 95227341cf290ca6f20b5ff7e707a28b59f87784947425c3fd1d8e5e7eb878a4
2025-04-12 02:30:04 +00:00
dan
0aa95099f5
Fix a memory leak in sqlite3session_diff().
...
FossilOrigin-Name: a6cbc5db1c4973ea236874bd9c24cd86dc48fbc7a10e424896c0407c7c32ce6a
2025-04-10 20:52:47 +00:00
drh
a863bafba7
Improved detection of run-time errors (ex: OOM errors) in speedtest1.
...
FossilOrigin-Name: 0e5e0e2f558a417d57c01a2d62cb2117d2adf6ddbc62e6a0208ae23f19b05347
2025-04-10 19:54:56 +00:00
drh
f95e964b6b
Provide new command-line options --hard-heap-limit and --soft-heap-limit
...
for speedtest1.
FossilOrigin-Name: 578e9fedeaaacd152ae1988920e6c9a0c43f664e2f9461c0994ba427ae1688e7
2025-04-10 19:39:34 +00:00
drh
e4856e86cd
Be sure that speedtest1 reports any errors that it encounters while
...
running the speed tests.
FossilOrigin-Name: 8c8b1a99bc888a5db637900aa3c8ef1b8c748c527580c825a25df1008afcf9e0
2025-04-10 19:03:42 +00:00
dan
7b1afecf53
Fix a comment in sessionD.test.
...
FossilOrigin-Name: 3516354ee57b683c134de206f5321f064f9cb627aa12ba6fde98e59a9093c50c
2025-04-10 17:25:57 +00:00
dan
da00cc101c
Improve the error messages returned by sqlite3session_diff().
...
FossilOrigin-Name: a3217cdb75fd305705856f6504f8816c2b6b0a10907725cb74d025a5c4e369b8
2025-04-10 16:48:04 +00:00
dan
08122e96fe
Fix an obscure problem allowing the propagate-constants optimization to improperly substitute a column of a sub-query with NONE affinity. [forum:/forumpost/0109bca824|Forum post 2025-04-08T14:18:45Z].
...
FossilOrigin-Name: 979f384a93d25e24f760469681618101feaab873738e1b52a7d4b818f7c527d9
2025-04-10 15:01:58 +00:00
dan
2d1c71abeb
Fix an obscure problem allowing the propagate-constants optimization to improperly substitute a column of a sub-query with NONE affinity.
...
FossilOrigin-Name: d82725dcaec7437f37fc15dfb492b51a4f9dbbbcaea04e387d9471b7d291cde2
2025-04-10 14:53:32 +00:00
drh
8a6f89c845
Remove unnecessary "www." prefixes on domain names in URLs.
...
FossilOrigin-Name: 20acd630b91609725794ce84f9eda01d5f3c898407f0948264830851d25ccaa6
2025-04-10 10:18:07 +00:00
stephan
509d899a2d
Doc updates in proj.tcl. Improve configure check for whether fdatasync or nanosleep require -lrt. Remove references to 'tcl-config' build mode from sqlite-config.tcl, as that build is now implemented without a depency on sqlite-config.tcl because the TEA build's needs are considerably more modest.
...
FossilOrigin-Name: 394bef54411c81fd8ca3aafc13ec2a774e9ff56c7282d90b8425cc8f383aa74c
2025-04-09 13:32:15 +00:00
drh
fda6e50ac8
Remove an incorrect ALWAYS() macro. [forum:/forumpost/23875495059357a2|Forum post 2025-04-08T19:16:42Z].
...
FossilOrigin-Name: 062cca9c63ef6d7b9a525df69391e9b032284703aeb45a18c728305dd5957c43
2025-04-08 20:00:33 +00:00
dan
de93449908
Have sqlite3session_diff() automatically attach tables to session objects, as it has always been documented to do.
...
FossilOrigin-Name: 99827144f112303e27a829c990b1858d227bd7369095100a435c367637985fad
2025-04-08 17:18:01 +00:00
dan
6864f78fdf
Have sqlite3session_diff() automatically attach tables to session objects, as it has always been documented to do.
...
FossilOrigin-Name: ec1641858ec48d96f5a2ddce4575ebd40a18932d69831fdb4eafc9acf508f216
2025-04-08 15:58:19 +00:00
stephan
f72c2fd19e
During the post-configure validation of @VAR@ references, ignore commented-out references in files which seem (based on their name) to be makefiles, as it's sometimes handy to comment-out such vars during development of a configure script and its corresponding makefile(s).
...
FossilOrigin-Name: 25d936b7b27d33b18bdac245bb193f7fbeaa9a7e7c320e47bdd433e6b371aef9
2025-04-07 18:29:57 +00:00
stephan
d2b9cc099d
Rename proj-current-proc-name to proj-current-scope and have it distinguish between global scope and an invalid scope level.
...
FossilOrigin-Name: 1c7e5b6cab0f8c8d8ae4a1503ea04f2c65943b0788f3996c015fc163ae979a66
2025-04-07 02:16:26 +00:00
stephan
7d83ed04b1
Make it legal to call proj-fatal from the global scope.
...
FossilOrigin-Name: f1cf373b73f0e97767d6f3c9dd78ce04360eae1ed22f74bea4aeb922f3ca5b5b
2025-04-07 02:08:55 +00:00
drh
29c7c8b913
Fix a harmless code typo introduced by [b57e3c3db00a6bc6] and reported by
...
[forum:/forumpost/09957d8b2a|forum post 09957d8b2a].
FossilOrigin-Name: f3a6cdb89b13bc173cfce9526f836600469b0242fe62b8f92f8747896d7d47bb
2025-04-06 10:22:26 +00:00
stephan
8aaf23a15e
Extend proj-dot-ins-append to provide a way to use it for the special-case emcc.sh.in handling.
...
FossilOrigin-Name: 0e98bbddc7b5e39310a8bf345521d05fdbcc906e279c23aa24cf30489ceeeff8
2025-04-05 09:17:13 +00:00
stephan
bc969569a2
Add a note that SQLite's copy of proj.tcl can be considered the "canonical copy" for practical purposes. We now have at least 3 copies of it floating around in other trees.
...
FossilOrigin-Name: 77d2c8e9ef9627c87c05beaf5615958628bd47c393c030ff6fcca607ba43e71f
2025-04-05 08:48:19 +00:00
stephan
4d411659c4
Move the automatic reconfigure tcl code from sqlite-config.tcl to proj.tcl so that the TEA bits can reuse it.
...
FossilOrigin-Name: 52839db2fcdf37631d13c05165ecb551a89c05bd6836f62d62f8f0b7bbe6c6cd
2025-04-05 07:12:41 +00:00
stephan
7cf1b29065
Refactor proj-make-from-dot-in and friends to be more useful and remove some annoying limitations.
...
FossilOrigin-Name: 501ff84e1263e2b026b0ca5f043bcc912ea935229b625b113b7402955df20dd3
2025-04-05 02:59:37 +00:00
stephan
86527e84e6
Rename makefile var libtclsqlite3.SO to libtclsqlite3.DLL for consistency.
...
FossilOrigin-Name: 6fb364c853be84c8d1f20497a2cae6e8f06a1d10ae364e3b011cadeaa3e0244b
2025-04-04 23:12:32 +00:00
stephan
d09fc81939
Correct a makefile var name type in the configure script, introduced in [4947c1c782].
...
FossilOrigin-Name: 84d77c5fe84d99d4af695a4da424b7dfc65f2343624e201736b7d673b2a8f179
2025-04-04 22:59:32 +00:00
stephan
205d9960cb
Add more vars to the tclConfig.sh-to-tcl exporter, for use in the TEA build.
...
FossilOrigin-Name: b0e1e49c7a4af526143214ce7dee97ef0da5e7baa85728fc667b1f7607693ab7
2025-04-04 22:14:18 +00:00
stephan
31076c5f26
Account for the Mac-specific -instal_name linker flag, which is apparently needed for linking some third-party code. See [forum:5651662b8875ec0a|forum post 5651662b8875ec0a].
...
FossilOrigin-Name: 4947c1c78298253a51939adf6cf70ee233075db6d60cd7a183a4162c926e667c
2025-04-04 20:50:00 +00:00
stephan
24fe85b99a
Adapt the --all flag to apply to a different set of features, and default to enabled, for the tcl-extension build.
...
FossilOrigin-Name: b229c8f65acf41b57afacfde712c3a8040d3bd5139bd5e30d450669658185ddd
2025-04-04 16:17:02 +00:00
stephan
91db54f07a
Improve --all flag handling so that combinations of (--all --disable-FEATURE) and (--disable-all --FEATURE) work more intuitively. Add missing handling of the --fts3 flag (it was accepted but ignored before). Add TCL_LIBS to the set of vars exported via tclConfig.sh for use in the tea build.
...
FossilOrigin-Name: 26ef0ff4bfbb4425baa26fa5c8420f5da0603c38ef651104e566c7dc85bfaa3a
2025-04-04 15:41:19 +00:00
jan.nijtmans
82d05b7b54
The win32lock and win32longpath tests don't work on Cygwin
...
FossilOrigin-Name: 32ef3f26e7fb34dfdb23617a19bb9baa2e4c3dca564a88850b58a0fbe6446cf8
2025-04-04 13:23:03 +00:00
stephan
283d0ee4c6
Minor configure-internal cleanups to support the autosetup port of the TEA build.
...
FossilOrigin-Name: 244c2b75c10c68bc0499d60b707a925836a4b9d490813785587522109fc11fe2
2025-04-04 13:08:43 +00:00
stephan
29b496a2d5
Minor configure script internal doc edits. No functional changes.
...
FossilOrigin-Name: 357563bc7c01a744d4038ed3ccc475260b819e98cf90a4270764f79c73d2497e
2025-04-04 03:26:20 +00:00
stephan
16aa90bba4
Make the --static-cli-shell flag available in the autoconf build mode.
...
FossilOrigin-Name: b78a474ecba6cae4f0e867a515c214fbfe229808145df1870315328d4e13d462
2025-04-04 03:16:47 +00:00
stephan
99ef94e3ac
On HaikuOS, if --prefix is not explicitly provided then default it to /boot/home/config/non-packaged, based on an off-list discussion with HaikuOS user BrickViking.
...
FossilOrigin-Name: c4a558291175378f76d126b12417c6c1d8e6060c0ec1267a97d3cd11b4804439
2025-04-04 02:40:08 +00:00
stephan
2a5694910a
Add the --static-cli-shell configure flag to the canonical build, which works like --static-tclsqlite3 but applies to the CLI shell (statically linking it, which only works if all requisite libs are available in static form). It is not called --static-shell because that flag has a completely different legacy meaning in the autoconf build and this flight might eventually be added to that build, so would collide there.
...
FossilOrigin-Name: fd2c1638ecc38617f5de0380ad23f233d1159be0712ae2ca4cae5c99e841f1b1
2025-04-03 13:24:38 +00:00
stephan
2636632cae
Add the --static-tclsqlite3 configure flag (canonical build only) to build tclsqlite3 as a static binary. This will only work on systems which have static versions of all requisite libraries.
...
FossilOrigin-Name: 61836324369e3213841295911aed4f8439a4b2b0f24820c2cf45bb68a0e2cd04
2025-04-03 00:46:34 +00:00
stephan
20f534708a
Minor cleanups to the --static-tclsqlite3 support.
...
FossilOrigin-Name: 06f1143870280d335daf4e7027fe8771e34415aa1234fe72c0c450c347b8146c
2025-04-03 00:40:33 +00:00
stephan
0993fc62f2
Add experimental --static-tclsqlite3 configure flag to build tclsqlite3 statically, which only works if static libtcl/etc. are available. Currently intended for docker builds via Alpine Linux.
...
FossilOrigin-Name: bef3c8b1b9fd188ee9f941f93bac4567795fea51cee0830abf1ebc1999e1604f
2025-04-02 23:34:35 +00:00
drh
69da86bf93
Fix harmless compiler warnings in the memstat.c extension. No changes to
...
the core.
FossilOrigin-Name: 9e903953ba986df98435da40e94fdb645f6f72279552cba63ef50cec1fe3b486
2025-04-02 12:41:16 +00:00
stephan
34a55f872c
Remove some stray debug output from proj.tcl.
...
FossilOrigin-Name: 5fc7150a2045a19966570b86843f180c2f8ff1f4688616ac161f071de0e765ec
2025-04-02 11:21:09 +00:00
drh
2b918dbb01
Increase the size of a variable in FTS3 to help static analyzers
...
see that there are no integer overflow problems.
FossilOrigin-Name: a921a4682fba23e1e223c2e3ecebd22ec59321552bcc563c29ce501bfe70fa4e
2025-04-02 10:42:47 +00:00
drh
2cbc485ea3
The json-blob-overwrite optimization seeks to prevent unnecessary I/O and
...
data movement when making small changes to the middle of a large JSONB.
FossilOrigin-Name: 4a3d7b04216fff605629902b7de08fd45eb0a89e7e1b0bb7c5ba82cddbc030cc
2025-04-01 16:32:31 +00:00
drh
76076d442a
Fix a typo accidently added to the prior check-in.
...
FossilOrigin-Name: fb2f283038f9329b6f791d92d6f943269f24f1a0efd5859165b63f517ed52ddb
2025-04-01 16:26:51 +00:00
drh
3a7042e0e2
This is an experimental optimization that attempts to keep a JSONB value
...
the same size (same number of bytes) after doing a replace of an elements
with a slightly smaller element, by denormalizing the size field. This
can perhaps avoid unnecessary page updates and memmove() operations when
making small changes in the middle of a large JSONB value.
FossilOrigin-Name: b5de9584b7f49586c5387d8a74af5e41dba50f1817a54257bf9da00deb695f72
2025-04-01 15:17:01 +00:00
drh
4d9384cba3
Fix a harmless typo in a code comment.
...
FossilOrigin-Name: dd251377bd1a8e95a4a0179c50595f290b08ea93659f4906f88f5a9dff534aa1
2025-03-31 23:18:06 +00:00
stephan
0a0367f387
Ensure that the compilation of extensions get the same CFLAGS as the core lib. Move the feature flags enabled by --dev out of TARGET_DEBUG and into OPT_FEATURE_FLAGS (for consistency). Rename the make-internal gcov-related flags to be more descriptive. At the end of the configure script, if SQLITE_DEBUG is active then emit a note reminding the builder that performance will suffer.
...
FossilOrigin-Name: e64c6a3856b839e4e8c0a1cb1713b0d2f1d3cb9b915dd215b0d3cb229502d539
2025-03-31 13:08:29 +00:00
stephan
227df626e9
Ensure that extension sources also inherit the debugging-related flags from --debug or --dev.
...
FossilOrigin-Name: 3e96b772a46638bc25e036de053d620ded3350871ee10e06fd6fe51429934b0d
2025-03-31 10:54:09 +00:00
stephan
8620b42245
Correct the ordering of the configure script's handling of the --dev and --debug flags so that --dev's forcing of --debug get picked up early enough.
...
FossilOrigin-Name: e48189ed33fa9d02b23c18255c7b4c6cab2a6d4b62f7c1edbb0a58ab329735fc
2025-03-31 10:29:06 +00:00
drh
084e61f5cb
The --dev option on ./configure implies --debug and adds -DSQLITE_DEBUG.
...
FossilOrigin-Name: 67dbd9ff0f1e69e429cf3afaf19b84e8e95fc75035ac90cd0ae78d0d002980f8
2025-03-31 09:53:20 +00:00
stephan
39d14d4856
Minor shell-internal doc addition. No functional changes.
...
FossilOrigin-Name: 01b99c8a2819469568f369479c097cc8e3ed1f2478958460755b283dc7d11706
2025-03-29 11:50:25 +00:00
stephan
2d49219b1c
Correct two tests in shell1.test which were broken by the addition of new output in [0f11087b8475].
...
FossilOrigin-Name: 909dd0a02a967baef46c3efdca42a0ab4e15003e34ce7e9af82fce5f17213d7b
2025-03-28 16:31:54 +00:00
stephan
cd1cbd641c
CLI shell: make (.output off) an alias for (.output /dev/null) or (.output nul), depending on the platform. Discussed in [forum:633979ce307f1cc6|forum post 633979ce307f1cc6].
...
FossilOrigin-Name: 0f11087b84753576425823e10a7eeff45af02f3c0135dee72dec5019c8127500
2025-03-28 15:36:49 +00:00
stephan
13a9fb0d21
Configure/make doc tweaks. No functional changes.
...
FossilOrigin-Name: dbcc03bd7a727f4643f18a814bb9fd9071c0355f98dd064286240f2af361ee7f
2025-03-28 14:32:01 +00:00
drh
257e026de9
Merge cygwin and tclsqlite fixes into trunk.
...
FossilOrigin-Name: 121f4d97f9a855131859d342bc2ade5f8c34ba7732029ae156d02cec7cb6dd85
2025-03-27 23:29:25 +00:00
stephan
5ee946f907
Add an explicit db close to fix a file-is-opened failure in session1.test in cygwin.
...
FossilOrigin-Name: c6e4e1cf2b70d2e603ea3faabd9cb5fbd9f5497672574283ace8c62984dfbb97
2025-03-27 18:42:51 +00:00
drh
460e4cb686
Rearrange #includes in FTS3 to avoid a harmless compiler warning.
...
FossilOrigin-Name: c5206cee83a4f1e59bfceda35cdfa528f9b4611eaf306da863ae83e9f93cdeb7
2025-03-27 18:22:11 +00:00
jan.nijtmans
1f3207a52a
Fix for forum-post [/forum/forumpost/b5fde3596c|b5fde3596c]. Also fix encoding issue for non-ASCII characters.
...
Also includes a fix from Stephan Beal, about a missing <stdint.h> include.
FossilOrigin-Name: e60198001e12f85a5d6504ce72226dfceb8666fe5ec649237fa23ae20e8aa32d
2025-03-27 17:30:49 +00:00
jan.nijtmans
d07045119d
shell1.test: == => eq
...
FossilOrigin-Name: 99fdd19193056259d84768f46519328c300976b102f1b1e0b815720df01b28d0
2025-03-27 17:25:38 +00:00
jan.nijtmans
1588d3de37
More ==/!= => eq/ne fixes
...
FossilOrigin-Name: 2aa6c4fa6c9c47c7a8548ac3493bfb9ed4e4dec1b6dc4f3599a0373086b3e917
2025-03-27 14:37:07 +00:00
jan.nijtmans
87b90921b6
In Tcl, always use eq/ne for comparing strings, not ==/!=
...
FossilOrigin-Name: f96a5346e3e890adfdc94a682688c2c15893e50fbaf2a26e5ef39cda8b331ee4
2025-03-27 14:32:57 +00:00
jan.nijtmans
eb2644024a
Merge trunk. Some additional test-fixes for Cygwin
...
FossilOrigin-Name: b36adadfa202fb8951149561471c3e01085d31e1837c99806f308f234cd24a8e
2025-03-27 14:13:12 +00:00
drh
7b3477c776
Fix an off-by-one bug in the ".dbtotxt" command from the shell that results
...
in incorrect output.
FossilOrigin-Name: 2345094e879c5538bfea005785ce0848e6d565a49bcb48b323c258d00ccbe9b8
2025-03-27 10:59:18 +00:00
drh
87ceb6ba9e
Reduce the delay caused by anti-virus retries in Windows when attempting to
...
open a database file with insufficient permission.
FossilOrigin-Name: d25c8a6222d4e3f20c137b1490572ad491d9c404ff12947d5867c3e00fcb615c
2025-03-26 22:23:22 +00:00
drh
a6f6fa8675
On winOpen(), redo the read-only test on every retry attempt. Just
...
don't retry the winAccess() call.
FossilOrigin-Name: ccdd67ad9a508530ccfcec582410768c24bca4eb8b05939577fb99a50dd44b15
2025-03-26 17:05:29 +00:00
drh
4a6de7ff7c
Further attempted improvements at fast-fail for an inaccessible
...
database file.
FossilOrigin-Name: cdeb21a312d4f1a9e3009a0baf0af33857c172f7bc22bca047dcd46a03e9c964
2025-03-26 15:51:05 +00:00
drh
517a0e04d1
Attempt to reduce the amount of retry time when trying to open
...
an inaccessible database file on Windows. See
[forum:/forumpost/e7991420f54dca50|forum thread e7991420f5]
FossilOrigin-Name: 986e45912cde7cb8e6db8ba7a9364aef7187a23032be64ef6cd573163f56676d
2025-03-26 14:45:15 +00:00
stephan
22d502e33a
Merge trunk into cygwin-fixes branch. Add .fossil-settings/binary-glob to squelch warnings about *.db files on Cygwin.
...
FossilOrigin-Name: a8328b921c5504eceacade417e16e713999eff63978caf3418fd79501590b1cb
2025-03-26 00:02:15 +00:00
stephan
6de1c9d559
Configure script internal cleanups. Factor out the superfluous proj-lshift_ and use lassign instead. Add -ro flag to proj-file-write.
...
FossilOrigin-Name: 1f98fc07fdf06d699ffbf1521b0b5e937a582017e4325bd994b488e06becbecc
2025-03-25 01:32:16 +00:00
drh
b0c3118cad
Clarify and reduce redundancy in an assert() in walChecksumBytes().
...
FossilOrigin-Name: 3c53abf5e6df446d569040042363265737aa10fc8aaa20b31c587100c557c5e7
2025-03-24 23:08:40 +00:00
dan
e6e453def6
Test that the sqlite3changeset_apply() function is properly appling indirect changes.
...
FossilOrigin-Name: 1dadea3a79c3edd110b0b32b07287744300958fed31f2da11901a42b16f86669
2025-03-24 19:58:13 +00:00
dan
1b906dd920
Add test cases to session1.test.
...
FossilOrigin-Name: dda9d7cf319e74de7703bda1eb77e3e7aa7459d6fa1508cc1d62cdfc7985c368
2025-03-24 11:13:18 +00:00
stephan
49a015092e
Correct a --force flag which should be -force in a TCL file delete call. Some TCL versions (like the one on my system) accepts either but others don't. Problem reported in [forum:c02224d862|forum post c02224d862].
...
FossilOrigin-Name: 172f4e4772d90f4737eddb43d97a566a6e3b92702c61e23391e43134737cc838
2025-03-23 23:04:48 +00:00
stephan
f58b2c46d0
Remove tool/tclConfigShToAutoDef.sh, as that functionality was moved into autosetup/proj.tcl so that it can be reused in, e.g., autoconf/tea.
...
FossilOrigin-Name: c9c5a15d4d8141aae68d6643869f74879ae053cb86538b805058099af2cec16b
2025-03-23 22:49:00 +00:00
stephan
8d80ca2d1c
Internal configure refactoring to support an ongoing conversion of ./autoconf/tea to autosetup.
...
FossilOrigin-Name: e1d483e342670092c3579f2f0975e49a0c74516ae34103a63b4cde156bf5e92b
2025-03-23 21:38:28 +00:00
drh
75484481c7
Fix the generate_series() enhancement from check-in [d50b784807333c54]
...
so that it works even if the number that "value" is being compared against
is a non-integer floating point number. Bug reported by
[forum:/forumpost/0d5d63257e3ff4f6|forum post 0d5d63257].
FossilOrigin-Name: c113e31b818d16770bec1edc980f6833dfb27c4d74178e66a778fbb5671c3a13
2025-03-22 22:55:33 +00:00
stephan
3f911b12e6
Replace use of autosetup/lib/*.auto for sqlite-custom-... features to avoid the possibility of multiple files being loaded (in an unpredictable order) for that purpose. Instead look for autosetup/sqlite-custom.tcl and source it if it exists. The intent is that sqlite-custom.tcl only ever be added in vendor-specific branches and never in the trunk.
...
FossilOrigin-Name: f3c0071284fbe1c0a8c3fe73792a79f9df6be983e5c9bd1a7e2fe71ba7b2d400
2025-03-22 19:07:54 +00:00
stephan
bf698fd69d
In the post-configure validation, ensure than no more than one autosetup/lib/*.auto file is found, for reasons explained in the validation's error message.
...
FossilOrigin-Name: 50bbd69a684988a1df4c9c7616b76ae62bc4eb755cde18616de58aa0880fd4a7
2025-03-22 18:41:48 +00:00
stephan
0fce9c935f
Slight corrections to the new docs in autosetup/README.md.
...
FossilOrigin-Name: 55029e41e03d9b61b8a53f86d7f69afe71459846f3a1a1723f6934e0d37ca77f
2025-03-22 17:56:20 +00:00
stephan
77dc2d8fb1
Document the new configuration customization approach and extend it to enable sqlite-custom-flags to return an empty string to denote that it does not require any new flags (it may still customize flag default values in such cases).
...
FossilOrigin-Name: b0c7800b0106e90cb7bf7e5d9f48d21f9b058eff6e42339a1621d713ab2dd03c
2025-03-22 17:28:29 +00:00
stephan
d9535334c6
Teach mkautoconfamal.sh to avoid copying autosetup/local.tcl and autosetup/*.auto except for autosetup/lib/CURRENT-BRANCH-NAME.auto (if any), the intent being to use lib/CURRENT-BRANCH-NAME.auto for branch-specific configuration customizations.
...
FossilOrigin-Name: dfe24f13c446de5fdd736ed52fec0fca4637b4151ba008de7a598a2fc9398816
2025-03-22 17:00:32 +00:00
stephan
515b51f635
Add a mechanism to the configure script to allow certain client-specific builds to extend or override the configure options without having to edit sqlite-config.tcl, the goal being to reduce merge conflicts in those builds when updating sqlite-config.tcl from the canonical copy.
...
FossilOrigin-Name: bafab4ee5545c6cf6eafc5e352a7f25dfcbc7e58d4cc9064d05658c39de2af0d
2025-03-22 16:14:34 +00:00
stephan
d877b56688
Configure script internal cleanups and re-orgs. No functional changes.
...
FossilOrigin-Name: f619e40fb05d3e09dca2ad9d9bbf38c66b4b93dd3d4e7c2071db28e671ee6a9c
2025-03-22 12:43:22 +00:00
stephan
51aef0e4da
In the autoconf bundle, do not strip binaries during installation, for parity with the canonical build and the legacy build. Discussed in [forum:9a67df63eda9925c|forum post 9a67df63eda9925c]. A potential TODO here is to add a configure flag which either enables or disables stripping.
...
FossilOrigin-Name: 6d2e57bd34c562a9cd618c178c3f92b869bf5420907057b8d2438b16a7f91d46
2025-03-22 12:15:13 +00:00
stephan
28b7bfc30f
Slightly simplify proj-current-proc-name.
...
FossilOrigin-Name: 6a0ca9f2360d29272d7be97fe9f516c3ac88864f3e729ba65da1ef6211908775
2025-03-21 22:14:30 +00:00
stephan
e02fade10b
Fix a multi-arg expr call in proj-current-proc-name (must be single-arg for portability).
...
FossilOrigin-Name: 914768f3f5d63a891e1cd578afc676960376fc28ee0fa452fcd32cec0ea5cdaf
2025-03-21 21:13:44 +00:00
drh
7f4efdcb65
Teach the CLI that VT100-escape codes that do things like change font
...
colors have zero-width for the purpose of laying out the columns of a
table.
FossilOrigin-Name: 2d0a8a6c38981552748ff5fc2eeba86590e0f116abac260a7fc9318de0a0dbda
2025-03-21 18:15:13 +00:00
stephan
11d5bea210
Flesh out the new proc-debug and its infrastructure a bit.
...
FossilOrigin-Name: ba7f1ff0d7d1d3fb79fc298d99fd27b65f639fb1691a1a9cdc9c006b8ff41212
2025-03-21 16:49:32 +00:00
stephan
eb6997fbac
Proxy configure's msg-debug with proc-debug, which works the same except that it prepends the name of the calling proc to the debug message. No functional changes.
...
FossilOrigin-Name: f0298c773d3490ad3a5b53d2ceeff1bd90e1a7bb5deeba2d24f681ec1bc10510
2025-03-21 16:06:16 +00:00
stephan
315de605af
Teach the configure script to be able find a default installation of libreadline on Haiku OS.
...
FossilOrigin-Name: 260e9884118172ef76457a34042ace301f20abab4ced172f6b6135010c446a68
2025-03-20 13:41:08 +00:00
drh
4c13878ac2
Fix a problem in the sqlite_dbpage() table-valued function when it is
...
trying to truncate a file in locking-mode=EXCLUSIVE and the file was
obtained via sqlite3_deserialize(). Problem found by dbsqlfuzz.
FossilOrigin-Name: 346cf9794c6ce82ac32f7ccabc67240309306626709951593720abd198b103e3
2025-03-20 11:47:39 +00:00
stephan
339f9a33b4
Correct part of [505d9e49f7] and [7126a51ed8] to get sessioninvert tests working on cygwin.
...
FossilOrigin-Name: 83c34decbe336c76062e6b1bfe4c2e8f786841a4b6efa001747e786e872c8c71
2025-03-19 15:21:21 +00:00
stephan
18b250e9c9
Correct part of [04075517] which changed the implicit return value of a test function.
...
FossilOrigin-Name: 505d9e49f7af619eda9e46e7ed19c4446c64628233528e1ab3f70264e1640ace
2025-03-19 14:57:32 +00:00
stephan
f715576a6c
Add some explicit db close calls to work around a process-reaping timing problem on cygwin builds.
...
FossilOrigin-Name: 7126a51ed8a1b90b7f4cf3f1c13f7a1d560ff7a3ae73897ce8d9194df40356ed
2025-03-19 14:52:39 +00:00
stephan
52e2a79304
Test script patches from Jan Nijtmans: always use -DUSE_TCL_STUBS in buildtclext.tcl and improvements in how TRG is populated in testrunner.tcl.
...
FossilOrigin-Name: aa192203aa1aa188866fe00a5d40dc7b7c72b4f38b06da8708ed0a6c8b8638a6
2025-03-19 13:49:34 +00:00
stephan
21aeeb06fe
Merge trunk into the cygwin-fixes branch for the shell test improvements on Windows. An MSC build's make test now has zero failures.
...
FossilOrigin-Name: 2de4efe10c2591192edca3833fc9e2fae10ebc925fb556f5b53ad483b491b5b3
2025-03-19 13:13:12 +00:00
stephan
178edbaa2f
Avoid running test cases involving ANSI control characters or Unicode on Windows in a slave interpreter, as that combination does not work.
...
FossilOrigin-Name: c7fd71c77f1716c9c85d0f41a07ebd7c96f2e9d5e4c1392fefa1fb53f3cbb746
2025-03-19 11:53:46 +00:00
stephan
6e059d9dac
Merge trunk into the cygwin-fixes branch.
...
FossilOrigin-Name: 34eadd374b3c0a8c9e1f5f4a1c60fda8f16b1c56213b8c4047f96390c676b695
2025-03-19 10:14:46 +00:00
drh
8db881d055
Change the generate_series() table-valued function so that its rowid is just an
...
alias for its value. This allows it to be used as the RHS operand of a
RIGHT JOIN. This fixes the issue raised by
[forum:/forumpost/1e17219c88|forum post 1e17219c88].
FossilOrigin-Name: 77db4d85e70fbf358ae2321c2601966666bdb4d971d7c113ce30a3e541458ee8
2025-03-18 20:15:16 +00:00
dan
31fd886576
Fix a problem that could occur when the RHS of an IN operator was a compound SELECT featuring an ORDER BY on a subquery that was flattened into one of the component SELECTs introduced by [baa83b460c677c21]. Forum post [/forumpost/1e17219c88].
...
FossilOrigin-Name: 7101ccd5331e36fd1a539f540e79ce0ce159be76ec422e1d9436eec6f3908c6e
2025-03-18 19:21:04 +00:00
stephan
e435547beb
Internal doc touchups in ext/wasm/mkwasmbuilds.c. No functional changes.
...
FossilOrigin-Name: 47d34260e74912eeae704bff7c4314b893af86ee66dd96a1bc6f450d3e290702
2025-03-18 13:52:53 +00:00
stephan
ccda0f008a
Very slight simplification of the run-fuzzcheck rules.
...
FossilOrigin-Name: c858a39fad30c46aec6a1f81b2d4e56c18ecf7f5cb6d2fe4a32c4b3bb1a6ed64
2025-03-18 12:31:09 +00:00
stephan
a49265b717
General updates to autosetup/README.md.
...
FossilOrigin-Name: be8ad5cf579662c54b7e7bc492d8ca03b1f9032c5dad9a6b20590ca1ac00840b
2025-03-18 11:36:15 +00:00
stephan
17df9cd909
Update the docs in tool/mkccode.tcl to reflect that it's more generic than it was when the docs were written. Change the shebang line to use /bin/env tclsh instead of a hard-coded tclsh path.
...
FossilOrigin-Name: 9300f7f42dfd143f77fd51aa9e080099540854d36b6997ab1a16be7d77f78d8e
2025-03-18 10:28:56 +00:00
drh
7b99cd6063
Prevent integer overflow when parsing NEAR queries in FTS5.
...
FossilOrigin-Name: 1a5283d7dab210badb8a33eac29f44dc8c1c210ffb5ef84f43e348170aa406a6
2025-03-17 15:13:47 +00:00
stephan
1774ec3ad0
Add support for the --with-wasi-sdk configure flag to the autoconf build.
...
FossilOrigin-Name: 44880fa3f0748604ef50b942c28390e041138759efea1d076dfcaa1da48970cb
2025-03-17 14:59:55 +00:00
stephan
d176ef5881
Fix a long-standing filename digest computation bug in the OPFS SAHPool VFS which caused all VFS-stored filenames to have a digest value of 0. See [/forumpost/042d53c928382021] and for full details.
...
FossilOrigin-Name: 493cbe74504e8eb1ca8f2edf49fdab6bebc7fe36ffab06932a4b8c5a4eea86cd
2025-03-16 14:05:42 +00:00
stephan
ab68965794
Add --asan-fsanitize=... configure flag to the canonical build to optionally set -fsantize flags for the fuzzcheck-asan tool. Teach proj-check-fsanitiz to fail for flags which the compiler emits any warning for, for reasons described in its comments.
...
FossilOrigin-Name: 013730e9b92af39cb7fd2871df9b4bc81b8990f918892bd79370704421672da0
2025-03-16 13:09:21 +00:00
stephan
539442300c
Configure-internal doc cleanups. No functional changes.
...
FossilOrigin-Name: be3a2e631100b711996b9524a54fc604966513a62d83fc916270a6226da7adab
2025-03-16 12:27:21 +00:00
stephan
bafddb17d7
Consolidate some much-duplicated run-fuzzcheck recipe code in main.mk.
...
FossilOrigin-Name: c0d9b9fad3a2f23941927f1be2abded3bde2f2b04f7a5f3cc0a54a978020ebaa
2025-03-16 11:24:32 +00:00
drh
fc293f7c0e
Rework the run-fuzzcheck makefile target so that it better exploit parallelism.
...
Test case "<tt>make -j16 run-fuzzcheck FUZZDB=20250222.db</tt>"
went from 596 seconds down to 107 seconds.
FossilOrigin-Name: 18bda13e197e4b4ec7464b3e70012f71edc05f73d8b14bb48bad452f81c7e185
2025-03-16 00:13:29 +00:00
drh
42db4d043e
Enhance the fuzzcheck testing tool with new command-line options:
...
--brief, and --slice M N.
FossilOrigin-Name: e64132723db0c4f2b9a58932a93beb1671e42006eebc1aeaa8f320e717043051
2025-03-15 23:42:32 +00:00
drh
6e5d59e8ef
Make use of the C99 flexible array feature, when available, so that
...
the -fsanitize=bounds-strict option can be used, when available.
[forum:/forumpost/311dbf9a1cadfae6|Forum thread 311dbf9a1c].
FossilOrigin-Name: d4307a0d43f42e96ec06ad2c1d8d0f5c8ecae759bae8231b1998633089809f49
2025-03-15 19:55:19 +00:00
drh
b7b060401e
Work around compilers that do not understand flexible arrays, in the
...
recovery extension and in the fuzzcheck test module.
FossilOrigin-Name: f101c46cf83e532fd33034abccba496bf395ef10c161af003211614d6581d5eb
2025-03-15 19:00:46 +00:00
drh
7bd72d4abf
Fix alignment problems on Linux with -m32 and on Mac PPC.
...
FossilOrigin-Name: 8a91aeca60548d5cd19add128cf65b9c3815c9103b1ef8ff6bc02711b6d709de
2025-03-15 18:26:27 +00:00
dan
f212fb3362
Speed up parsing of very long fts3 query expressions.
...
FossilOrigin-Name: 2dd5b6895a3b23c2b9cbf0c1c1e802faf8f2b41ef60819eea25d609755266e64
2025-03-15 16:58:39 +00:00
stephan
9f8a238fb5
Configure-internal build cleanups (no functional changes). Add EXTRA_SRC to the deps of sqlite3.c.
...
FossilOrigin-Name: 8afb8bbce8654d6f76207fb136e79dc52b6724a71eae82a4c098690a68eb75a1
2025-03-15 15:19:42 +00:00
stephan
8c0e922721
-fsanitize is a CFLAG, not LDFLAG, so rename some vars accordingly and simplify the feature check to not run the linker.
...
FossilOrigin-Name: 44f2c64ec16f4720dc538be30410863c4138ea4ce41c94521bd7980535261735
2025-03-15 13:50:07 +00:00
stephan
f792cda1a1
For fuzzcheck-asan, dynamically determine the list of -fsanitize flags to use based on configure-time feature tests.
...
FossilOrigin-Name: b70f9cc81516e57e73960bed4b4d2abdcf3dab0ad4a400ca1aed49365c25231e
2025-03-15 13:36:01 +00:00
drh
d389fd3699
Omit the -fsanitize=bounds-strict for now, as that is still not widely
...
implemented. In particular, it does not work on Macs.
FossilOrigin-Name: 3e1c2ac7817e73ea736a39bb0c0ec8212ceedbc89b265b4caf1b53871d27d7c0
2025-03-15 13:11:24 +00:00
drh
0a4f10e6e2
Use flexible arrays in the recovery extension and in the fuzzcheck test program.
...
Adjust the unix makefile to use -fsanitize=bounds-strict when building
fuzzcheck-asan.
FossilOrigin-Name: 6ea6a6b211fed1a14d7bec1ab1790dec09e2a00423860498a60b760c4a4561fa
2025-03-15 13:04:16 +00:00
drh
bd0e3ed522
Use flexible arrays whereever appropriate in FTS5.
...
FossilOrigin-Name: 16dfc415b6e98a2acae79a24bb0afd401e60efc27cbdd1603a426fd33e17d427
2025-03-15 12:22:39 +00:00
drh
17abe9e251
Convert the Fts5Sorter.aIdx field to a flexible array.
...
FossilOrigin-Name: 28ac776a23da2753265a7fe2ee2ebb09964815fc9058e69c08275fc217842edc
2025-03-15 00:11:22 +00:00
drh
502b7a236e
Turn Fts5Colset.aiCol into a flexible array.
...
FossilOrigin-Name: 0c4d9c74741794468adc444908f6024f016738aa2852d3a646f2c28d079d9446
2025-03-14 23:57:53 +00:00
drh
126541f8ac
In FTS3, rename the MatchinfoBuffer.aMatchinfo field to aMI, to avoid confusing
...
it with MatchInfo.aMatchinfo. Make aMI a flexiable array.
FossilOrigin-Name: bb00b973980d259ca85af84c054501cae78b3a9d33ccffa54d7034235dd8d50d
2025-03-14 23:20:12 +00:00
drh
dbd455a0fd
Fix one of two flexible arrays in FTS3.
...
FossilOrigin-Name: ddfa87c17906ecf7fd5639a87bbfa9a87d17ab688159acd2fd80cc5b6f25f09b
2025-03-14 21:15:11 +00:00
drh
01ef1dfc1f
Use flexible arrays for RTREE.
...
FossilOrigin-Name: 2b41776179c726586e3ff836edcf235938cf02f7c5e33c1d6954b84d4061b8d5
2025-03-14 20:19:49 +00:00
drh
b6e8f65ffe
KeyInfo is now an indeterminate size, so we cannot declare a variable of that
...
type, only a pointer to an instance of that type.
FossilOrigin-Name: 37b687dc2d3b9dc82ed09a9c5b2c00e576b1eebe358a20d18a3da190347b644e
2025-03-14 19:07:11 +00:00
drh
cebf06c798
Make use of the flexible-array feature of C99, when available, to try to
...
pacify -fsanitize=strict-bounds. This check-in fixes the core. There is
more yet to do in FTS3, RTREE, and in FTS5.
FossilOrigin-Name: 6fd6b32d06bd6a705e5140cd613af823b8183a6f6a9ceeeedfcf5e8b50821d68
2025-03-14 18:10:02 +00:00
stephan
dae87df198
Fix an internal doc typo reported in [forum:e25e581f917|forum post e25e581f917].
...
FossilOrigin-Name: fa6f6ccdffc50024624306900efd2538c7415d8bdd0f02835b2e9c05adab3cf1
2025-03-14 12:37:36 +00:00
stephan
5390f95f07
Minor doc corrections for the sahpool-digest fix and merge in current trunk.
...
FossilOrigin-Name: 500f2e6ec74b4c0e4ac0365ba4e0d81ed6df8dd09dc0f8af65d294c3453f8865
2025-03-14 11:14:52 +00:00
stephan
1560045c32
Cherrypick the [2b582c0097e33] doc addition, which was initially committed to the wrong branch.
...
FossilOrigin-Name: f786de8d1873cd27b1bf83273a1e100e9d481144674888ccf65974e003a3caad
2025-03-14 09:34:09 +00:00
drh
99e8490705
Fix the generate_series extension for the case where the termination value
...
is not an even multiple of the step from the start value and there is also
a value=NNN constraint in the WHERE clause.
[forum:/info/bf2dc8e909983511|Forum post bf2dc8e9]
FossilOrigin-Name: 75e72e3b0d0d689d39e00a01dc361dd6ce2649e68d200bf501ddcf04063041b2
2025-03-13 18:51:18 +00:00
drh
62d9d70edd
The --echo flag on the CLI also echos dot-commands provided on the command-line.
...
FossilOrigin-Name: 6ec0c03b954cf705da076d035a1cc2e784233ae28857385379e44a59af6c5ec4
2025-03-12 15:17:13 +00:00
stephan
ff3c451428
Document that sqlite_update_hook() can unset the current hook by passing a NULL callback, to address [forum:652aef4747|forum post 652aef4747].
...
FossilOrigin-Name: 2b582c0097e3374beb280dfa6b03e0dacb9911da1bceb0dce0468e6b7291e74f
2025-03-12 11:41:12 +00:00
drh
72b5c6db35
Avoid running test cases involving ANSI control characters or Unicode
...
on Windows in a slave interpreter, as that combination does not work.
FossilOrigin-Name: f6745a7355c62ee64c08e23b795f437dd74add903b55e1255c1d03f9a811170d
2025-03-11 15:46:23 +00:00
drh
a7829ecbdd
The substitute "puts" command used by the Windows implementation of
...
sqlite3_analyzer must invoke fflush() after each line of output. Otherwise
the output can be truncated when redirected into a file.
FossilOrigin-Name: ba058ce90a2ba9ebc4d8fb289108c04f80fa85da01c0b8bd58855681836ba83d
2025-03-11 12:19:27 +00:00
stephan
1fc7844d40
Teach testrunner.tcl to distinguish Cygwin from Windows. This gets it running but then all downstream tests fail, at least in part because of the build target name discrepancies between the platform which requires .exe and those which do not.
...
FossilOrigin-Name: 2861788e479aea12354f2d34d8e6a2706d193642674ef1f4f852f24c877e0140
2025-03-11 11:24:52 +00:00
drh
642479d1cd
Ensure that the TEMP database has been initialized at the beginning of
...
a call to sqlite3_open_blob() for the TEMP database. Fix for the issue
reported by [forum:/forumpost/0a556d619b|forum post 0a556d619b].
FossilOrigin-Name: 2cfccdbe08b7b14a6b255f7157ac20d0807327adefcb33fcffeeed14c7603fe1
2025-03-10 22:31:55 +00:00
stephan
e0fa42053f
Merge trunk into the cygwin-fixes branch.
...
FossilOrigin-Name: f3d14433f24f89558e72a9085c950bc72440e9933d6b4ff59d6e603d25e39422
2025-03-10 17:35:00 +00:00
stephan
09eba154b2
Add an explicit db close to test/walsetlk.test to work around an unjustified test failure on Windows when the walsetlk tests are run in the same invocation of testfixture.exe in Windows.
...
FossilOrigin-Name: f418de109335cd7cb29d2b587540c163bbaaa7129c662c2908ef67492139b2d7
2025-03-10 17:28:43 +00:00
stephan
b37f8b9714
Patch an unnecessary size_t-to-int conversion which warns on some compilers.
...
FossilOrigin-Name: 8681dfdb59d3258663ec176daafd7a52446a207db21fbd1a4d151508092dcbc5
2025-03-10 15:35:43 +00:00
stephan
4cd6c0b81b
Ensure that the 'clean' target for Makefile.msc cleans up the testdir dir, analog to how the canonical makefile works, as stale files there have been leading to test failures.
...
FossilOrigin-Name: a591c018558af70e0ddfdd2d4d61905f030bac01df19ac9b204aed09d44517be
2025-03-10 15:27:17 +00:00
stephan
42e5ceb093
Reimplement pathname conversion on Cygwin. MSC test passes/failures are on par with trunk and 'make test' running on cygwin is down to a single failure.
...
FossilOrigin-Name: 57a4de09149663ac001848773c9dffe53e30f9263e4dacc792a0267401147d25
2025-03-10 15:15:13 +00:00
stephan
05ba11fc95
Tweak [6f24da264cf8d] so that it has no side-effects on autoconf/Makefile.msc.
...
FossilOrigin-Name: d3d322f122e88ea7d7f086f1c7d3ba8ab5ba7c2899d6d1e18b0b593001f01dcf
2025-03-10 14:10:46 +00:00
drh
eed4e1d2df
Disable the [d1ba200234f40b84|count-of-view optimization] if any subquery
...
is DISTINCT, as the optimization does not work in that case.
Bug reported by [forum/forumpost/a860f5fb2e|forum post a860f5fb2e].
FossilOrigin-Name: d7013b63932b2f5750572ae6bdd259a2b6e6548c20fb9a5559edd22d2f2fc6cb
2025-03-10 10:32:31 +00:00
stephan
49a5da1138
Add tf.bat target to Makefile.msc to facilitate running of individual test scripts via testfixture.exe.
...
FossilOrigin-Name: 6f24da264cf8d4c9fef706e6ab89e8c002ac4abfb79516f65ff4eb806f864959
2025-03-10 09:54:01 +00:00
stephan
065c0a6120
Test app/script patches from Jan Nijtmans for cygwin. Add/replace many more sentinel arguments for TCL variadic functions which specifically need a NULL trailing argument. With this, 'make test' on cygwin runs to completion for me, with 134 of 329227 tests failing. MSC build fails the same 13 tests which fail for me in trunk.
...
FossilOrigin-Name: 84d8fcfca19cd183d05a702d0eb1742bfae462d3383a3db72741a48cefac1058
2025-03-08 06:53:06 +00:00
stephan
7b9407af90
os_win.c patches for Cygwin (described in the cygwin-fixes branch wiki page). Makefile.msc's test target on trunk fails the same 13 tests as this branch.
...
FossilOrigin-Name: 655c60d1926adb552d37441bf9857263eae92e3806a8524e8443b81fdfd8c258
2025-03-07 06:54:04 +00:00
stephan
908c0301d1
Merge trunk into the cygwin-fixes branch (which was inadvertently branched too early).
...
FossilOrigin-Name: a7863b2e2fbea0ea11c494016b99921f70aae09607868aa65af988cbd173b31a
2025-03-06 14:40:45 +00:00
stephan
8199c8d7a7
Cygwin-centric test script tweaks from Jan Nijtmans.
...
FossilOrigin-Name: 9868615b7d41179672dde2eafff878d50cf9d647c7050ccf5103e385fd182fc2
2025-03-06 13:49:27 +00:00
stephan
b6503f1444
Cygwin-centric fixes from Jan Nijtmans.
...
FossilOrigin-Name: 205979813c7300debb5f1ba270583ef2f08e069d6d01865b5910702889a5c1ed
2025-03-06 13:38:07 +00:00
stephan
d75acb8312
Back out the most significant part of [5c28a17253e2f], as Cygwin is a hybrid. With SQLITE_OS_UNIX it will use POSIX locking, which will misinteract with apps using Windows-style locking.
...
FossilOrigin-Name: 44adf8f38761a0d756c047f93fc76fc1d0aba8cc209970e3ba13e7040dd14b13
2025-03-06 09:29:15 +00:00
stephan
47991d973a
Various typo fixes reported by Daniel Dumitriu. No functional changes.
...
FossilOrigin-Name: 37e6ec777445d8ef81acecbb66f86ae78f2ae67ef0bfd3fbd089da51fff35cc9
2025-03-06 09:08:38 +00:00
stephan
ba6510a399
Additional 'array index is signed char' warning cleanups for the shell and its embedded extensions, analog to [44bd44532d].
...
FossilOrigin-Name: f31042595b8f8a378db9778c9a8223b07ec02cf2f528581ba43bf72b5b03c964
2025-03-06 07:48:45 +00:00
stephan
894cda4db7
Fix a tcl typo in the previous checkin which triggers an error on one machine but not another.
...
FossilOrigin-Name: 646c2821ad434058db7760e699d21a47c7feb5976199cbe4b58d54c902720cbf
2025-03-06 07:09:50 +00:00
stephan
2d960e943b
Have the configure script report cygwin as SQLITE_OS_UNIX instead of SQLITE_OS_WIN, per off-list discussion with Jan Nijtmans.
...
FossilOrigin-Name: 5c28a17253e2fe56d7fd97cc43345b3fd8bd59fccea3fb1547ed87f7902f76f5
2025-03-06 06:25:45 +00:00
dan
fc9b5d2a95
Have the recover module add "PRAGMA foreign_keys = off" to SQL output. Have the shell tool add ".dbconfig defensive off".
...
FossilOrigin-Name: dcfe3d3292851aa48a085a2c68623b049e2786c8dc7154ccc78508443973b5a1
2025-03-05 19:39:02 +00:00
drh
bee4fb401e
Always ignore comments in the schema of a database, even if
...
SQLITE_DBCONFIG_ENABLE_COMMENTS is turned off.
FossilOrigin-Name: 373ae3f4de526c636c35db03d6b5c84526d6f144c1c3bebcbb257e52f563a203
2025-03-05 18:18:17 +00:00
dan
c27c61586f
Update the recovery extension so that it works with encrypted databases.
...
FossilOrigin-Name: b0b66f21159b47e1950ca63a01f92fe4f621efb9a2962b310d65fa7ebdbb43b3
2025-03-05 17:26:56 +00:00
drh
427e0076a9
Use AtomicRead() and AtomicWrite() to access the pcache1_g.bUnderPressure
...
global, to forestall unnecessary angst from thread analyzers.
FossilOrigin-Name: 41ec85637a7fac710a3986ee78ed25a96d331a03653069bae4d9f826cc6f944a
2025-03-05 17:12:42 +00:00
drh
9f19ea83e7
Improvement output for ".schema --indent" in the CLI when the schema contains
...
partial indexes with long and complicated WHERE clauses.
FossilOrigin-Name: defd7187ff8c4388f8b5467ed168462ec48215a1f4263bc4128b8e4d89a0bb2a
2025-03-05 16:35:51 +00:00
stephan
bf09cbe2ca
Minor configure script cleanups which started out as cygwin-specific fixes but ended up just being minor platform-agnostic cleanups.
...
FossilOrigin-Name: 2cda90410ac62843fa3cf5a9592b2b25564cf9d829e107c85854e8167d4fe46d
2025-03-04 21:37:40 +00:00
stephan
4b60c1b49c
Roll back part of [6d87a8efe]: the check for tclsh90.exe (as opposed to tclsh9.0.exe) is incorrect on these platforms (it's an msvc build). Also remove an unused function added in that checkin.
...
FossilOrigin-Name: dc84976a7c0d0028b7c576d54e18d1b8e1fc2376bc7b0504f1c86e82c1f7c814
2025-03-04 21:31:18 +00:00
stephan
e34ad2b0b3
tclsqlite3 patch from Christian Werner: replace FILE handles with TCL channels for the db copy command.
...
FossilOrigin-Name: ea1f7f8de4abb80fe41a115c9f601ff27cd728493640c6d47d868913feec28dc
2025-03-04 21:25:18 +00:00
stephan
0ca5b1e39d
Teach autosetup how to find tclsh v9.0 on cygwin.
...
FossilOrigin-Name: 6d87a8efe5611102eac150e5dc1e9d9602318ab8b96046b29c66602e7c3d12fa
2025-03-04 19:38:38 +00:00
stephan
f5965e9d51
Makefile doc updates. Remove a couple extraneous targets. No functional changes.
...
FossilOrigin-Name: 5a3e22999f8da075f7ca3e039f10386fb85295a2457c9495d2c48b7137a84296
2025-03-04 07:29:28 +00:00
stephan
3ce81095f9
Minor doc typo fixes via [forum:65bd941da8|forum post 65bd941da8].
...
FossilOrigin-Name: 6f6a03e93cf58eaee79603de0b28ad34c872fb4b4b7d9c4e7fe35c698b27618a
2025-03-04 06:29:03 +00:00
stephan
5b27bfac44
Document the EXTRA_SRC makefile var and add --amalgamation-extra-src=list to the canonical-build configure script as the formal way to pass that at configure-time.
...
FossilOrigin-Name: 44de0ec29a86f91a227132f7af8898108d555463b754b299eace0ee8475bad57
2025-03-04 05:16:10 +00:00
stephan
272344d206
Internal configure script cleanups. Resolve an as-yet-hypothetical corner case involving the --dev flag mixed with custom CFLAGS containing SQLITE_ENABLE... or SQLITE_OMIT... flags. Fix an unrelated API doc typo reported in [forum:606ea661df|forum post 606ea661df].
...
FossilOrigin-Name: 0554c00f32b7cc81d35340080df10ea6d66c9ff07fe749ea76cc523a4149b5c8
2025-03-03 14:15:13 +00:00
stephan
31b72ff521
Minor configure script doc tweaks. This is also a note that the basic elements of the build run as-is on Haiku OS Beta 5 but the tcl bits do not (for lack of tclConfig.sh).
...
FossilOrigin-Name: acf9babf0efc346b26c8ac02c0bd973498bf1604b47fe320de14027f9b21ed33
2025-03-03 11:48:09 +00:00
drh
c171cf1ef7
Ensure that detection of control characters by comparison against 0x1f
...
uses unsigned characters. [forum:/forumpost/4c344ca61f|Forum post 4c344ca61f].
FossilOrigin-Name: b7c5ce84216cc7f5a3ba07404572edb94fd628b3a7421111cd5f5333f3e56ea8
2025-03-02 20:29:49 +00:00
stephan
c9cc6a5474
Use SQLITE_EXTRA_INIT_MUTEXED instead of SQLITE_EXTRA_INIT for the SQLITE_WASM_EXTRA_INIT feature, as suggested in [forum:14183b98fc0b1dea|forum post 14183b98fc0b1dea]. This doesn't make a functional difference now - this is in the name of future-proofing against eventual threading support in wasm.
...
FossilOrigin-Name: 46479c2e30b9676e0fa8da117ba67f673671fb340c9bea38ece19a1b2371a57b
2025-03-01 23:44:11 +00:00
drh
8346ceef5a
Add an assert() in vdbesort.c to help both humans and static analyzer AIs
...
understand why a particular array cannot overflow.
FossilOrigin-Name: a14d4afd5020af327629e5c72b0699ddab0ef4e3f23938a1b72669aa29fc2e87
2025-03-01 11:47:01 +00:00
drh
557974e126
In the CLI, ensure that all calls to ctype.h macros are cast to unsigned char.
...
Apparently cygwin needs this.
FossilOrigin-Name: 44bd44532d4a63b2f600427dc425bde618bcc21e4abffaa2ec19f27350e54732
2025-02-28 15:54:28 +00:00
stephan
cf794e17cc
Latest upstream autosetup. Fixes two minor corner-case issues which we haven't yet seen in practice.
...
FossilOrigin-Name: 5c2438a719de6787c2f7c9f38d14d5ccdb8d36a120657661ec28051c83a93270
2025-02-28 04:58:43 +00:00
stephan
da5f813878
Approximately 100 typo corrections spanning the whole tree, submitted via [forum:0db9827f0464bc33|forum post 0db9827f0464bc33] and individually audited and verified. Affects only code comments, innocuous test strings, error message text in tool (not library) code, and configure-level help text.
...
FossilOrigin-Name: f50c21484d3cac73589da0376c423de39ae8b842218105786c5aa3726e4dcaed
2025-02-27 21:17:55 +00:00
stephan
3398441bfc
Reimplement testrunner_data.tcl::trd_get_bin_name() to assume a .exe extension on all platforms not matching "unix", to avoid having to do file-exists checks.
...
FossilOrigin-Name: ce5519102a1b4df5d513835974799cdcda3478ec53ae99bbb631951095291919
2025-02-27 19:40:02 +00:00
drh
1d54203394
Strive to make sorts stable in the mkpragmatab.tcl build script, so that
...
we get consistent amalgamations regardless of platform.
[forum:/forumpost/c9914addebf3da51|Forum thread c9914addebf3da51].
FossilOrigin-Name: 3f57584710d611748eb0af797c58c72e4ac099db09f5286cafdbd9a8ce354c90
2025-02-27 16:07:49 +00:00
drh
157d9276a0
Merge back a sequence of three changes that were branched due to a build break.
...
FossilOrigin-Name: 67809715977a5bad0ec7830e27746aba2080852eb725d471c0fd62d4f464a884
2025-02-27 15:55:01 +00:00
drh
29820d39d8
Fix build break in [e2bd23f251359e7a].
...
FossilOrigin-Name: 6ed84211033ee0ff00c8fd088979fe06d3a264e4f935162f36a62c00af135c63
2025-02-27 15:52:15 +00:00
dan
fd3938fbca
Add support for SQLITE_EXTRA_INIT_MUTEXED - like SQLITE_EXTRA_INIT, but is called from within sqlite3_initialize() when the SQLITE_MUTEX_STATIC_MAIN mutex is still held.
...
FossilOrigin-Name: 3cf88d429f6e7c10b8f19c283151541924c4bb84bbd0d2e05cabdd4f9f0e88c9
2025-02-27 11:03:54 +00:00
stephan
129203bce3
Internal doc typo fixes reported in [forum:01d15f21b6|forum post 01d15f21b6].
...
FossilOrigin-Name: d6514c20ff583ccc4fb3a526fb8f86a563224f513ee10bb39a978046bd952726
2025-02-27 03:23:33 +00:00
stephan
e1e822ca23
Teach testrunner how to run local binaries which have a .exe extension. Also teach it to recognized mingw environments (but actually building the test programs there currently doesn't work).
...
FossilOrigin-Name: e2bd23f251359e7a818c4cfacf114aa9fd8c0a9a1cb802654e96fad67b505508
2025-02-26 19:22:52 +00:00
stephan
94c42564f3
Test testrunner.tcl to identify an msys environment.
...
FossilOrigin-Name: e9f777ceda9fca51c37caca0afeadfc3f99b86e945496f52c71adcc520dcee98
2025-02-26 18:31:42 +00:00
stephan
666bbd4641
Undo part of [69e83ab859c], as that order of operations breaks the --prefix=... configure flag. Found a workaround for the library version and OS/environment info being emitted when --help.
...
FossilOrigin-Name: cd2a84a72c922c330441d6b75df0c8b2f6df2c25bc7c37ac37046fffd702624a
2025-02-26 17:11:25 +00:00
stephan
68d88cfec5
configure: extend the readline detection a bit so that it can find readline on termux environments without having to be told where it is. Fix a typo in a libedit-related message.
...
FossilOrigin-Name: 52f528c4be4ee4ae4ee4c05009c33bb97269d27380ce2cdd717a514616f39be7
2025-02-26 16:15:34 +00:00
stephan
a37aec123a
Shift some bootstrapping configure bits to avoid emitting extra output if --help is specified.
...
FossilOrigin-Name: 69e83ab859ca37c047defdaba84e80d028b30045631e773bd8dfa286c41a57e8
2025-02-26 09:14:26 +00:00
stephan
69eaadbee3
Merge trunk into the sahpool-digest branch.
...
FossilOrigin-Name: fc1eeb7d1f2880907b0fe71a8c572dd7cd74a5d65ec0177332976ad2f8c2b216
2025-02-26 03:32:52 +00:00
stephan
d804893762
Fix a bug in mkwasmbuilds.c which caused sqlite3.wasm to get deleted directly after it was built.
...
FossilOrigin-Name: 1a72d1d13e42f69f02861f8ac3058e69b78d4fd2050ca8c53a1ce016b7e0863d
2025-02-26 03:20:26 +00:00
stephan
d2f7dfa619
More work on the sahpool digest fix. New/fixed versions can read legacy (no digest) files but the reverse is only possible in limited circumstances (when files originated from a legacy version). The burning question is whether the real fix would be to remove this digest check altogether, as it only applies in a very limited context, and the fact that it was broken for some 18 months unnoticed suggests that its value might not be worth the CPU cycles.
...
FossilOrigin-Name: 0df62b776c68bebb0e187b353b6f29b0a41a29f0a1c8d6728fa6b9f7ce0d13f7
2025-02-26 03:03:08 +00:00
drh
b5f74ee637
Disable some misuse tests that sometimes cause segfaults during
...
"make releasetest".
FossilOrigin-Name: 5856251a7e8a69aa181f89533bc2a78812d8b450a407b4b2f73f0c146cd78072
2025-02-25 21:16:13 +00:00
stephan
5d60f47001
Approximately 50 typo fixes, spanning the whole tree, contributed via [forum:006c8fa165083ac3|forum post 006c8fa165083ac3] and individually checked for correctness. Affects only code comments, docs, and a single line of debug output in a test app.
...
FossilOrigin-Name: af928818a030924060ee0762431dae0f16d53a62f4e1132754d052eb9c621ac2
2025-02-25 20:55:14 +00:00
drh
b8ec04ee02
Fix a test case that was broken when the default --escape type was changed
...
by the previous check-in.
FossilOrigin-Name: 5f2531e068b4856db2270518c370b65cbd0c0ab5443d76f1fb1116fe9ad80296
2025-02-25 20:36:46 +00:00
drh
846643ebad
Change the default control-character escape algorithm from "symbol" to
...
"ascii", since the "ascii" algorithm works even on terminals that do
not support unicode.
FossilOrigin-Name: d35320495eb282601ab4f3b9efc53c7c1d58e890f025317e34c7046a43c8cb53
2025-02-25 20:10:46 +00:00
drh
1c03a34400
Fix harmless "unused parameter" compiler warnings.
...
FossilOrigin-Name: 7a68a3ead8e6c75203641542256bcfa05067bed4bf9035452fbd134534801a08
2025-02-25 20:02:58 +00:00
drh
82769e7d04
Improved help messages for the --escape option in the CLI.
...
FossilOrigin-Name: e6784af6d50f715338ae3218fc8ba1b894883c27d797f0b7fd2625cac17d9cd7
2025-02-25 18:10:47 +00:00
stephan
90454d8924
Configure script cosmetics: emit the host/build system info before the directory info.
...
FossilOrigin-Name: 6f0b6d95db17e69ac7e46a39f52770291ac4cfe43eea09add224946a6e11f04e
2025-02-25 16:39:51 +00:00
stephan
c3d2ec2289
Restructure [826bad10e9ccd6f71e] as that structure mysteriously breaks the --prefix=... configure flag.
...
FossilOrigin-Name: d284230f68616b78a527d34df777b0220376ba6a00e9e927d4ffb4cbddab900c
2025-02-25 16:11:25 +00:00
drh
87ad172c50
Enhancements to help avoid problems in the CLI when trying display content
...
that contains ANSI escape codes: (1) Add the --escape MODE option to the CLI
where MODE is one of "symbol", "ascii", "off" where the default is "symbol".
(2) Add the unistr() SQL function. (3) Add the unistr_quote() SQL function.
(4) Add the %#Q and %#q conversions in the built-in printf.
FossilOrigin-Name: e3e509ae145ee2623ac68ededa59991a97fcd28313e03f67a3890b560c5381b0
2025-02-25 15:57:49 +00:00
stephan
228e51d8cd
Diverse configure tweaks to better support package maintainers on the unix-on-windows environments like msys2, cygwin, and mingw, based largely on feedback in forum posts [forum:e6cf2bbb70da2922|e6cf2bbb70da2922] and [forum:828fdfe9041fd725|828fdfe9041fd725].
...
FossilOrigin-Name: 85b56fb0cce4b628f80b26a67b43236ef1557282775739bdbe7cc4d65948d66f
2025-02-25 15:54:07 +00:00
dan
58bc525e32
Reinstate the assert() removed by [0f6223b8]. Avoid holding a wal-mode write lock after the transaction has been rolled back if an IO error occurs while restarting the wal file.
...
FossilOrigin-Name: 277e150d6ab75de2407f6761aa2359df80a4e1dbce30788df06621dee05b2ef1
2025-02-25 15:27:55 +00:00
dan
18d9b12e90
Fix a test script problem causing errors with Tcl 9.
...
FossilOrigin-Name: dbec2c47d09027f2458036f675c8af3f8f152c0530799582eeac231649eba501
2025-02-25 13:33:43 +00:00
drh
d4c686ed8f
Small performance improvement for the new %#Q conversion in printf.
...
FossilOrigin-Name: 17e440781e68d7d3ea68c5144e1e08e183f0caef595a6c7ac4ce56489c60f476
2025-02-25 12:18:27 +00:00
drh
17b620eb60
Update the autoconf Makefile for nmake to support SETLK_TIMEOUT.
...
FossilOrigin-Name: 46909fe3348976448d6a0d9e9aacaeaccdf0978c9e9d10742a96842418ab3a08
2025-02-25 12:11:57 +00:00
dan
fb8c46510e
Avoid running certain tests in walsetlk2.test if SQLITE_ENABLE_SETLK_TIMEOUT is set to 2, not 1.
...
FossilOrigin-Name: 86788c08fa09019f224d5dbd76f06c1d113b04ca5eca5d773719194a8b02da22
2025-02-25 11:48:57 +00:00
drh
a357a90f12
Consolidate two different UTF8 encoders into a single subroutine.
...
FossilOrigin-Name: 6208e494858b9d362efc7db4e8aac6f8e93fe51d2e038c94dfa97c55a74688a0
2025-02-25 11:47:34 +00:00
dan
a4cf066d64
Remove an assert() added by [e88212b1] that is sometimes false.
...
FossilOrigin-Name: 0f6223b8f6c044db687f78e19f6373d0dda9155445c511a297efa05bac3b16e5
2025-02-25 11:29:04 +00:00
drh
c46fbec350
Fix the new shellA.test test script so that it works with Valgrind.
...
FossilOrigin-Name: c3949852cee320c2e02123b99c33155c459b10b2ac8e4fe80b1b7624c9ce0817
2025-02-24 23:34:50 +00:00
dan
f037440bfe
Support SQLITE_ENABLE_SETLK_TIMEOUT on windows.
...
FossilOrigin-Name: e88212b10a7829ff42ef51a02863d788c929e54161faf492f9ef2ad90fd7074e
2025-02-24 21:27:16 +00:00
stephan
51770439ff
Slightly simplify auto.def and autoconf/auto.def.
...
FossilOrigin-Name: d84f591b962ea44efb902043444e4e54bc55e5bb32e5108f04df824407c412dd
2025-02-24 20:53:50 +00:00
drh
81d44c7e3e
Use an assert() to fix a harmless (false-positive) scan-build warning
...
in the CLI.
FossilOrigin-Name: 4c56cd7392f114e27b43d8fcc79444c3078cd65285ba7dd3338a414e2a9f5392
2025-02-24 20:13:29 +00:00
stephan
31d54ad041
autoconf/auto.def: remove a define which made superfluous by [b8bf966628c0]. Add a check/status message for whether to statically link the library into the CLI shell.
...
FossilOrigin-Name: df95e908cacc7e8e749701ff49d2ce02a927c58a474dd9a362d5f84cb3d7413f
2025-02-24 18:45:30 +00:00
stephan
b16c76408a
configure: in autoconf build if both --disable-shared and --disable-static-shell are used together, ignore the former and emit a notice to that effect.
...
FossilOrigin-Name: b8bf966628c0cbbb6f0bc09a70800ac0b6b7f8c2d2f70c91f4b6e65daae0b192
2025-02-24 18:14:27 +00:00
drh
e4f7af1908
Only use unistr() in columnar formats when strictly needed.
...
Do not use unistr() in insert mode when --escape is off.
More test cases.
FossilOrigin-Name: e029828de91b10b4c7f4a19bc70c35e4f36fae4ebf32b40553a6ba9f2b3af295
2025-02-24 17:50:49 +00:00
drh
b6205d4bc3
Add the unistr_quote() function that works like quote(), but also escape
...
control characters using unistr() if necessary.
FossilOrigin-Name: e99e37b54baf7283588ead4983e613a1e14c58a0b92be5f7b25b4d9d287b5324
2025-02-24 13:51:24 +00:00
drh
7db5e50b8d
Bug fix and initial test-case infrastructure for control-character escaping
...
in the CLI.
FossilOrigin-Name: c809997792602a7299b8ab84d018a03d291695e308ce750fc8b9d7a824edfd6e
2025-02-24 13:27:16 +00:00
drh
21b431e685
Ongoing work to get all the quoting and escaping variations in the CLI
...
working correctly.
FossilOrigin-Name: b77aea93e7eff0af408f598727caedcfc4428361b8440fbc1cc54c18f93abb69
2025-02-24 12:41:30 +00:00
stephan
d2060072f3
Configure doc tweaks. Move the package version/build dir output so that it does not appear at the start of --help text, but otherwise still appears before the first output from low-level config initialization.
...
FossilOrigin-Name: 826bad10e9ccd6f71e6dad90d41fb7d4a941e459d2e080901345ed8877ad5e38
2025-02-24 12:19:06 +00:00
stephan
ffe65da569
Further consolidation of auto.def and autoconf/auto.def. Note in configure --help that --disable-largefile is a legacy option which has no effect on the library but may influence the generated sqlite_cfg.h.
...
FossilOrigin-Name: 17fd6836f362c646d6dadb40adc0a8a31e2bfc9416651dde2c156400b3aa06dd
2025-02-24 11:21:32 +00:00
dan
b081a391ce
Merge latest changes from trunk into this branch.
...
FossilOrigin-Name: 55324d1c862c42b95251a398c40930d9fa94debb1aec7d3d0ae734d6b17b4a59
2025-02-24 10:52:34 +00:00
stephan
ed36fb77e9
Move the configure output about the SQLite version and build dirs up, so that they appear before any tests for the C compiler and such.
...
FossilOrigin-Name: 83e0f3d138abf33751f735169aee752ba1677c5df37c3947f2c8be3ea3629822
2025-02-24 10:30:59 +00:00
stephan
3111c4687f
Further consolidation of the main auto.def and the autoconf auto.def content into sqlite-config.tcl.
...
FossilOrigin-Name: 76a4efa9668791f23de8d4db1788708891f5efa01ba73bced6abfc54391c3b28
2025-02-24 08:42:40 +00:00
stephan
644b99641f
Configure-internal doc tweaks. Fix the distclean rules for libsqlite3.dll.a on msys/cygwin/mingw, broken when the DLL basename was changed for those platforms.
...
FossilOrigin-Name: 8641e2c7c868be67ebb367fe7c8ceeee0e0d96574c164191ce9e340e7a527f49
2025-02-24 07:06:36 +00:00
stephan
a63dee09a6
Add some internal notes about potential changes for the rpath flag handling.
...
FossilOrigin-Name: 6f904f0695c7e3396522c061170d6201b256af0294afeefcf8b6672e3ba15987
2025-02-24 05:10:09 +00:00
stephan
09591b78ae
Update jimsh0.c from upstream autosetup to address [ https://github.com/msteveb/autosetup/issues/75 |autosetup ticket #75 ], triggered by this build in the Gentoo project.
...
FossilOrigin-Name: ffd05de8a3b7cab1b8e91b99da74b43ec5a7b91c78dcfd7cf338b66126e30a56
2025-02-24 04:47:34 +00:00
drh
6a9c3b407e
Make column output modes in the CLI responsive to the --escape setting.
...
FossilOrigin-Name: 14ff5557d450475ad959f8c753c0cecb85dfca7346fcacd91da16e4d36e30508
2025-02-24 00:40:36 +00:00
drh
96a65cc474
Three different --escape modes: symbol, ascii, off.
...
FossilOrigin-Name: b5adb52fc0dc1838cb9c66cff422f2b8ec147e546cf909dd3c48731fa1edfe50
2025-02-24 00:18:12 +00:00
drh
9ba963f035
Further improvements to control-character escapes in the CLI.
...
FossilOrigin-Name: 9c2f974c17e3dfac78f3808fdfe916f7617cfdaa64430af38eae21bd6592e6f5
2025-02-23 20:50:37 +00:00
drh
8d15d7ed68
Work toward VT100-safe output from the CLI by default.
...
FossilOrigin-Name: 44c44620e8648a4265053f194e32b3a5c65d25b4f1fff61ef9b944e7cb0ed624
2025-02-23 20:20:56 +00:00
stephan
8f2e95fa6c
Add (disabled) infrastructure for disabling use of the rpath linker flag. This is a proactive precautionary measure because how the rpath is used does not match up with what the unix-on-windows environments do with their DLLs.
...
FossilOrigin-Name: 38ba8e837c2679f12a4019612f7188cb4afffd43cef7af4a4aa02e62c20885ac
2025-02-23 17:55:41 +00:00
stephan
7b90beebd5
Internal cleanups to how certain linker flags are tested.
...
FossilOrigin-Name: 6743e3e5b87f1d2308ec8cebef3c7ecccddafdace107630e0d8feee2b089d105
2025-02-23 17:24:55 +00:00
stephan
43aeed3fec
Internal configure doc cleanups. Apply the [5ecbe7ddc4] unix-on-windows DLL install dir fix to the canonical build.
...
FossilOrigin-Name: 51b9812df9087ec0aa7656178a069ddf2d60dcffa5ab0de57a84bd412b2f71c7
2025-02-23 15:34:05 +00:00
drh
a3283ec135
The %#Q conversion now adds unistr('...') around the converted string if
...
escape characters were inserted. %#w now works just like %w as escape
sequences inside of identifiers are not recognized.
FossilOrigin-Name: 997391d42079783e294836f714ccd9526ecc442c8dbf8212d72cd17c67e7158a
2025-02-23 11:48:07 +00:00
drh
07ce1820a0
Enhance the %Q, %q, and %w printf conversions so that if the alternate-form
...
flag # is present, they transform backslash and control characters into
unistr()-style backslash escape codes.
FossilOrigin-Name: ffbfcc2bbb57f02aa5ee813e7a25a2a014e3353a10f6bccb609075a5b63545d7
2025-02-23 00:09:24 +00:00
drh
4d70dbad57
Prototype implementation of the unistr() SQL function.
...
FossilOrigin-Name: 7cc302de05ed2a973372c05f55b048bf99af3d2590dd29f6fd0f379fb451aa0e
2025-02-22 23:18:38 +00:00
stephan
fdb2bdc2a3
Update the help text to account for [35b1c32f80b9].
...
FossilOrigin-Name: f2e7355d87450f9a4d98390cf9d830e9902105048f9308e02c597190ecf2a594
2025-02-22 17:33:18 +00:00
stephan
cbdbf534a3
Replace --dll-basename=none with --dll-basename=default.
...
FossilOrigin-Name: 35b1c32f80b9aed04776508683a1828fd5777ee8bb0e42e593557ae3cca558e4
2025-02-22 17:30:08 +00:00
drh
c071c47b51
Tamp down various harmless compiler warnings. Use "int" in places instead
...
of "u16" or "i16" since the compiler complains less and generates faster
code.
FossilOrigin-Name: 742827f049768c4f69ccdfaadfad339aaad3bc126d3a68b90cfea01d825bf7ce
2025-02-22 16:44:14 +00:00
stephan
524b8a6df2
On unix-on-windows platforms, if either of --out-implib or --dll-basename are not provided, auto-enable them. Add the 'none' special value to those flags to specifically disable the environment-specific handling of those flags.
...
FossilOrigin-Name: 486400801a4540392c04d805a47df5249c4010b1a5fbac91900db6149374c274
2025-02-22 16:31:16 +00:00
stephan
1ad8df3c6b
Ensure that [08c9e56f60] uses an absolute path when appending .exe to mksourceid.
...
FossilOrigin-Name: 906d27f7a645833595f02ddf05892703783d89116b1009f04e0b71679ff34a8b
2025-02-22 14:58:20 +00:00
stephan
df5d5faebe
Random non-functional configure script cleanups.
...
FossilOrigin-Name: 2ee73109809e7d4a9d203cfa42f29c62837c06dc414f9dbf17ce00d9bbb5a883
2025-02-22 14:53:31 +00:00
stephan
8b0240ea72
tool/mksqlite3h.tcl: when invoking the mksourceid binary, add a .exe to it, if needed, to appease msys2.
...
FossilOrigin-Name: 08c9e56f6082bb609a42f0e34c83542fe8b682757bc45616810d91491950fd0f
2025-02-22 14:53:00 +00:00
drh
447f1c2312
Fix an incorrect assert added by [d7729dbbf231d57c].
...
FossilOrigin-Name: eeea11278bdebe336f0c30fbad79e30e3456ab67dae46abdd5f9951ea1b61bed
2025-02-22 11:40:29 +00:00
stephan
c3d72a5587
Fix installation rules for import lib in the autoconf bundle, broken by recent refactoring in this branch.
...
FossilOrigin-Name: 95b71fc7e9887833f03f84c37b94385012a6ae76b86cd079372f1752833e0f5d
2025-02-22 00:01:30 +00:00
stephan
449c552b7c
Rename configure-defined ENABLE_SHARED/STATIC makefile vars to ENABLE_LIB_... so that they're consistent between the canonical and autoconf builds (baby steps towards further configure code consolidation).
...
FossilOrigin-Name: a7647fd07792ef32697c7ba8ab6348593c2a5c4cedf673b155206da6aae799f8
2025-02-21 23:43:10 +00:00
stephan
a8d6fcf40d
Configure docs/help text tweaks. No functional changes.
...
FossilOrigin-Name: 701cc1aff423b87996134801abbbcd06d529bbf522c725837844b6aea406fb1c
2025-02-21 23:27:03 +00:00
stephan
f8c2382d70
Only use the platform-specific --dll-basename if that option is explicitly provided, else use libsqlite3.
...
FossilOrigin-Name: 69bacfdce5d99ba532feb30d19ccea9ef49ed3bbf33e44d41bb8740811f5b0cf
2025-02-21 22:46:18 +00:00
stephan
2a9812ce49
Fix another deps problem for msys installs.
...
FossilOrigin-Name: b0b9e92599dd4fbe2aafacf41eef5fecfce3295b025dad799a292e78f5e370c2
2025-02-21 22:39:48 +00:00
stephan
c580663329
Ensure that the prefix/bin dir exists on msys/cygwin installations before installing the DLL there.
...
FossilOrigin-Name: 5ecbe7ddc48f688b1a511a86f81e7fb8ad3a559c2d513738c839f4d37c63db1c
2025-02-21 22:35:10 +00:00
stephan
4d58d3938a
Add --dll-basename flag to give clients control over the DLL's base name. Split the DLL installation makefile rules into digestible, platform-specific chunks. On Windows-side Unix-like environments, install the DLL into the bin dir. Requires testing and feedback from those platforms' package maintainers to confirm it follows the expectated conventions.
...
FossilOrigin-Name: 8d5fed807b7151dcb79b97cfc2da0e8ac3586a0bf8b4c28967ad4cffafa53c08
2025-02-21 21:58:32 +00:00
drh
cc803b209f
The number of declared columns in an index is limited to SQLITE_LIMIT_COLUMN.
...
But the actual number of columns in the implementation might need to be
twice as much to account for the primary key at the end. Ensure that the
code is able to deal with this. This is a correction to
check-in [d7729dbbf231d57c].
FossilOrigin-Name: 5822feec43be9352fd87bf9968c39c0218e01ab5fe3ba50431ae21cba79e6c89
2025-02-21 20:35:37 +00:00
stephan
72b119d5e4
Extend --out-implib to optionally specify the import lib's name. Add as-yet-unused internals for specifying the DLL's base name (which differs across the Windows-side Unix-esque environments).
...
FossilOrigin-Name: 12a55d343f9663acb68cd0f75fbb6c9ab67f4f88ad296e3e266f12d91522dd19
2025-02-21 20:28:44 +00:00
stephan
d9959bf48b
Makefile-internal var renaming in prep for pending portability-related changes in the handling of DLLs. No functional/build interface changes.
...
FossilOrigin-Name: ebf41fc90aa9fb1bb96239145c0cdd06eced391499975c71734610996d088641
2025-02-21 20:22:56 +00:00
drh
ce25007db8
Detect when a UNIQUE or PRIMARY KEY on a WITHOUT ROWID table would need
...
to use more than SQLITE_LIMIT_COLUMN columns and raise an error.
Also include some unrelated compiler warning fixes.
FossilOrigin-Name: d7729dbbf231d57cbcaaa5004d0a9c4957f112dd6520052995b232aa521c0ca3
2025-02-21 17:03:22 +00:00
stephan
220260b896
configure: in several places where support for -Wl,... linker flags are checked, ensure that the check invokes the linker (not just the compiler) to avoid false positives. This allows us to remove the AIX-specific handling and --disable-rpath bits added in [a15e0f680], as well as make several similar checks more robust.
...
FossilOrigin-Name: 4e81e2c707a954dcda6219dc94e2b96dd0c9907bd4beab28adad51d488b7d739
2025-02-21 03:19:21 +00:00
stephan
a80089c516
configure: automatically fail the check for rpath on AIX systems and provide a --disable-rpath flag as a fallback for use on platforms which pass the configure-time rpath check but then fail at link-time. Based on discussion in [forum:ae5bd8a84b|forum thread ae5bd8a84b].
...
FossilOrigin-Name: a15e0f6802a5ba7bc5a7a70d6a162ea4548b49b132a5ac31263e64c388bbafcb
2025-02-20 17:14:40 +00:00
stephan
2a300a2853
Fix autoconf bundle to honor the --disable-static and --disable-shared flags, as reported in [forum:ae5bd8a84b|forum post ae5bd8a84b]. Problem introduced in 3.49.0.
...
FossilOrigin-Name: 56027220cc15b69cb98ba5360ffd3718c997e10d51e30eebeff14f0dc358d103
2025-02-20 16:45:45 +00:00
stephan
9e632f5512
wasm: do not build the (untested/unsupported) node-for-node build by default, to cut build time by about 15%. Adjacent cleanups in mkwasmbuilds.c.
...
FossilOrigin-Name: e4539ebebd89840b76f5a0626393299100685a38f45546a0bf7a62e4df56f863
2025-02-20 05:39:18 +00:00
stephan
b42310a6b9
wasm makefile docs: make explicit that the node.js-for-node.js builds (as opposed to the node.js-for-browser builds) are both untested and unsupported.
...
FossilOrigin-Name: e1f184889fef4603d61d306c8c0dc86df616290ccf73dbd871fa27bd99e5e5c9
2025-02-20 04:45:02 +00:00
stephan
a32ea731a0
Add the pause/unpause capability to the opfs-sahpool VFS, as discussed in [forum:fe8cdb8431c|forum thread fe8cdb8431c]. Summary: this gives clients a way to eke some degree of multi-page/tab/Worker concurrency out of this VFS but requires that coordination to be implemented client-side, e.g. via a SharedWorker or WebLocks.
...
FossilOrigin-Name: b5dbd521951e129b4dec69f191a872500dbf387b34a8479ad58b053ffcccbab9
2025-02-20 04:14:26 +00:00
stephan
f8a9f45595
configure: when running proj-check-function-in-lib, strip -Werror from CFLAGS for the duration of the test. This enables CFLAGS='-Wall -Werror' and the like to be passed to configure without breaking these configure-time checks.
...
FossilOrigin-Name: 4ae9d6c642295e3a0c1732dacf7c18ecacd39d3e74e38381ac5531c8396f5f1c
2025-02-20 03:27:47 +00:00
stephan
eb0d2e7bc6
Increase default CLI shell .prompt buffer length to 128 bytes, based on discussion in [forum:362f185a6aa|forum post 362f185a6aa].
...
FossilOrigin-Name: 628407f03d4bfb7499f0e6e2197089edf859380a3c4e6fecc517390327718141
2025-02-19 13:05:33 +00:00
stephan
2e132a4c04
Slight tweak to the CLI shell help output to help convey that it can accept multiple SQL arguments, as suggested in [forum:20e617feee|forum post 20e617feee].
...
FossilOrigin-Name: 82fc67070f9aff0065c07cbeed40f4321e03617bdc3e517adc58a2d96e6e3e49
2025-02-19 13:02:23 +00:00
dan
eb3a069fc8
Have SQLITE_FTS5_ENABLE_TEST_MI builds avoid reading the database schema from
...
within sqlite3_open().
FossilOrigin-Name: 15dc524fd4113026cc542140c39c1c8f9e052d36946f0c599f282d9ac27efdab
2025-02-18 15:11:30 +00:00
stephan
9ef8399055
Update path on the web server for test/snapshot instances of fiddle.
...
FossilOrigin-Name: 57caa3136d1bfca06e4f2285734a4977b8d3fa1f75bf87453b975867e9de38fc
2025-02-18 01:16:26 +00:00
drh
21212923f2
Add an ORDER BY to a test case for skip-scan to make the output consistent.
...
FossilOrigin-Name: 9c9c19414ac243ce48a34bf13a08bff54a465e54a0c09ded50508b8d4bdba227
2025-02-17 20:13:20 +00:00
dan
c274e6dda4
Fix problems in test script fkey6.test.
...
FossilOrigin-Name: 088e476519c2c759ba9387cb18eaad7c042cc37e45e96237d3125ba33ee3633a
2025-02-17 19:44:45 +00:00
drh
7bfa4452a3
Additional changes making it easier to prove that integer overflow does not
...
occur. No problems found.
FossilOrigin-Name: e846743a875430a5c51d41f00ac9532214f97d9925e6261113b63580f92369fc
2025-02-17 18:09:24 +00:00
drh
ef86b942b9
Code changes that make it easier to prove that no 32-bit integer overflows
...
happen during memory allocation. No problems fixed; this change is just
to make future maintenance easier.
FossilOrigin-Name: 215650a5a1d55bdbca9c92524804a1a54456a17f42a17e53747b21a6507506f5
2025-02-17 17:33:14 +00:00
stephan
ad5dcff53b
Add two generated files to the distclean rules of the autoconf bundle.
...
FossilOrigin-Name: b59d0ebb22e4ca2f3a7a73dd49a0c142dbca538cb1b4eafd35a78bac87c6c456
2025-02-17 16:14:15 +00:00
stephan
f6757b305a
Replace TEXE (legacy name) with T.exe (3.48+ name) in two places in makefiles. This fixes distclean of jimsh.exe in the canonical build in non-native Windows environments.
...
FossilOrigin-Name: edb8a78c0238f085eefbf86aa7777528f36f3400d4ef096ffd6855cf3321a97b
2025-02-17 16:04:21 +00:00
drh
56d2fd008b
Harden the SQLITE_DBCONFIG_LOOKASIDE interface against misuse, such as
...
described in [forum:/forumpost/48f365daec|forum post 48f365daec]. Enhancements
to the SQLITE_DBCONFIG_LOOKASIDE documentation. Test cases in TH3.
FossilOrigin-Name: 1ec4c308c76c69fba031184254fc3340f07607cfbf8342b13713ab445563d377
2025-02-17 14:16:49 +00:00
drh
59c64e086a
Fix a typo (a missing ")") in a comment that is used to generate
...
documentation. No changes to code.
FossilOrigin-Name: ea21685658df8246551650666ff59945ac27271b10a675104cbadaf57d48595f
2025-02-17 10:58:23 +00:00
stephan
3cc3898e13
Internal reordering/re-grouping of some configure flags. No functional changes.
...
FossilOrigin-Name: 0c085a5ab51d6ac793a147a865bd086b1a6a572932c251b38d3854e4ea802f8d
2025-02-16 19:16:09 +00:00
stephan
c2d56ea4ea
Re-add the --disable-static-shell configure feature to the autoconf bundle. It got lost in the autoconf-to-autosetup port, as reported in [forum:cc219ee7044|forum post cc219ee7044].
...
FossilOrigin-Name: 47e817f663468ce08dae4965b7ecacefb921a77398ec958b35bf5cedee767e24
2025-02-16 18:14:05 +00:00
stephan
4b1c8362e7
Update autoconf/Makefile.msc from tool/mkmsvcmin.tcl.
...
FossilOrigin-Name: 9ffe94d2ea0b3679c3d2657e2c3b67f84c09e9bcbbe0a13c76d58858df367d1b
2025-02-16 13:49:18 +00:00
stephan
18780193d5
API naming typo reported in [forum:416f2d8dec|forum post 416f2d8dec]. No functional changes.
...
FossilOrigin-Name: 0cfb9e234e116741d01b65d0abf18210e495276319fb08ec6e40d3f2e698956d
2025-02-16 13:13:19 +00:00
drh
f4fc2ee203
Add a typecast to avoid 32-bit integer overflow in the concat_ws()
...
function with an enormous separator values and many arguments.
FossilOrigin-Name: 498e3f1cf57f164fbd8380e92bf91b9f26d6aa05d092fcd135d754abf1e5b1b5
2025-02-16 10:57:25 +00:00
stephan
ac729894be
Remove tea version check from tool/srctree-check.tcl, as it's obsoleted by [be265559].
...
FossilOrigin-Name: 1860ea060bd373f49d0b5d41367409a4607e9a0a0cb606af99927af15de1e21e
2025-02-15 17:29:56 +00:00
stephan
4a1c44eea7
Automate update of the library version number in autoconf/tea/configure.ac as part of the tool/mkautoconfamal.sh process, per /chat discussion.
...
FossilOrigin-Name: be265559a334eda127862ae54edb58c46051f74445642daa84a9f61a81df1bac
2025-02-15 16:24:05 +00:00
stephan
984f699ccb
DLL installation rules no longer create versioned symlinks on platforms where the DLL extension is '.dll' (cygwin, msys2, etc.), as suggested in [forum:28bb79638844c328|forum post 28bb79638844c328].
...
FossilOrigin-Name: d743410665df8ba962db6e1f245d929b005d0add77be95af3c3c7f87a1c758fb
2025-02-15 16:12:28 +00:00
stephan
4e87ddc105
A cleaner workaround for [6a21d6a2], provided by autosetup's creator.
...
FossilOrigin-Name: 334ed723d0fc0b202f79a9746459181f637ca99c54864a4aa11629eecb4b8d0c
2025-02-15 14:12:24 +00:00
stephan
6b5599726b
More informative output for the pthread feature test.
...
FossilOrigin-Name: 01b9ed73ca6e72411dcf5a81f445c15c5bc42fa068fc7eca485ac72635b9d2fc
2025-02-14 18:17:31 +00:00
stephan
d04782206b
Make failure to find pthreads support non-fatal unless --enable-threadsafe is specifically passed in. Build regression reported in [8e0fdb8c0d].
...
FossilOrigin-Name: 806ad1ac173d7c0d6d94bfccd3b961fc5c9541b32773c063a8c4082380d7a90d
2025-02-14 18:06:28 +00:00
stephan
b0c987967f
Simplify the --help workaround introduced in [6a21d6a2ed].
...
FossilOrigin-Name: b0928f2043ed2a5d445c65f0d7271431e182f5a6fcd24ddcd57ea1cdcf4bbaa2
2025-02-14 17:52:57 +00:00
stephan
a09fd7b913
Work around a autosetup --help bug which only(?) triggers on tcl 8.6, introduced by [9978c87139b7b042] and reported upstream as [ https://github.com/msteveb/autosetup/issues/73 |ticket #73 ]. Summary: calling 'options' from a proc, instead of the global scope, triggers an error about an invalid use of 'break'.
...
FossilOrigin-Name: 6a21d6a2ed627ba0a864bef85369ed17553b808ae5c19891fa1f70505dfcbe39
2025-02-14 17:21:05 +00:00
stephan
e3157582bf
ICU config support: add more details to error messages and correct a typo which would cause a configure crash if --with-icu-config=X refered to a non-executable X.
...
FossilOrigin-Name: ff508926651d632d86081ccde89d3367c89538dde469e9e925540d634ac8a416
2025-02-14 16:42:37 +00:00
drh
f338ab20ef
Fix test cases added for [d7b90d92ffbfc61f] so that they also work when
...
compiling with ICU support.
[forum:/forumpost/2ca8a09a7e|Forum post 2ca8a09a7e]
FossilOrigin-Name: 5964616dc9de9323fddfede0ded29ee135498c8760017ce1158461f596fe6914
2025-02-14 10:28:28 +00:00
stephan
e89f31f19a
When using the --out-implib build option, install the generated .dll.a file to PREFIX/lib.
...
FossilOrigin-Name: 0dadea0ec86b6ac74281915433e41ae66cc20547d9882c4be2933a24c8287927
2025-02-13 16:20:05 +00:00
dan
5087eacb18
Ensure the counts of "deferred FK violations" and "deferred immediate FK violations" are kept separate when "PRAGMA defer_foreign_keys" is used.
...
FossilOrigin-Name: c5190b0fd9bd76653fb7bb08e931699e42c88cef8a00352360d091948cda93a2
2025-02-13 14:47:25 +00:00
dan
25367c1eb0
Fix a few 32-bit overflow problems in showdb.c.
...
FossilOrigin-Name: 9377766647eeaa575d646cf5f66c3163ef7074930aa5c3b11073e6b1e90ce799
2025-02-12 20:19:57 +00:00
dan
8bbce21ed7
Have the win32 VFS take a temporary shared lock (instead of the current exclusive) on the pending-byte when taking a SHARED lock on a db. Do not lock the pending-byte at all when taking an EXCLUSIVE lock if RESERVED is not already held.
...
FossilOrigin-Name: 5127509abb10cb1da35b9874ea63e0c2f882b10567606e2bdd636a50811a693c
2025-02-12 17:21:24 +00:00
stephan
1be96b44c1
configure --help cleanups and eliminate the use of a JS-esque inner function in sqlite-config.tcl. No functional changes.
...
FossilOrigin-Name: 6df859cd18ded3ca64a184e45709503dd9b6a3f65e7611d3352f0bad288400f4
2025-02-12 16:59:07 +00:00
dan
f3e24d0875
Remove old function declaration accidentally left in sqlite3session.h.
...
FossilOrigin-Name: 0cfbe349d4b740f3d2be8c714cf679901fc2465db4c64e4c3742da700d82f4e7
2025-02-12 15:31:26 +00:00
stephan
56ff8df023
Tiny tcl comment tweaks. No functional changes.
...
FossilOrigin-Name: da94e551c0ed354ae782c89fd9495d607b77ad7572d90c41ceac12bd6ec4c31b
2025-02-12 14:51:02 +00:00
dan
41f29806a1
Fix test script errors in walsetlk3.test. Tests still don't all pass.
...
FossilOrigin-Name: 56eb4114f8bf9971960998ae0b79352767657ee19b5bdfec5149906e72ba170f
2025-02-12 08:07:10 +00:00
drh
cd56ad4ccb
Omit the src/pragma.h file. It is generated by the tool/mkpragmatab.tcl script.
...
The makefiles now know how to build this file for themselves.
FossilOrigin-Name: 9709ed1cdfa17f690ffd4ec8cfc54efefec8352143c1d8b701f09299bd7eef6e
2025-02-11 19:54:13 +00:00
drh
374c6a451e
Omit the src/ctime.c source file, since it is automatically generated by a TCL
...
script. Instead, add rules to the various makefiles to generate ctime.c on
demand.
FossilOrigin-Name: 958bb5de7c484cc503c38d38d51a30f679244fd364df5cbfc1992e36995b2ff9
2025-02-11 19:40:19 +00:00
dan
e5769f6525
Update tool/mkctimec.tcl so that sqlite3_compileoption_xxx() APIs report on the SQLITE_ENABLE_SETLK_TIMEOUT option.
...
FossilOrigin-Name: 303e8009ab59aad32030407baf3eff9443f7f9bed7947218b78293b06bba1737
2025-02-11 18:32:22 +00:00
dan
833dd3daff
Fix "unused variable" warnings in os_unix.c and os_win.c.
...
FossilOrigin-Name: 8e809632ba3bb20b7ec23ce9e6ca659c57cf1338b1fe8c33502c5f3161061dd2
2025-02-11 18:29:35 +00:00
stephan
db253d0862
Rename a configure-internal function and fix handling of --dump-defines for the autoconf bundle.
...
FossilOrigin-Name: 6aa54cc180e034a10d8fc8f8b0c13d7bc0c94509b4240ac855121d501853768f
2025-02-11 17:20:12 +00:00
dan
138951dc2e
Merge latest changes from trunk into this branch.
...
FossilOrigin-Name: e5ec5bb9f4dc3e02db7ab0e49686f47617af75d3f7d4ab23288a1aea4a693e59
2025-02-11 17:10:46 +00:00
stephan
ba8e3ca139
Move the configure flags definition and handling into autosetup/sqlite-config.tcl to avoid duplication between auto.def and autoconf/auto.def while still giving us a way to filter the canonical-tree-only flags out of the autoconf build.
...
FossilOrigin-Name: 9978c87139b7b04208fd1f62121fc4e1e2080723fde69a2bbdca88769f4baf22
2025-02-11 17:10:10 +00:00
stephan
62e1d44846
Make the --out-implib support ([6092b0b86bf93a3d]) specifically opt-in because the feature check for it passes on some platforms where it is not recognized at link-time.
...
FossilOrigin-Name: 75535f2355b3b2e83dd57f4c30340af98c8dbcfe6ff1e9be17d23bd30d7d766c
2025-02-11 13:13:46 +00:00
stephan
df9b89932f
Adapt [ https://fossil-scm.org/home/info/3bff7b92d6d |Fossil SCM patch 3bff7b92d6d], applying -lrt for platforms which need it for one of {fdatasync, nanosleep}.
...
FossilOrigin-Name: 1768de6e9e2c6ff3a9ee29fa6f488fb3d23a3599195ac7d1b09e61c02b7d18b3
2025-02-11 13:00:40 +00:00
dan
2d87894700
Experimental change to allow clients to block when taking a SHARED lock to connect to a wal mode database.
...
FossilOrigin-Name: d2d6a000fb9bf8097e0ce9979685408d183be3ab785ceeb11ec1f97a81a83e41
2025-02-10 20:46:14 +00:00
drh
0a4af54a7e
Remove a pointless line of code.
...
FossilOrigin-Name: 57b2b812c8c5524f315e20cee0e6a12a3b1635aeb42925bf891532a7029d0eb0
2025-02-10 19:48:13 +00:00
drh
6cc36dfb16
Add the --size option to the test/speedtest.tcl script.
...
FossilOrigin-Name: 6b9007cb30257ca97de74dec1df47f46f238f034083517a51c24334e4bd30663
2025-02-10 19:12:18 +00:00
stephan
b2972b8c6f
Minor autosetup doc tweaks.
...
FossilOrigin-Name: bb53beb267ee5f5836020a58f32f1bed8deb587890eef9a6e034dad53f8c3f42
2025-02-10 18:41:46 +00:00
drh
8f79342f6a
Make the "mix1" testset the default for speedtest1.
...
FossilOrigin-Name: 7a0c3d0e14984dd49a7c1e824b9e50564094ad57c43182bfec7624a55815f961
2025-02-10 16:34:30 +00:00
drh
dadd0b4085
Enhance speedtest1 with a new testset that calls sqlite3_open() and uses the
...
connection many times.
FossilOrigin-Name: ce307addb0c7cf72e4cca066521df6e15d1220bce303a3796a794a2ae5fa95b3
2025-02-10 16:13:56 +00:00
stephan
9dfc2c61ec
Add jimsh.exe and jimsh0.exe to the clean rules in Makefile.msc so that stale builds of those files from msys2 and friends do not cause mysterious build errors.
...
FossilOrigin-Name: 44b4e4db321815c6fc0327ed7b97df868833654411e882b70f54ad3f6d212987
2025-02-10 15:58:22 +00:00
stephan
3ea05b5b4f
configure: when dlopen() is not found, only fail fatally if --enable-loadable-module is explicitly provided, else warn instead. Based on discussion around [forum:2efe9c33bd9021ca|forum post 2efe9c33bd9021ca]. Update proj-indented-notice to behave like its docs say it should when the -error flag is used.
...
FossilOrigin-Name: f28e52cbf9e80cb5a1cde7cba099e2c2b6787a77263796e4f9febf3f30bc99dc
2025-02-10 15:01:14 +00:00
drh
a0d35d44e4
Convert some expensive NEVER() and ASSERT() macros into assert()s.
...
FossilOrigin-Name: 4aad891802d9d87f1ff3cbbf4bc70fa242c6782088189a2bd5d6f8863f552d29
2025-02-10 11:16:37 +00:00
drh
93df8109fc
Small performance increase in jsonTranslateBlobToText().
...
FossilOrigin-Name: 3b1dcac2eeaf5f97450919f2a6eed74a4d54fb2b812bdb4a580f79d075e99dfe
2025-02-10 00:20:50 +00:00
drh
3efac4aa78
Performance optimization to the substr() SQL function.
...
FossilOrigin-Name: ce228ce3d0132ad758b5b7464fcf22ae5976df3c02ec948280cc76290c79ed0b
2025-02-09 20:23:29 +00:00
drh
3bdebaeabb
Performance and size optimization for the sqlite3ColumnIndex() routine.
...
FossilOrigin-Name: a93e3fe0ee8f98a7ec0dfb2e1abf432cc9d5f9d3ad345b5db261475215d43df9
2025-02-09 19:49:46 +00:00
stephan
b85b7f257d
Update the 'clean' rules for autoconf/Makefile.in to account for [6092b0b8].
...
FossilOrigin-Name: f3a35fdc9113ad5f1fed6a2f474aee670e1793d355475a7971d376bf33823cc4
2025-02-09 05:37:25 +00:00
stephan
79d0aa6f56
Apply [6092b0b8] to autoconf/Makefile.in.
...
FossilOrigin-Name: 9ae245cff49716e4c0bbd3fbb3f82276e5fb54d595d1e1d9a452edef45d7740f
2025-02-09 05:30:47 +00:00
stephan
63f4926524
configure: if the linker supports --out-implib, generate libsqlite3.X.a, where X is the platform's DLL file extension. Discussion in/around [forum:0c7fc097b2|forum post 0c7fc097b2].
...
FossilOrigin-Name: 6092b0b86bf93a3d58a83774b6d07ef9735e6c8a0f2ac2d0a6d263c2e9f1e3ca
2025-02-09 04:38:56 +00:00
stephan
e108f97256
wasm: add some build-time validation to ensure that the problem fixed in [65798c09a00662a3] does not recur. Ensure that files generated via mkwasmbuilds.c have the generated makefile as a dependency.
...
FossilOrigin-Name: 55e01365946b3432e93da5c08200e476e2a134c98b963b4170e4dfae8408a005
2025-02-09 04:16:01 +00:00
stephan
00bc96c05c
wasm: when building in -O0 mode (typical dev mode), use -sASSERTIONS=2, else -sASSERTIONS=0, in response [ https://github.com/emscripten-core/emscripten/pull/23629/commits/7e3e35cbff9c5688eacb3cddc5045f872d744efd |Emscripten checkin 7e3e35cbff9], which adds assertions to check for the condition reported in [ https://github.com/emscripten-core/emscripten/issues/23420 |Emscripten ticket 23420]. Update some unrelated JS-side internal docs.
...
FossilOrigin-Name: 1f554610ba5d9d474ec4570bb7ca09125fd2cdfb4976530a4227cc6ebdf3a962
2025-02-09 03:24:00 +00:00
stephan
f858182689
JS: add a mechanism to the Worker1 exec API to fetch the last_insert_rowid(), as requested in [forum:56bc35390183f5d5|forum post 56bc353901].
...
FossilOrigin-Name: c22c48360756b1c7e2f5a9c01aff799bc188e100d364931de0dc3686e5de57a9
2025-02-09 02:41:35 +00:00
stephan
3e06f2d79b
configure: when transfering ENABLE/OMIT flags from CFLAGS to OPT_FEATURE_FLAGS, also do the same for CPPFLAGS and remove those ENABLE/OMIT flags from CFLAGS/CPPFLAGS to mimic legacy build behavior. Strip ENABLE/OMIT flags from BUILD_CFLAGS but do not transfer those to OPT_FEATURE_FLAGS, also to mimic legacy behavior. This is the second part of a fix discussed at [forum:9801e54665afd728|forum post 9801e54665afd728].
...
FossilOrigin-Name: 16d307cc6c1e203900e7a2dc0730fc0e453946622a2114a07d64ebb99045cfbf
2025-02-09 01:25:00 +00:00
drh
5b0b8653b6
Add the "star" testset to speedtest1. Include it as part of "mix1".
...
FossilOrigin-Name: f1345b84eaae5404268df1d0449c409fe5c4a4f9742bd67a75c7333c8c9cd597
2025-02-09 00:54:56 +00:00
drh
66172ceb89
Put a 16-byte hash table for column names on each Table object, to speed
...
up column name lookups.
FossilOrigin-Name: 11eb8f99e5c4974cb6ba39e5bbc99f6b88b9e01006b70d5fea85c2a6d4f7044f
2025-02-08 16:16:08 +00:00
drh
9d90a3af2f
Use the sqlite3ColumnIndex() routine to look up a column in a table, rather
...
than using a custom loop. Performance improvement, size reduction, and
complexity decrease.
FossilOrigin-Name: 351dbbc2bf0b23efdc625ddaa5dc2239cf2990addf071a04bd41612b341de8c8
2025-02-08 14:15:42 +00:00
drh
03c65171b8
Fix GCC-isms and compiler warnings introduced by recent check-ins
...
[c56092507c967230] and [6e57848fe1e0e2b5].
FossilOrigin-Name: 91102c04375f83cffcd0f3204870e476636f651710e9e6fb773cf74085ef7636
2025-02-08 13:34:19 +00:00
drh
297a95bad5
Improvements to the symbol table hash: faster lookups with fewer calls to
...
sqlite3StrICmp() for schemas with many symbols and large names.
FossilOrigin-Name: 6e57848fe1e0e2b533dd65c2bc5fbac660202cf91cb94ac5468a3434e367a087
2025-02-08 12:04:25 +00:00
drh
f62d053b49
Improvements to the hash table used to store symbols in the schema, so that
...
it works better (requires fewer calls to sqlite3StrICmp()) for large schemas,
and uses less code space.
FossilOrigin-Name: 0318b68c845c84eded757c67f820e1783551574ac9e5670be640c4bfe22a934b
2025-02-08 11:15:41 +00:00
stephan
7df570421c
build: work around a report of (install -d DIR) failing in one environment if DIR already exists.
...
FossilOrigin-Name: 8f7b7840d48c391d43ac034ebfee9227dc1c2800adda24f02f3d3bb942f4380e
2025-02-07 19:18:20 +00:00
drh
84b0f221f4
Fix comments on the Parse.nMaxArgs field so that they are correct. Add
...
assert()s to ensure they are correct. Other Parse changes to reduce the
amount of memset() needed to initialize it.
FossilOrigin-Name: c56092507c96723030589ddd9121bc993d615a7acd453305fc3b1dbb9e30554c
2025-02-07 19:09:20 +00:00
drh
7fd936e5ed
Further reduction in the amount of memset() needed to initialize the Parse
...
object.
FossilOrigin-Name: 45e462c0060e51c3375a226d636148e3415ee6020e544ecc84861c7aef4ecf7b
2025-02-07 15:49:21 +00:00
stephan
189a4a0bbb
Mac-specific build fixes discussed in [forum:9dfd5b8fd525a5d7|forum thread 9dfd5b8fd525a5d7]: rename dylib links and add legacy-compatibility versioning stamps to libsqlite3.dylib.
...
FossilOrigin-Name: 668bcf327a82a63d45be8cf38fdddc855dbcefdedf6c208e091eb7e2d244929d
2025-02-07 14:44:31 +00:00
drh
ede1690cce
Reduce the amount of memset() needed to initialize the Parse object.
...
FossilOrigin-Name: 284538d8486ef3e9bee1ab980043b53c144743c31b984be13a5cc137e7cbec31
2025-02-07 13:37:15 +00:00
stephan
7a7002143c
configure: change extension of static libraries from .lib to .a on msys/cygwin, as per discussion in [forum:02db2d4240|forum post 02db2d4240]. Replace unidiomatic JS-style use of inner procs in autosetup/proj.tcl with TCL lambdas.
...
FossilOrigin-Name: 46f51e2a3707614a2b3ca6261bc6e0e8835477fdb7cbcf2f06b20cdebde2bab9
2025-02-07 12:58:09 +00:00
stephan
d8452a9517
Reorder a piece of ext/wasm/GNUmakefile to correct the timing of various var accesses. Fixes a problem [ https://github.com/sqlite/sqlite-wasm/pull/99 |reported in the downstream npm subproject] and explains the confusion in [4aa025a943a4024094b9] (which has been reverted).
...
FossilOrigin-Name: 65798c09a00662a3598f01571d6f3a2dc750c3d0b127c344590539244afe4aa7
2025-02-07 12:33:48 +00:00
stephan
4192a95d23
Fix out-of-tree builds of the autoconf bundle, as reported in [forum:a0cd0beb1baa6bef|forum post a0cd0beb1baa6bef].
...
FossilOrigin-Name: d47964a65bcfd4bc0b06baca281467a0b7fc87eba912a19c0974f63a54928ff8
2025-02-07 11:15:58 +00:00
stephan
6b3010a134
Bump TEA configure.ac version number.
...
FossilOrigin-Name: a1a9c780d1f1b47b0408397edded9c5d230c7b144207ad142d06c048792d31fa
2025-02-07 01:43:05 +00:00
drh
038424727b
Adjust the test/speedtest.tcl script so that it uses an on-disk database
...
rather than an in-memory database.
FossilOrigin-Name: e93d7aa1db9bdbf1996c4c168e67284177e384b7acf176d74a0458258faab05c
2025-02-06 17:29:14 +00:00
drh
65552a7ae1
Fix a harmless typo in a comment.
...
FossilOrigin-Name: ed82272904deb37640286448e03153316f828c629547a615a504af1d7ec5a278
2025-02-06 17:10:38 +00:00
stephan
01bfe2a531
Bump version number to 3.50.0 for the next dev cycle.
...
FossilOrigin-Name: 46d08071f3f9fef78bc2444b52060e0e7de8c357a2aa213ac13c565e33acc4a0
2025-02-06 13:36:31 +00:00
stephan
3c013479c3
Fix a dependencies/order-of-operations bug in ext/wasm/GNUmakefile which causes creation of files filtered via c-pp to fail if the ext/wasm/jswasm dir did not exist beforehand.
...
FossilOrigin-Name: 4bac76138853a89484d3ac0486a9ed5143aa671b13b4b3abb704c1487213b388
2025-02-06 13:18:49 +00:00
drh
659bafd05d
Version 3.49.0
...
FossilOrigin-Name: 4a7dd425dc2a0e5082a9049c9b4a9d4f199a71583d014c24b4cfe276c5a77cde
2025-02-06 11:55:18 +00:00
drh
31c3599ed0
Fix a harmless unused-parameter compiler warning introduced by [75f3d8744879].
...
FossilOrigin-Name: 9f28f6694f97d5ee0345b45f9bf81e3fdce0990ce32fb9bdbbaac079126a67c9
2025-02-05 16:08:11 +00:00
stephan
6c074e5dc4
Summarize known incompatibilities/gotches between JimTCL and canonical TCL, and their workarounds. Doc changes only.
...
FossilOrigin-Name: 60c932e67b886d4c050698f36e1d3fc04eb99473d62bb3b1585a97d90e27227e
2025-02-05 12:56:55 +00:00
stephan
97af1346f0
Upstream JimTCL patch and minor tcl script tweaks to support (fconfigure -translation binary) for better cross-platform build portability.
...
FossilOrigin-Name: 0974a17c4565f202777fc6203df20dca19acc1e8740ede15334783f41e3e5054
2025-02-05 12:49:15 +00:00
drh
b6859b6f2c
Attempted improvements to the SQLITE_DBCONFIG_... documentation.
...
FossilOrigin-Name: baac853871ad307b67b4d624b9ee47fc1313f1aa62c9f8072fb49e97aa33db94
2025-02-05 12:02:43 +00:00
drh
802b042f6e
Detect and report signed integer overflow in the sumInverse() routine,
...
used by window functions.
FossilOrigin-Name: 317e9a470fba2a4b717b9cb66488b8fccb44810a80f3a7deaf1ea81906e2b8d2
2025-02-04 02:38:23 +00:00
drh
e85b2cac0f
Test case for the FTS3 fix in the previous check-in.
...
FossilOrigin-Name: 459d8f695ef868d0ec09920ab2035eebd36a66051f9905e2605f4600623faa47
2025-02-03 23:27:27 +00:00
drh
51dd67080a
Fix a potential UAF in FTS3.
...
FossilOrigin-Name: 75f3d87448793fc7fd68d817874d561842e029a2d6c1ea4abcec39764cd38469
2025-02-03 23:19:42 +00:00
drh
31615637f3
New dbsqlfuzz case added to fuzzdata8.db.
...
FossilOrigin-Name: 7ee20cfc237229dbea7116149c0c35883f7b8087b9ccdce6dca16b6da1c6caf8
2025-02-03 21:24:40 +00:00
drh
0d9f2a15f2
The Parse.addrExplain field is never even if SQLITE_OMIT_EXPLAIN is defined.
...
FossilOrigin-Name: 5d81a984c6aabb9fa9180efde8ca942b40f1ec18ff5a89f2fbb1252734f051d3
2025-02-03 21:04:21 +00:00
drh
1c68deead7
Enhance fuzzcheck so that the --sqlid and --dbid options can take a range
...
of IDs to run.
FossilOrigin-Name: 408fa57f048e05a261fb62b45ae44b8a97c97fc01e3776124cbef6595df579d4
2025-02-03 18:53:02 +00:00
drh
589796cd89
Fixes and improved documentation to the new --sqlid and --dbid range
...
options in fuzzcheck.
FossilOrigin-Name: 59e26632449163a36b803cc7027ed99c1f6b675dda6f0b2b12bbe55884923f08
2025-02-03 18:49:06 +00:00
drh
dbe48d3c8d
Enhance fuzzcheck so that the --sqlid and --dbid options can specify a
...
range of tests to be run.
FossilOrigin-Name: cdd0af6f86e49ade1339ad5a3cc444400a9722a9efdf84a30b3ff9428b7ac36d
2025-02-03 18:36:05 +00:00
drh
c2b446f16a
Fix for a potential UAF in FTS5.
...
FossilOrigin-Name: e33f2fedda17b4f3678fc23c438093c256b0c125da5f1ac42ecaf3d604d54b6a
2025-02-03 18:05:54 +00:00
stephan
6e5802fc74
Improve the JS-side sqlite3_set_auxdata() test to also trigger the case that the aux data actually gets reused. Test changes only, no library code.
...
FossilOrigin-Name: 9f27379d860518e6e097a2c999da04176812260a61bf11fe495c3efd76971806
2025-02-03 18:01:42 +00:00
dan
9e639d2490
Fix a use-after-free case in fts5 provoked by fuzzdata8.db. Tcl test case pending.
...
FossilOrigin-Name: a4962df665084e423e020be9a2834b6886a8e3feb461cff5358b61398a2a20d2
2025-02-03 17:54:55 +00:00
drh
c6281e4893
New test case for test/fuzzdata8.db
...
FossilOrigin-Name: 8a882f976e22100b91c7ca4119123f16ad5f03311f0a6dc17449bcdcff29618c
2025-02-03 17:45:41 +00:00
stephan
3cd34ab981
Rework [76c8435a] to eliminate automatic JS-to-WASM function conversions of sqlite3_set_auxdata() destructors because it can leads to leaks on every call of a UDF. This feature never worked before [76c8435a] but fixing it was ill-conceived because of the memory leakage it introduces. WASM function pointers can still be used as destructors in this context.
...
FossilOrigin-Name: 3fb993af0caf041da934cea29c039b27c468be0b75bce1537a6425767cf9bf8d
2025-02-03 17:34:12 +00:00
stephan
c97abeac0b
Add a test app to assist in validating the SAHPool digest calculation fix.
...
FossilOrigin-Name: a1e304b8020025cc73a658bd8c7697d59b4f3ad96cac0a3e36553a3207d13dc6
2025-02-03 17:21:54 +00:00
stephan
40ce00b546
Initial work on a fix for the SAHPool VFS's effectively-no-op digest calculation, as reported in [ https://github.com/sqlite/sqlite-wasm/issues/97 |ticket #97 of the downstream npm subproject]. This requires more testing alongside databases created before this version to ensure that it's backwards-compatible.
...
FossilOrigin-Name: 9234c33f92d92bfddc6211c9c587f1072e70837c0ffe1416ef7d84d59bacd364
2025-02-03 16:26:30 +00:00
stephan
d98689f4d3
Add a more complete test for [76c8435a] and add some commentary about (A) the inability to automatically clean up automatically-generated WASM proxy functions for sqlite3_set_auxdata() destructors and (B) how to deal with (A) to avoid leaking WASM proxy functions.
...
FossilOrigin-Name: d693c2dddbd10a2e0b77893b04b11502e30b768f1b06814105f7f35172845fb9
2025-02-03 14:55:56 +00:00
drh
cf9f841c5e
Fix the build process on Windows so that it generates identical sqlite3.c,
...
sqlite3.h, and shell.c files on Windows and Unix. This patch also includes
a change to JS bindings that got caught up in the branch.
FossilOrigin-Name: 91ef45fc2902e46813366ec6b8317209f39f10e4a23c3808e33aceedab9da6c7
2025-02-03 14:44:16 +00:00
drh
77586831ed
Bring the autoconf-tarball Makefile.msc into alignment with the main
...
Makefile.msc.
FossilOrigin-Name: 52a7a162d131532de8f4403b099fa122fc72c80f71494fb561afc4e0ff8e6bf4
2025-02-03 14:40:05 +00:00
stephan
d256b56880
Correct the FuncPtrAdapter signature for the JS binding of sqlite3_set_auxdata(). Reported in [ https://github.com/sqlite/sqlite-wasm/issues/92 |the npm subproject, ticket #92 ].
...
FossilOrigin-Name: 76c8435a5f390001038b8ee94322ff478c9d5f29501ed1c5891c952a41e377aa
2025-02-03 14:04:27 +00:00
drh
3cf467a3ec
Adjust the build process to avoid extra CR characters inserted by jimsh
...
on Windows.
FossilOrigin-Name: 1f54853932cec9ba20e9be48a59f1817b8b45e4c4d6ef8a06d34f86dd688e28e
2025-02-03 13:20:11 +00:00
drh
4170780a82
The "clean" target on Makefile.msc should not delete the auto.def file.
...
FossilOrigin-Name: 72fbcedfb09febb72fa325cb21d160cd33dca7fe5579817143f47d90a20ec2ef
2025-02-03 12:42:03 +00:00
drh
f306ca5286
Add a header comment to test/speedtest1.c that outlines how to compile the
...
program using historical amalgamation sources, for comparison testing.
FossilOrigin-Name: 602d4dd69ec9a724c69cb41ab15376ec731bfd4894fac0a2b25076b857786c6d
2025-02-02 18:01:32 +00:00
drh
c229f11817
Update to the "--help" output from speedtest1.
...
FossilOrigin-Name: 5216452047eecdd6c0f6ab85b304f975ed05a394a4ad9ae793fb65d645502b12
2025-02-02 16:52:21 +00:00
stephan
14613b1b1d
URL typo fix in code comments. No code changes.
...
FossilOrigin-Name: 002a123094e4ef14eb5ec28033adca6083ba2717e1eaa23e80595e37a947e6c2
2025-02-02 12:15:25 +00:00
drh
c49bfdbbee
Add a missing "db2 close" to the ext/session/session_gen.test test module.
...
FossilOrigin-Name: 4068f586ddadd3a818645574f7584fcee6d373dbf45805c545100883b495598a
2025-02-01 23:49:01 +00:00
drh
4b99ec0b8c
Fix a comment typo - in a comment used to generate documentation.
...
FossilOrigin-Name: b8de75eeded79a8312218d7a543e7c7d11181c9f4004e875495608d11a81ff38
2025-02-01 23:34:33 +00:00
drh
454a426e31
Remove an ALWAYS() added by [2567298f4b0fdfeb] because dbsqlfuzz found a way
...
to reach it. The test case was added to TH3.
FossilOrigin-Name: d08a7aa8987458a91fcb861d58289e622ba8722936c7874a284f9f2fd782e269
2025-02-01 23:28:49 +00:00
drh
5c72a39cfb
Enable SQLITE_ENABLE_NORMALIZE for several test configurations.
...
FossilOrigin-Name: b07c64077a3912ef7cdf23e9411df6387f38baa32f5a11fffec5ba4f93935e27
2025-02-01 21:06:49 +00:00
drh
de50617bcb
Fix an issue with sqlite3_normalized_sql() caused by changes needed to
...
support SQLITE_DBCONFIG_ENABLE_COMMENT.
FossilOrigin-Name: 79d287a39443f2d098fcc24199627555a656b34aa5bf5d484f91cb513d83e143
2025-02-01 20:53:17 +00:00
stephan
fdc17e0bc8
JS doc typo fixes. No functional changes.
...
FossilOrigin-Name: e0d9c74c1cdddb2321131255b94f9cda6530be3f2a06aed4abb54dcda092481e
2025-02-01 09:44:48 +00:00
drh
276d213b2a
Tweaks to [4b4f33d791fe4318] to make it easier to test.
...
FossilOrigin-Name: 2567298f4b0fdfeb42aa6bba7e0bec3bc8d0b89bf644a79b41893dd6a6c5774c
2025-01-31 20:18:34 +00:00
drh
45b2669ad3
Fix test case numbering in tests recently added to like3.test.
...
FossilOrigin-Name: 6df2098c548b58c2910837726b666a628d5c712c560c0221a771e8181f71fae7
2025-01-31 18:56:58 +00:00
stephan
82f3052e61
Expose the new SQLITE_DBCONFIG_ENABLE_ATTACH_CREATE/WRITE and SQLITE_DBCONFIG_ENABLE_COMMENTS (from [325e547a21955]) to JS/WASM.
...
FossilOrigin-Name: 8da1a9af66f905c683e9c3445d609b5c0e11ac912be192c468ddd79f237837f4
2025-01-31 18:45:03 +00:00
dan
8fbf400bb0
Remove an assert() that is not true if a trace-callback is deregistered while there are active statements.
...
FossilOrigin-Name: 0ecfc4d0ebdb272a69f8f98ddb069c7e0735fb899804027eb16f241d83b3d046
2025-01-31 18:33:37 +00:00
stephan
cee7609074
Minor cleanups in the opfs-sahpool pause/unpause API demo.
...
FossilOrigin-Name: e205cdc468e02eefdeb8d391d921aa2d4d28a8b7b87036d6d937a9928261a413
2025-01-31 17:47:47 +00:00
stephan
a75321d735
Add the conventional license header to sahpool-worker.js and correct the date on the header in sahpool-pausing.js.
...
FossilOrigin-Name: f7c3026b0d2e33cc4e3b906810d860b155b1ff714bbe4e1eb9ee392122217efa
2025-01-31 16:34:52 +00:00
stephan
cb0da053ed
Add a small test app demonstrating cooperative semi-concurrency of the opfs-sahpool VFS using its un/pauseVfs() APIs.
...
FossilOrigin-Name: 09570c55a23e5af76dd2153a5b28a493f498d7d4a08b0089f3074d0a2c5d3d29
2025-01-31 16:25:18 +00:00
dan
f6ca35d88c
Fix a problem with LIKE and GLOB processing in utf-16be databases in cases where the utf-8 encoding of a character ends with the byte 0xBF.
...
FossilOrigin-Name: 4b4f33d791fe4318c4597bee7d2f9e486ed223e731982af470f5cc0dbdc600fc
2025-01-31 14:52:36 +00:00
drh
a033790303
If any errors occur while processing sqlite_dbpage changes, cancel
...
pending truncate operations.
FossilOrigin-Name: 6138e0dc4e0e4e19cb048fe0cd969156151fdc427eee21188d2a822642aad043
2025-01-31 14:52:05 +00:00
stephan
654c94d683
Cleanups in the opfs-sahpool VFS pause/unpause feature and its tests.
...
FossilOrigin-Name: 184ba37702f63196deca91d273e798ca895fbb301938e6264bc82815a4e33149
2025-01-31 14:25:38 +00:00
drh
32933278fd
Three new options to sqlite3_db_config(): ATTACH_CREATE, ATTACH_WRITE,
...
and COMMENTS.
FossilOrigin-Name: 325e547a2195571ece4bb22ca65d67d8c2cb42030618916d37930666cf221917
2025-01-31 13:32:03 +00:00
stephan
d4bfa3465e
Merge trunk into opfs-sahpool-pause branch.
...
FossilOrigin-Name: 775a547eca2b0b3dbb6c03990236128a095cc34d28caec44b9a5072510c75b63
2025-01-31 12:39:07 +00:00
stephan
efbf481541
Minor wasm-specific doc touchups.
...
FossilOrigin-Name: 56b618da9073db8b8d5dafa177a3c9e4c4d927bf512e14b0e6d23937f91ce4cf
2025-01-31 12:30:37 +00:00
drh
824a5bfcf0
Improvements to the SQLITE_DBCONFIG option documentation.
...
FossilOrigin-Name: 59f0ba10062a6ccfd56061a16af3436b9e1b9d23378bff3302bcf33bb3137cb9
2025-01-31 12:09:36 +00:00
stephan
80cf9fa00b
Correct a typo in tool/emcc.sh.in which could cause all of the configure-time work to locate the emcc binary to go unused. Reported in [forum:feb325cdde5b6f37|forum post feb325cdde5b6f37].
...
FossilOrigin-Name: f66efd5b531210407ee8f30cdf6684a7610479fd8810a609c54469f7424a0644
2025-01-31 11:45:55 +00:00
drh
e16b345243
Add the SQLITE_DBCONFIG_ENABLE_COMMENTS setting (default on) to enable or
...
disable the ability to include comments in SQL input text.
FossilOrigin-Name: 393749a2e22d5c8eba36e2106a35909420aa6316652d1ab4f18ef699247b6fba
2025-01-31 01:34:19 +00:00
drh
0911f86abf
Merge all the latest trunk changes into the extra-security branch.
...
FossilOrigin-Name: 86ba57561a8d8c14e401c06b2345a9417053aa3a5f0c84e52460f23f5e6aa8d0
2025-01-31 00:54:59 +00:00
drh
49906e8e4b
The reuse-subroutine optimization [c9a3498113074bbc] might have generated
...
byte-code that loops forever. This check-in fixes the problem.
FossilOrigin-Name: 0cc4ed8c6e53aca1f5e94c132bedbc7f561c04a77f1a30b965ffe7560634bfeb
2025-01-30 21:12:58 +00:00
dan
df54ecb1bf
Fix a problem causing the write-lock to be held when it should not be in some circumstances following a SEH exception.
...
FossilOrigin-Name: 7eb5accb7cf937fc967dcd86da0af813fb18a2697348bd231fbefd3c09b930ab
2025-01-30 17:04:28 +00:00
drh
8bffd498ea
Remove an unused parameter from an internal-use subroutine in the TCL interface.
...
FossilOrigin-Name: a700692b39e24f5ca9ea6f879d413e20c2ad2b85f62c867407dafe111f13d931
2025-01-30 16:07:51 +00:00
drh
000e39e9a8
Improvements to the TCL interface for Tcl9 as suggested by Jan Nijtmans.
...
FossilOrigin-Name: d76c5db866de2732b68401a4c3e39acddc7a99bed965160c1796477c062b478a
2025-01-30 16:00:28 +00:00
dan
462888819e
Have sqlite3_enable_setlk(-1) configure indefinite blocking locks where they are supported.
...
FossilOrigin-Name: 62009565d2f2a2c4d347e1da0d5b4ad43056742df47fd6ddb92e62f53a2b57f1
2025-01-30 15:26:16 +00:00
drh
8dacf71043
Updates to the compile-for-windows.md document.
...
FossilOrigin-Name: bcd22ed686954657ba820d53dec255d33797924f76e57b931016813581e04e06
2025-01-30 13:54:32 +00:00
stephan
73dcf45a3d
Minor code de-duplication across the top-level auto.def and autoconf/auto.def.
...
FossilOrigin-Name: 3c990d77cb83ab371d92c97e0528f790ab6126c60f48ff77e48bd166d7834cf0
2025-01-30 12:19:30 +00:00
drh
1392ff5533
Disable a test case that (intentionally) does use-after-free, as it does
...
occasionally cause problems even for non-sanitizer builds.
FossilOrigin-Name: 23c7d5bea351c04785153ddb30e19c1236db9d11054ab8229893531026b53655
2025-01-30 12:01:24 +00:00
stephan
00d6b7abfc
Fix build regression, introduced in [d2fe6b05f38d9d] (3.48.0), in which SQLITE_OMIT and SQLITE_ENABLE flags passed to configure via CFLAGS were not propagated to the OPT_FEATURE_FLAGS list. Reported in [forum:9801e54665afd728|forum post 9801e54665afd728].
...
FossilOrigin-Name: ec71d9dcd582188d7fb4ab945187de1023eaaecffeeb2903a6fcc49650bd21e9
2025-01-30 11:19:16 +00:00
dan
4f8f1965f7
Fix bug in sessions handling of FK constraints introduced by [e09a0c02] (released in 3.48.0). Bug was preventing a changeset containing FK violations from being applied even when the xConflict(CHANGESET_FOREIGN_KEY) returned OMIT.
...
FossilOrigin-Name: d7c07581203a0a88456588e49e51b40a8341b0e7121809f75be0ee882d91650f
2025-01-29 18:53:19 +00:00
stephan
cb46f1bb95
Simplify how OpfsSAHPoolUtil.unpauseVfs()'s returned promise is handled.
...
FossilOrigin-Name: d651b8da5a84cd54d71f15bd34e4db685674ef73f26f5cc26b7af5321a2ec05e
2025-01-29 11:28:18 +00:00
stephan
8883deb30e
Add experimental support to pause/unpause an SAHPool OPFS VFS, as discussed in [forum:fe8cdb8431c32455|forum post fe8cdb8431c32455], the intent being enable a page to relinquish, perhaps temporarily, the VFS such that the VFS's storage can be accessed by another page/tab.
...
FossilOrigin-Name: 1d2683fe9e4be01c3137e750900f54d287e7d96185e66924d24b50f4647e7ef1
2025-01-29 11:08:11 +00:00
drh
36279c256b
Enhance the if() and iif() SQL functions so that they support any
...
number of arguments greater than or equal to two.
Suggested by [forum:/forumpost/40f7867f75f80|forum post 40f7867f75f80].
FossilOrigin-Name: fb76d184ee5afc41009c4023bb68b3ddd42c9235a79ec9695c26f5bbe9a1aa25
2025-01-28 20:32:48 +00:00
dan
9dcf3d08c9
Fix sessions module handling of tables with generated columns.
...
FossilOrigin-Name: 437fb316389bc3c24c5cdb4d01edfc81e2c2e9f2b399fc2a95b05d279361d8ec
2025-01-28 19:03:37 +00:00
drh
0424f255ef
Fix a copy/paste typo in the output of vfstrace for xDlClose().
...
FossilOrigin-Name: 1d57b57c85bb8cb9b8a1808b771bb91eeb8150efd14f9064a390e533e715bab7
2025-01-28 18:03:22 +00:00
drh
8b62a82ae3
Simplifh the IdList object to remove unnecessary fields. Performance
...
increases by about 0.8%.
FossilOrigin-Name: a4625bb995dd5582d1f3cf0c2e54eb3f01f1cc1405811dda86ebd38b2b858994
2025-01-28 12:50:17 +00:00
drh
b0c8b08874
Fix typo in speedtest.md.
...
FossilOrigin-Name: 984a9cc22c7c8492bf4fae482749663899b0e33a25c32e6ae5c5e98fc12bb83e
2025-01-28 10:56:22 +00:00
drh
50637ca5c5
Apparently I got the logic of [abfe488ed67e2e35] confused, even backwards.
...
Change it so that the SQLITE_USE_W32_FOR_CONSOLE_IO macro causes Win32 APIs
to be used for console I/O and for stdio to be used otherwise. This is
reported to be necessary for builds that use a C-language runtime other than
the one provided by Microsoft. This changes if for Windows only. It is a
bug fix, though we don't have a test case that will demonstrate a malfunction.
FossilOrigin-Name: 925e97e6f4238f02259a0c95b1fc668ae32a95329242f8eeae236ef207aca112
2025-01-28 01:10:45 +00:00
drh
d8c37bbc54
Remove an ALWAYS() in the star-query heuristic that is sometimes false if you
...
have a corrupt database. dbsqlfuzz c37ba7728d79859b79c8341b59297e88fba017d3.
Test case in TH3.
FossilOrigin-Name: 6b9a339628eb8bfb6dfbee02000a6ac91cc8a9ae16bd990e62c4142b9f912c36
2025-01-28 00:48:01 +00:00
drh
44980e8169
Use hashing to accelerate column matching on INSERT statements. Code is
...
smaller and about 1.8% faster overall according to test/speedtest.tcl.
FossilOrigin-Name: 8be956383e0344fb613ec2e56fce7b518f439ae34bf9ddb424de2bd9b31c9889
2025-01-27 21:18:13 +00:00
drh
5dcf5890ae
Enhance ./configure to issue an unambiguious error if the pathname to either
...
the source tree or the build directory contains any space characters.
FossilOrigin-Name: 614ae5c74f3b534f50432c875681d7a1e6135be883508939c9c57822cc1e9361
2025-01-27 17:48:51 +00:00
drh
7c727bb61b
Avoid splitting a hyperlink across lines in the documentation comment for
...
sqlite3_serialize().
FossilOrigin-Name: 74b770bd445d98ff883000ab2e31603d729e415e4e4f640646eef30825634f48
2025-01-27 14:12:14 +00:00
dan
43aad25b1b
Add the sqlite3_setlk_timeout() API. For setting the timeout used by SQLITE_ENABLE_SETLK_TIMEOUT blocking locks without also setting the regular retry-based busy-timeout.
...
FossilOrigin-Name: 4a7eb492797abb47b18b7dfc557aeae43a0dea5b861efc203398d5059b10d131
2025-01-27 11:50:03 +00:00
drh
e097db7210
Make two private routines in FTS "static" so that they are not callable from
...
outside of SQLite itself.
FossilOrigin-Name: 9b11bed0448b95319206b413c35f23bb80f3f4c0a4394d40f2e64066400a01ed
2025-01-26 23:34:49 +00:00
drh
2228567ad3
Further comment improvements in the star-query heuristic. Add an ALWAYS()
...
on an unreachable branch to achieve MC/DC.
FossilOrigin-Name: 5e18ce68fbc5e73e6694936f3ba71f5b5e3758cf380951805ca6ea6a3f0943aa
2025-01-26 20:09:57 +00:00
drh
fe54b7a1f4
Small size and complexity reduction on the star-query heuristic. Improved
...
comments for the star-query heuristic.
FossilOrigin-Name: a7ecb2f4b7eee78b88f1b2e026dffed2007ca4ffeb152632624ab2582839b250
2025-01-26 17:29:33 +00:00
drh
fb9e8e48fd
Revise the strategy used by the star-query heuristic: Instead of decreasing
...
the cost of all fact-table WhereLoops, increase the run-cost of WhereLoops that
are SCANs of dimension tables.
FossilOrigin-Name: 1bc09c9e8bd77ac41ecbe510c7e003757fc11d0f586da6cdf3584315aa9d6407
2025-01-25 23:04:05 +00:00
drh
0186ee1cd7
Improvments to debug output on the star-query heuristic.
...
FossilOrigin-Name: b3ebeb0682a2c837987acf4ed92f06cf91aea235830c5a0f9dd1ce64afe16e84
2025-01-25 14:30:36 +00:00
drh
dea434ea65
Avoid calling computeMxChoice() after an OOM as some assert()s can fail
...
in that routine if a prior OOM occurred while building the WhereLoop array.
FossilOrigin-Name: 8b9e621dbf599d7e75e07d75d4c400247d693ea76e00eba0919f4e33e3e10bdd
2025-01-25 00:07:14 +00:00
drh
bc7e41c03c
Remove an incorrect ALWAYS() added in check-in [7cfbe14d199bb631].
...
FossilOrigin-Name: 431a1a29f93dc642779dc21c3a0edad5fcda1d175e9d1e3b216fa02c234fe774
2025-01-24 20:59:12 +00:00
stephan
77731d5ec0
Clarify handling of a NULL for the 2nd argument to sqlite3_serialize(), as pointed out in [forum:3df7168b90|forum post 3df7168b90].
...
FossilOrigin-Name: 340edbe5540762656b648c18a359ab7039b4a0af15db199fc86317a415e2bafa
2025-01-24 18:37:55 +00:00
drh
079f840e47
Improve the star-query heuristic so that it does a better job of identifying
...
actual star queries. Also includes improved diagnostic output from the
query planner.
FossilOrigin-Name: 7cfbe14d199bb631abd4d009698eeaee9b8450d5061ded612095ee4738ac6a1f
2025-01-24 16:37:31 +00:00
drh
d37412b80c
The debugging output for WhereLoop objects now shows cost
...
estimate changes due to the star-query heuristic.
FossilOrigin-Name: a280f5f5480e560fc2b80e8947d8062e8b3487d930e71cb60fc9ba90d87977c1
2025-01-24 16:27:18 +00:00
drh
f1c5830311
Minor tweaks to the star-query detection and processing.
...
FossilOrigin-Name: 61f76a45ac7aa454419fd7539a3d8e60f0733fb5a2abd034d795328f3c1b6e9b
2025-01-24 15:55:20 +00:00
dan
2539fb2bc5
Fix a race condition causing SQLite to use a busy-handler for an operation that should not.
...
FossilOrigin-Name: 6ab9ed8eef77781898375038ab05fc6e5f46b745e4906691393b8b1d90570eb6
2025-01-24 15:49:47 +00:00
stephan
7ae051df2a
Correct a version number in autosetup/README.md.
...
FossilOrigin-Name: c338caf0fd4adc7baacf20f6d4274b1776b9487a5a976b8d85e490791be82b11
2025-01-24 15:41:33 +00:00
drh
299fe02393
When looking for star-queries, do not count a table as a dimension table
...
if that table is separated from the fact table by an OUTER or CROSS join
or if the table is a self-join.
FossilOrigin-Name: 5aebd7df0d577e98b3affd22b84b42dfe84a9f37fa29187505cc245b95460ba4
2025-01-24 14:51:15 +00:00
stephan
7a16413a84
Update autosetup/README.md to reflect recent refactoring.
...
FossilOrigin-Name: 601636829b79888deda7d4dc5786f82b4f0b302d84663ee96b4d47fcb429abcf
2025-01-24 14:13:20 +00:00
stephan
8bfb186728
Replace a handful of hard tabs in string literals with \t in mkwasmbuilds.c.
...
FossilOrigin-Name: e8e4d497a7b6aae450cb93927c7583fcce3fe971cd3691f9d9cad605de3cfb1f
2025-01-24 12:54:59 +00:00
stephan
4331e6bd1d
Minor additions to ext/wasm/README.md.
...
FossilOrigin-Name: 85747ea1654c74d330614aa174ede4a989b6456eb1fc5eb0fc9f2d1418b6ef99
2025-01-24 09:21:39 +00:00
stephan
dfb5f32758
Update ext/wasm/README.md to reflect simplifications permitted by the current configure script behavior.
...
FossilOrigin-Name: 9abb56c6acb1c84c2df8534ca3ebb2894afd68bc7b8331d4d12611896c576749
2025-01-24 09:18:19 +00:00
stephan
c70631623c
Remove extraneous are-we-making-clean guards from the generated wasm build rules, as that guard is set at a higher level. Rename a makefile call()able for consistency.
...
FossilOrigin-Name: 7f9074e2a7ff62bdcf343895e80a51224de62a22afbbf82068ec5fea7eeda0bb
2025-01-24 08:58:54 +00:00
stephan
07a2e5d1ed
wasm: de-list demo-worker1-promiser-esm.html from the test pages because (per Chrome 131) "Module scripts don't support importScripts()", where "don't" means "they used to but no longer do".
...
FossilOrigin-Name: 4aa025a943a4024094b91f13abfb8945bbbb8334e3ec904dee5315852845bfe1
2025-01-23 22:23:31 +00:00
drh
1519675a1a
Fix a possible infinity loop in debugging-printf logic in the query planner.
...
No changes to production code.
FossilOrigin-Name: 9a20b94080f5379867530772e081b737ae4cf6b416469dcabb85b8dd819f491f
2025-01-23 21:06:59 +00:00
stephan
02e81f72a0
When running wasm-opt, ignore any failure because it will fail for unknown flags and the set of legal flags will change from version to version. Document the size-reduction effect (or non-effect) of a dozen-odd wasm-opt flags and retain those which demonstrate a wasm file size reduction in -Oz builds (our production build mode). Total size savings: roughly 13kb.
...
FossilOrigin-Name: c9dc581e0287e3462ac55f80ca76e7e98d31157022052c892517363c45287a7b
2025-01-23 19:44:09 +00:00
stephan
726a047a47
Remove some now-dead makefile code, rename a var for consistency, and fix a recipe bug introduced in the previous checkin in the bundler-friendly build.
...
FossilOrigin-Name: 0acd4ef3addb311476f4a670be0c4c4a0f3f88b0420886d4c1c3c3027dd51d73
2025-01-23 16:11:24 +00:00
stephan
efafde5eb4
Initial support for post-processing wasm files with wasm-opt (if it's available). This currently shaves 12kb off of the release-mode build of sqlite3.wasm but there are many dozens of wasm-opt flags left to try.
...
FossilOrigin-Name: 5d16e3f28364de2d6b6456a6fc56bf604b9106c3ae15719f2862192ae3020cc1
2025-01-23 15:58:01 +00:00
stephan
72543206e5
Move small parts of ext/wasm/GNUmakefile into ext/wasm/config.make.in and have the configure script populate that, rather than dynamically determining those values on each 'make' invocation. Add a configure-time check for the optional wasm-opt binary in prep for pending experimentation with using it to reduce the wasm file sizes.
...
FossilOrigin-Name: 0a426a549577b883e2de7cd0605041cc97b57f53ee6657bc318b0bfde7b62677
2025-01-23 14:09:02 +00:00
stephan
c9bf7ed9ad
Remove unnecessary --minify 0 emcc flag from the wasm build, as -g3 implies that capability along with other anti-minification features we rely on.
...
FossilOrigin-Name: 10c91f9cd074e8d35af1c7f8251ac18e5dd91fa14df3fe4e1fb44441c4f08c7a
2025-01-23 11:21:29 +00:00
stephan
83baa239e7
Do not strip binaries during 'make install', for consistency with the legacy build and per request from package maintainers.
...
FossilOrigin-Name: cd3fed5c2082c250c32c4d99eecd49a1ab840583fc343bcfd27fb536715d0ce9
2025-01-23 06:10:54 +00:00
stephan
f52ed5fd61
Replace the use of the Autools in ./autoconf/ with Autosetup and extend its configure script to include many of the flags available in the canonical build.
...
FossilOrigin-Name: 8c60d4c901af716d4d4dfd1dd4aa626c758fac2cb46112b24b0838b7888fc66f
2025-01-22 21:34:53 +00:00
drh
c850c2be75
Add two new sqlite3_db_config() options that enable the ATTACH command
...
to create new database files and to open databases read/write. Both
default to on for backwards compatibility.
FossilOrigin-Name: fe0c58d00b491d1af7c0894f5c32542954aeea2e6510853b3bcbf13ac0bf5ce0
2025-01-22 19:37:47 +00:00
drh
9489aefb83
Add the -q/--quiet option to test/speedtest.tcl. Automatically enable
...
-DSQLITE_OMIT_LOAD_EXTENSION and -DSQLITE_THREADSAFE=0 so that no extra
libraries are required.
FossilOrigin-Name: c20d21b473d8a45267262c5df1d7b102eccce8e4cfbe1e467ea66c474aea0af5
2025-01-22 17:18:53 +00:00
drh
255548562b
Fix date/time computations to deal with the sub-millisecond rounding
...
problem identified in [forum:/forumpost/766a2c9231|forum post 766a2c9231].
FossilOrigin-Name: afb0a5923a6db4045fab5226198aab970d746d4866294ebba943c6986e97ecde
2025-01-21 17:37:58 +00:00
drh
8e7a16895c
Performance improvements to the (debug-use only) Mem.pScopyFrom logic, resulting
...
in about 8x faster performance under -DSQLITE_DEBUG for the query in from
[forum:/forumpost/0025389d0860af82|forum post 0025389d0860af82]. This change
only affects builds that use -DSQLITE_DEBUG.
FossilOrigin-Name: 7fb1ae25d1572dd7709a0f850c148a5f745a524f01ea231e29a1ebc37c173fb9
2025-01-21 16:30:55 +00:00
stephan
a6b62a26d4
Explain the lack of docs in autoconf/Makefile.in and refer interested readers to main.mk in canonical tree. Minor cleanups and fixes in tool/mkautoconfamal.sh.
...
FossilOrigin-Name: e5bbc2428f1000a451c1b4afd287742b9896a1a6c82d9706c6b8e7d6fb3b1e44
2025-01-21 15:45:03 +00:00
drh
2e899ccaff
The FuncDev.nArg field values -3 and -4 now have special meansing of 1 or more
...
or 2 or more arguments, respectively. This saves space in the built-in
function table, resulting in slightly faster performance and a reduced binary
size.
FossilOrigin-Name: 753fd747f24c5e9a019eb00b8a4f66e65c6733ba10a7adbd1b55786867c32ca6
2025-01-21 15:12:00 +00:00
stephan
631900291d
Remove now-extraneous autoconf/INSTALL and autoconf/configure.ac and update autoconf/README.* to account for the port to autosetup.
...
FossilOrigin-Name: 646667af8ca2140d823facf4578105c3d9815ea34b2a4cb96103c2fe7d718229
2025-01-21 14:40:35 +00:00
dan
b80d01a182
Have fts5 better handle OOM errors from sqlite3_blob_close().
...
FossilOrigin-Name: f418350f3f83147bc5817a885be6e39ff9ff5722742a88d17600729c53c65010
2025-01-21 14:34:59 +00:00
drh
d0db5edf61
Use Tcl_GetString() instead of Tcl_GetCharLength() to test for a zero-length
...
string in the TCL interface, since that is much more efficient.
FossilOrigin-Name: a8d9dcfd23fbfcd887e451382836c1e88215984cc01e00be11387dbf4ab26fd8
2025-01-21 11:10:16 +00:00
stephan
985b4bc157
configure script: work around msys's inability to 'exec' a '.sh' file by prefixing the call with an explicit 'sh', as reported in [forum:befb352a42a7cd6d|forum post befb352a42a7cd6d].
...
FossilOrigin-Name: 25b01f1c9a5e606441bfd4e729fb88361436dffc76ef7a10c04a4d4ad0bcc655
2025-01-20 20:48:18 +00:00
stephan
ae24e13bc7
Add 'dist' and missing 'install' pieces to the autoconf bundle.
...
FossilOrigin-Name: 16fa20413e3f3f0b6ea5d97022945843d1f785ac0142836f2a3651fd1917385f
2025-01-20 19:57:32 +00:00
drh
c69d537b93
Remove an assert() in the unix file locking logic that is not true
...
if alternative VFS "unix-excl" is used for a read-only connection.
FossilOrigin-Name: bd5dc92368e41231a07bb59dd3db8942e238129ec7a3c8d785459d9b62bfcba3
2025-01-20 19:19:31 +00:00
dan
467e20ad1d
Fix an assert() that could fail if a virtual table called sqlite3_step() from within the xSync() method while committing a "PRAGMA defer_foreign_keys=1" transaction.
...
FossilOrigin-Name: 39bdbb3f6dd1d30d180526d35c11f789f5e9d45b99ead72fd4a3b136afab66b1
2025-01-20 18:26:58 +00:00
stephan
e9763e4ed7
configure script: remove an overzealous is-a-file check in the tclsh search which fails to account for implicit .exe extensions on Windows builds. Reported in [forum:c27403ef974df9f1|forum post c27403ef974df9f1]. (Same change as [89306d1a4905] but to a different file, as that content was moved since the 3.48 release.)
...
FossilOrigin-Name: 239a3d1573f4cb720308018280b2add54034e69e38fe7060a7238875eee4f1c9
2025-01-20 16:14:09 +00:00
stephan
87cdd5926d
Get libsqlite3.so and .a building in the autoconf bundle.
...
FossilOrigin-Name: 88cee3fc7c8bfd9b6955fb6b2fd6b25660563e4d043ffa5ea18d8abe91afdb7f
2025-01-19 21:47:06 +00:00
stephan
17dca772e0
Get the CLI shell building in the autoconf bundle.
...
FossilOrigin-Name: 241cdbc40a2f82df53c149849a103a335b0643a65e229a1e80ab90a0e457bb6b
2025-01-19 19:51:47 +00:00
drh
3640785453
Add an SQLITE_TESTCTRL_OPTIMIZATION mask that can disable the query planner
...
heuristics that are designed to help with star queries.
FossilOrigin-Name: fec4ff185a2f3f1bee8f27432206276636cf27365d2d41cd7282f8c0425f2e96
2025-01-19 19:14:21 +00:00
stephan
2534bf4011
Initial work towards converting the autoconf bundle to autosetup. Currently non-functional.
...
FossilOrigin-Name: d7708372ff2fef4bfa61e56dbfbb363cac7685587a61a151497991d9a08bb07f
2025-01-19 18:58:09 +00:00
stephan
c6a39debf9
Further refactoring of auto.def to simplify creation of variant builds like the autoconf bundle.
...
FossilOrigin-Name: f806c563a29240c709508316846fbe0cb3ed61b68a6c1d9544eb699e30141d8d
2025-01-19 18:32:45 +00:00
stephan
815709dd00
Minor internal refactoring of auto.def to support the pending autoconf subdir port to autosetup. No functional changes.
...
FossilOrigin-Name: 01ff37584708f3f79c62c1b5ed8cceab721cf8348a69a65f0559b1ef8845e85b
2025-01-19 16:26:25 +00:00
stephan
6cd83aecb9
Move some of the auto.def functions into autosetup/sqlite-config.tcl for re-use in the pending migration of the autoconf bundle to autosetup. This is just reorg, no functional changes.
...
FossilOrigin-Name: 2f1e94994f3595baad4045ab05ffee0668059c23ab37a39c25b83c62bfbaea28
2025-01-19 14:53:45 +00:00
drh
8291cd78f2
Enable automatic query-time indexes for WITHOUT ROWID tables.
...
FossilOrigin-Name: 8534af5b94be9f5b1f02453e1c3b6b3f78a698af91595bdbbfdea00676510116
2025-01-18 23:44:06 +00:00
drh
0f4de9bf9d
Add a simple test case (many more are coming soon to TH3). Fix an obsolete
...
assert().
FossilOrigin-Name: aa829a131a3431791083cf60d9cf00e7b3c0fafdd39a23e761b629a2287ab875
2025-01-18 21:19:02 +00:00
drh
50c4420030
Add support for automatic query-time indexes on WITHOUT ROWID tables.
...
FossilOrigin-Name: 89c4cbd9529081941d7283a401c4a8d71b241f4577ebf6d3eb2ebe5a1cf92f2e
2025-01-18 21:00:19 +00:00
stephan
1a1fe1d1da
When cross-compiling, change the CFLAGS default to exclude -g, per /chat discussion prompted by [forum:9a67df63eda9925c|forum post 9a67df63eda9925c].
...
FossilOrigin-Name: 4309da2ca5cb99ea81f3034ae3c5809187c0131d21f9f9469ea0d69c941f393e
2025-01-18 16:05:38 +00:00
stephan
e52cdadea7
When running make install, avoid the -s (strip) flag when cross-compiling, as it only works for the build platform. Reported in [forum:9a67df63eda9925c|forum post 9a67df63eda9925c].
...
FossilOrigin-Name: 230e49c10e3aa6fe9c487a1e026016a8bf97f7e736e7477d5976d987da5e83cf
2025-01-18 13:51:01 +00:00
drh
e432f2a316
For the purpose of the query planner heuristic added by [38db9b5c83], a query
...
should only count as a star query if the fact tables are connected to the
dimension table by an INNER JOIN. If a LEFT JOIN is used, then the fact
tables are constrained to be in inner loops anyhow and so the heuristic does
not make any sense. But it does interfere with AUTOMATIC index creation, which
causes the performance regression reported by
[forum:/forumpost/d87570a145599033|forum post d87570a1455].
FossilOrigin-Name: 0852c57ee2768224af79910e6f26e70a4962651dae0f8b45cbfc847e6707d7bb
2025-01-17 23:49:40 +00:00
drh
f462046cd1
Enhance a comment on a test case to add recent context.
...
FossilOrigin-Name: c2647d1bd16fd46dd03953afee6cad44ce14fa2c36713c487b678d63660bc072
2025-01-17 17:09:42 +00:00
stephan
0887b70286
Typo fix in speedtest.md.
...
FossilOrigin-Name: 36027cf340fe2e351c63129d069f9bced090c4a028ffd78d5b8c0f418ad9f230
2025-01-17 15:56:16 +00:00
drh
ada3470075
Improvements to the speedtest.tcl script. Add documentation on how to use the
...
script.
FossilOrigin-Name: eb3853d08141bf941193e8ecaf991191bb7fb46287818708a84018520eb1835e
2025-01-17 15:39:48 +00:00
drh
e024421624
Add the test/speedtest.tcl script to simplify performance and size testing.
...
FossilOrigin-Name: ad7b38672656d0336a73bb789ec83f6939fbdae81e21be68e0313006826dc294
2025-01-17 12:32:01 +00:00
drh
d0c6c6586e
Fix a potential one-byte buffer overrun when reading from the Windows
...
console in the CLI. [forum:/forumpost/95e17b8f5c|Forum post 95e17b8f5c].
FossilOrigin-Name: 4d96759694c91301410f53a3f737a049c33e8b259b0954ff659714aff8b21ae8
2025-01-17 10:39:04 +00:00
drh
1425bae1ab
speedtest1: further improvements to the "json" testset.
...
FossilOrigin-Name: c4750f7cf7e2188623de8b12e01acf3e3d7dc7b5ea87ac449571eb36f97d842a
2025-01-16 20:46:08 +00:00
drh
7edb0c3920
speedtest1: Improvements to the "json" testset. Better balance in "mix1".
...
FossilOrigin-Name: 2cc73c5e08f1a16fe8accf0af6af061e42d27635883d09234516fd470e99bc0a
2025-01-16 20:08:59 +00:00
drh
c957673bf7
Revamp the "json" testset in speedtest1.
...
FossilOrigin-Name: d33508836bc88314a205bfa9d80f3ebe695163cf0c46d500ad674535975408fb
2025-01-16 17:19:06 +00:00
drh
bfa7218982
Add the "json" test case to speedtest1 and include it in "mix1".
...
FossilOrigin-Name: 2db3a3ee37a9d2fe9b94d16d35c24846c37abe73b89cde4dd763e01a2bfaa8b7
2025-01-16 14:37:48 +00:00
drh
4a25b740f2
Speedtest1 enhancements: (1) Add the ability to scale performance of
...
tests sets using "/NNN" after the testset name, even for testsets in a
comma-separated list. (2) Add the "mix1" macro testset.
FossilOrigin-Name: 85667b3a572bc9afd8c862a0b2c5f47f76ca80d6e61302ca7d7c1b326d3dd578
2025-01-16 14:06:29 +00:00
stephan
ec50c5a2a4
wasm: after generating the .js/.mjs file, strip out all of the generated pieces which create Emscripten call() bindings for the sqlite3 APIs, as we don't use those binding, so both the setup time and the memory they use installing WASM proxy bindings is wasted. This eliminates some 200 superfluous/unused bindings from the init process.
...
FossilOrigin-Name: 020d2c7528be6f11a5b2b849d7b2f04e47abe2b0842520ff60eb7defb3768e1c
2025-01-16 13:10:06 +00:00
stephan
b6953280e7
When generating the autoconf snapshot, replaces the Libs.private line from sqlite3.pc.in with one compatible with the legacy build, as reported in [forum:e40b9b424a|forum post e40b9b424a].
...
FossilOrigin-Name: fe47154799bfefb12eb1209d9ada64ecac38bee1b7c3558d175215a2beba991d
2025-01-16 12:15:51 +00:00
stephan
3202b11f66
Replace use of Emscripten's Module.postRun() with a custom callback so that we get consistent library init timing with both Emscripten 3.1.x and 4.0.x. Details and discussion are in [ https://github.com/emscripten-core/emscripten/issues/23420 |Emscripten ticket #23420 ].
...
FossilOrigin-Name: 4863a70ac61ff6f868429f16f0141484ea98f973fde1a9aff879252d0f1dbb6b
2025-01-16 09:27:40 +00:00
drh
c5dd908c89
When two indexes have the same cost, use the narrower one (the one with the
...
smaller average on-disk row width).
FossilOrigin-Name: 398559678f2b9a65b245ed73b4d512c4fccc69d42b5a6a1c1b7755a80b69d073
2025-01-16 01:47:03 +00:00
drh
65d0312c96
Check-in [da9124fee28c155c] broken the new SQLITE_IOCAP_SUBPAGE_READ mechanism
...
for inhibiting direct-overflow-read. This check-in fixes the problem.
FossilOrigin-Name: 113078d555eaf740666680562ebbb04f7d823b72e8b2d553627e54ab3d7bf653
2025-01-15 21:13:38 +00:00
stephan
3ba9adc5c1
Teach tool/stripccomments.c that a backslash immediately preceeding a forward slash means that that forward slash cannot be the start of a comment. This is intended to allow JavaScript regular expressions containing \/* (like [ https://github.com/emscripten-core/emscripten/issues/23412 |the one introduced in emsdk 4.0.0]) to pass through properly. Re-enable comment-stripping in the JS dist builds.
...
FossilOrigin-Name: db21d6cc9d1c425deffc0e4e92173caf586e6ac66110c71a4930b21e3e7f84b9
2025-01-15 21:09:19 +00:00
stephan
c738052394
Work around [ https://github.com/emscripten-core/emscripten/issues/23420 |a behavior change in emsdk 4.0.0] which breaks the load/init timing of the wasm module.
...
FossilOrigin-Name: 00a750184bcf1a94bf4e7f1d5029a42671e87e2997ae97be07bd900d3702883d
2025-01-15 20:53:14 +00:00
drh
d1047faad6
When choosing between two indexes with the same cost, pick the one with the
...
smaller predicted number of bytes per row.
FossilOrigin-Name: d4bd0d4214551f88f248698fefc821575b722ce5c194d0b3796f572e4704f641
2025-01-15 20:23:22 +00:00
drh
874b5e9fbb
Variable names and conditional logic simplified in where.c. These
...
changes are cosmetic only and do not affect the resuling machine code.
FossilOrigin-Name: dbc2d6a244fdafd208239894dbdd8f139db6ca20dd8f1ed00d87028e0cb60570
2025-01-15 19:30:10 +00:00
stephan
73d9eb1bb3
Fix a typo in a wasm makefile var name, noting that this doesn't actually fix anything because the var in question is not used when building 'clean' or 'distclean'.
...
FossilOrigin-Name: 7cfc75a625095e41c3e952d4a209fdbb344df0d3dd9b0103e9e6a986dfe53c89
2025-01-15 15:27:02 +00:00
stephan
4ea86ac0e3
Disable the C-style comment stripper in the JS dist build, as explained in [forum:529c20d344|forum post 529c20d344].
...
FossilOrigin-Name: a9475e7614f8e44252abf273d0e0522c247df12624e40108ce98ad4aaf320f2d
2025-01-15 14:28:56 +00:00
dan
ff6bff4059
Have windows SQLITE_ENABLE_SETLK_TIMEOUT builds block indefinitely if the busy-timeout is set to 0x7FFFFFFF.
...
FossilOrigin-Name: daefcafe799ad7613cbdff1fb1e9d40659892906875b28fbc112abd7679e48ea
2025-01-15 12:45:38 +00:00
drh
0609cf85fd
Change the version number to 3.49.0 to begin the next development
...
cycle. Any patches to 3.48.0 will go on a branch.
FossilOrigin-Name: 8165a3d3a40c5b43275fb4b1cdf57c44a57cd56c514bd2a550deac26a14795eb
2025-01-14 20:47:23 +00:00
drh
290caec8e3
Trying to remove a warning from some compiler that I do not have access to.
...
FossilOrigin-Name: bc6de90c7049dd429a82d32b186a838f4a21aa7b8a83418eaf0416d19771b41e
2025-01-14 16:10:13 +00:00
drh
942c958769
Version 3.48.0
...
FossilOrigin-Name: d2fe6b05f38d9d7cd78c5d252e99ac59f1aea071d669830c1ffe4e8966e84010
2025-01-14 11:05:00 +00:00
drh
f1747f93e0
Remove a stray tab character from a comment.
...
FossilOrigin-Name: 315079b150b47e013e2cde4985bc39d24e0f6f6c6e60f9383fb8ea4ea897c67a
2025-01-13 13:32:56 +00:00
drh
43afab28a0
GCC 13 has become more quite pedantic about the signature of functions matching the
...
type of pointers through which the functions are called. Make adjustments to
extension functions and test procedures to work around this. No changes to the
core.
FossilOrigin-Name: ed83b79100b4345235aec990303c4526874f0c2f8701160c4639a80633ebaf70
2025-01-13 11:28:34 +00:00
drh
14bc98d8e2
Fix harmless "implicit fall through" warnings that suddenly appeared when
...
I upgraded to gcc-13.
FossilOrigin-Name: 3e2875dac27de1525d9c78f38ac5f1fc12fec7e1b43dbdf47798b128fae49084
2025-01-11 16:28:41 +00:00
drh
4b5e8c926a
Better job at suppressing harmless scan-build warnings. This time testing
...
and working.
FossilOrigin-Name: c847973947de67579fab78a65ecfc90bf59fd5db0b7fa7a9c1abb1fc92213d01
2025-01-11 14:43:47 +00:00
drh
27661f24cd
Fix harmless scan-build warnings.
...
FossilOrigin-Name: b93af6feb7c0c3af30a47810a7c0e77ce41c386fac164c64bb5871a6c153db7e
2025-01-11 13:59:42 +00:00
stephan
c1f914dbc9
Fix an age-old bug in the lower-level wasm/js helper bits which was (A) caused removal of customized WASM func/argument conversion to siltently fail and (B) triggered a warning in the closure toolchain. Reported in [jaccwabyt ticket c5c296e85a7c01360820| https://fossil.wanderinghorse.net/r/jaccwabyt/info/c5c296e85a7c01360820 ].
...
FossilOrigin-Name: 99917a5bb04b5ad6ace95baf86d91e6ce098f9d3001de1a29d3d0b0b817acdce
2025-01-11 09:02:55 +00:00
drh
35ac4c8685
Update the makefile so that it puts the amalgamation files in a subdirectory
...
in the amalgamation-zip.
[forum:/forumpost/b8dd1941e1|Forum post b8dd1941e1].
FossilOrigin-Name: cef8e88bedf01dc47012ef1cb878b22117c9966e615edf5a69704486f9cfa56c
2025-01-09 19:57:44 +00:00
dan
b1cbae8bd6
When removing an fts5 in secure-delete mode, defer setting the table version to SECUREDELETE until flushing data to disk. This prevents problems that can occur if there is a rollback or statement rollback operation.
...
FossilOrigin-Name: c359e555ceafcaab2ae38074bc4f57cccdc5bc6080d17f82290c09b9e5dd80c2
2025-01-09 14:10:25 +00:00
dan
c1242d60d9
Fix another assert() failure in fts5.
...
FossilOrigin-Name: 6da37893f5b5729ea5fd632e8d98789e867488a67501d4a4dad92f8e7cb6bda0
2025-01-08 20:43:03 +00:00
dan
ad460db7eb
Fix a crash in fts5 that could occur if shadow tables are modified or removed.
...
FossilOrigin-Name: c0b691095ae72fc07530777ef6d23688fb4196ce2e0feff14fc3c597c572252d
2025-01-08 15:54:44 +00:00
drh
af8af121ab
Cross-link and otherwise improve the various how-to-compile documents.
...
No code changes.
FossilOrigin-Name: 5e6ede92afae77ce6023f3b294dc565651631c7976d898d800988f1b3ff2e83f
2025-01-08 12:51:28 +00:00
drh
45d19952c3
In the doc/tcl-extension-testing.md document, provide enhanced explanation for
...
why the tcl library needs to be copied into the install directory.
FossilOrigin-Name: cff70c859fff37f886fd622b7335a73836ff8cf15e6cb7aabcff449a7e427fa8
2025-01-08 12:25:33 +00:00
drh
6962f3d814
Further refinement to the Tcl extension testing procedure.
...
FossilOrigin-Name: 32b8b078d16b8931afa56e587cf840412c65b68da0bc6fd6280ac773295116cf
2025-01-07 18:50:19 +00:00
drh
fd11e5c082
Improvements to [14b38ae6ab86a314] so that the Tcl interface is better able
...
to work with boolean values in both Tcl86 and Tcl90.
FossilOrigin-Name: 4e85343d6107a46682b549667410c296d7f4d17e3ac04ded7357afcbbfbe3e6d
2025-01-07 16:36:47 +00:00
drh
ece1729958
Fix a memory error in test logic introduced by [8704034254938662].
...
FossilOrigin-Name: 8a56e98d257e280d308b9fdc26e17e202f00a70fb9a780e30924e87a189fc7f4
2025-01-07 15:39:57 +00:00
drh
4a83311370
Typo in the previous check-in.
...
FossilOrigin-Name: 5872d7a0a7d4959562e1218bbba1115df8b292d980234273d0d38749edf19822
2025-01-07 15:00:00 +00:00
drh
311990d74e
Enhancements to the Tcl SQLite extension testing procedures so that they
...
install a full-featured SQLite and so that Tcl is build statically so that
there is no need to worry with LD_LIBRARY_PATH.
FossilOrigin-Name: c8972e652ebe62a8583904b5bc1d96b2d598222c037a714c8ff114ca84b52c7a
2025-01-07 14:55:49 +00:00
drh
4717d573e4
Make the TCL extension aware of the booleanString type within TCL.
...
FossilOrigin-Name: 14b38ae6ab86a314a63ca9513850b43fcc670864f94d03a2706eff469980da88
2025-01-07 12:14:32 +00:00
drh
e53393250a
Fix a typo in the previous check-in.
...
FossilOrigin-Name: 7d41885e85b0e2ef28bac34d663af07c35b21ee3e8b14481d2371f623bce681d
2025-01-07 11:54:43 +00:00
drh
4a6896379f
Minor fixes to tclsqlite.c to promote portability.
...
FossilOrigin-Name: dd934f032fa6fc790a951006512e3ed76a5f2930858932918eafdbe3ceec4620
2025-01-07 00:17:54 +00:00
drh
fbbe262820
Enhance the makefile to make it easier to build from a read-only source tree.
...
FossilOrigin-Name: f99a70eca2fd8a54be3a6629dabd62efc623488706eed5e5a1bd0be577ac1acb
2025-01-06 23:33:45 +00:00
drh
885f546f97
Fix a problem with tool/mksqlite3h.tcl that prevents it from running out of
...
a read-only check-out.
FossilOrigin-Name: cb54f0063edd284996b225183b8e35d71ffcd3c0fb4f56a0e316181f1a186d46
2025-01-06 21:36:16 +00:00
drh
a5dbae3781
Fix a minor problem with the sqlite3_get_table_printf() test interface.
...
No core changes.
FossilOrigin-Name: a0df29c7a3eb4f558aba00598d827643830591def3101a4d5464543527b8d13c
2025-01-06 18:32:53 +00:00
dan
cee8b04d33
Add test case for using both SQLITE_CHANGESETAPPLY_IGNORENOOP and SQLITE_CHANGESETAPPLY_FKNOACTION.
...
FossilOrigin-Name: b1cc53fa3fb2ac3abeadd3282d8751f4d533315754159f16ca7f7f300ccdd8c8
2025-01-06 17:01:35 +00:00
drh
f19d7b4de1
Further refactoring of the TCL extension test procedure document, for
...
improved clarity and usability.
FossilOrigin-Name: bcdaef434142973a0805117495e561b2dcd1ec1465cacc9b944a3707291afc0d
2025-01-05 19:58:30 +00:00
drh
15e388d910
Refactor the TCL extension test procedure to deal with TCL8.6 and TCL9.0
...
separately, to simplify the procedures and reduce cognative stress on the
tester.
FossilOrigin-Name: 5281536327d244ba9507548f7ed607e86e59b98a003e63f6da767471411c8ffc
2025-01-05 17:16:33 +00:00
drh
85900c04b0
Fix typo in the tcl-extension-testing.md document.
...
FossilOrigin-Name: 28150c615cb601dfc9e4f660627228d6a8a715d64c65f7bc77931c9daf8a0dd7
2025-01-05 11:40:15 +00:00
drh
8b53358f8f
Improvements to TCL extension test procedure description. Improvements to
...
the tclextension-list and tclextension-verify makefile targets to suppress
unnecessary output.
FossilOrigin-Name: 3e92fea09af13259d61afd2953fe5f3fc16e3cedfef09e350903aa5299b8e469
2025-01-05 11:19:32 +00:00
drh
1e03bd8a89
Improvements to testing and validation of the SQLite TCL extension.
...
FossilOrigin-Name: 9d7597cad4a167aef7688e85513d8695e8d919e41f5cd44909aefee5ddf13345
2025-01-04 20:50:21 +00:00
drh
1c1b3a0f2d
Show the values of $(JIM_TCLSH) and $(VISUALSTUDIOVERSION) in the
...
output of "nmake tcl-env".
FossilOrigin-Name: 4270abc071ced9e7ec1fed3c387262cc1912e321e37e45e547a1088dbb022702
2025-01-04 20:13:54 +00:00
drh
1388a71690
Allow the 2nd argument to ".param set" to use previously bound parameters,
...
as suggested by [forum:/forumpost/823e1bd746|forum post 823e1bd746].
FossilOrigin-Name: 13a35ad792dc0afe1f7b60230aef392ae01e702972b963d732e332f21848f38b
2025-01-04 19:50:44 +00:00
dan
7a3d03b1fd
Fix a problem in the sessions extension allowing changesets containing foreign key violations to be committed under some circumstances.
...
FossilOrigin-Name: e09a0c022903d88d5d6de34b2527565ef60c6bb049f2fb42f037e1520abf0f93
2025-01-04 16:30:05 +00:00
drh
4bf468e69d
Add the document describing test procedures for the TCL extension build
...
process. Update the Windows makefile so that it builds the TCL extensions
successfully with a default installation of Tcl8.6.
FossilOrigin-Name: 3263db9249444203b7a9a9f2b0be309c74944315dde7ed192366b709fff93f1b
2025-01-04 15:52:40 +00:00
drh
8272128211
Adjust the Windows Makefile.msc so that it can build the tclextension with
...
Tcl8.6 successfully. Updates to the tcl-extension test procedure document.
FossilOrigin-Name: 0c2cdc632f26d6acac2d508def4ecfcc97462ebcddc20c84f8847e02e42b3a1d
2025-01-04 15:51:30 +00:00
drh
8f1bdc0f73
Add new tcl-extension-testing.md document. The Windows side is not yet
...
working.
FossilOrigin-Name: 9dc805df1b1c26196ca53baa6b1b8c2f7e59e0150d02ead53228c77a63ad40f4
2025-01-04 14:10:45 +00:00
drh
ded37f337b
Add comment to the columnIsGoodIndexCandidate() routine to record the results
...
of a failed experiment. No changes to code.
FossilOrigin-Name: 9ee57a30a49d9813bf2669a5d8346f7e018e3fbf1792739951311a8d3a249d45
2025-01-03 11:51:50 +00:00
dan
8d6e3f513c
Avoid using Int32x32To64() with a 64-bit argument in fileio.c - this level of micro-optimization is not really necessary there.
...
FossilOrigin-Name: 1291b013a8c93e7001fe25783bc98d12f5f7c341d1f728e6852632e18a38af58
2025-01-03 11:22:01 +00:00
drh
04364cb3cc
Improve the treeview output for CteUse objects.
...
FossilOrigin-Name: 2b16d6947ca4a102ddab4d5ba3e340a75e1e5c28e45e874ee5ff52f9b5fb964f
2025-01-02 21:23:25 +00:00
drh
db258d8ff7
Improvements to the display of subqueries in the FROM clause for treeview
...
output. (Debug and analysis code only - does not affect production builds.)
FossilOrigin-Name: 4a2d65cdcdd3d21bb7d9ea0efb434484f1b8642c2bb6457db58bc2a5f4fc16e5
2025-01-02 18:43:29 +00:00
drh
1426d2a264
Close database connections in test/dbpage.test, for Windows.
...
FossilOrigin-Name: 322d255ed89c1dee08745e89f3c2bcf495283fd87b7526e70d6525a6e96b0ecf
2025-01-02 17:56:11 +00:00
drh
52c87ac084
Fix recent test cases so that they work even when auto_vacuum defaults to on.
...
FossilOrigin-Name: 41f6e46695b547dece4daf2f3714e29f231aa04774f57fbd31aeb0a4290c0e7d
2025-01-02 15:39:54 +00:00
dan
3835cf6ea1
Add a test case for ROLLBACK TO of database truncate operations made through the sqlite_dbpage vtab.
...
FossilOrigin-Name: eb335beb1eb9ebbea4cb793d24f65787d0d9d8539bc6b5971e4e4298fdfce0c2
2025-01-02 15:27:15 +00:00
drh
a683b055fb
Improvements to the way that truncation is implemented in sqlite_dbpage().
...
FossilOrigin-Name: ac4bb2e4ecf0bdb0d8ac12b1ccb42d51af02f519a038cfc79faab5c216971056
2025-01-02 15:03:13 +00:00
drh
e0b6ee5185
Update the build instructions for Windows to note that VS2015 or later is
...
required to avoid the need to install tclsh.exe.
FossilOrigin-Name: da0ef0567be55648413bcbf2e129f348776a908dbad2ac8582ee3e27ac459e3b
2025-01-02 12:14:01 +00:00
drh
66985fb8ff
Fix the tool/omittest.tcl script, broken by [d8c0e0184226bdae].
...
FossilOrigin-Name: 4f6c36a61c2b27e204c00bd7467453098f756c7e596b7e62d47da8784fbd2026
2025-01-01 18:18:49 +00:00
drh
f7fcf7f910
Fix the vfstrace.c extension so that it supports xFetch and xUnfetch.
...
FossilOrigin-Name: c7132b7e62422378f0560dcf0837888db5aa70cded9d783ab389581aa43dc5c8
2025-01-01 12:24:01 +00:00
drh
95f6df5b8d
Add the convenience makefile target (unix-only) "src-archives" that builds
...
the various tarballs and ZIP archives that go on the download page. This is
intended to make it easier and less error prone to put up new "draft" download
pages for testing.
FossilOrigin-Name: 2b17bc49655c577029919c2d409de994b0d252f8efb5da1ba0913f2c96bee552
2024-12-30 21:23:53 +00:00
drh
71d6456f59
New assert() statements to show that the sqlite3_value.db field is initialized
...
for MemArrays.
FossilOrigin-Name: 7cd8ccf57d1ae0f597ec5004201395f61ef4750728f3c1b9c4dd52d28916a4f7
2024-12-30 13:54:52 +00:00
drh
6b19c72f26
Add an extra assert() to releaseMemArray() just to prove that the
...
sqlite3_value.db field is never NULL.
FossilOrigin-Name: b969ef1def5121c7ff54e3586528274f006ca994b308cf88ccaa9d4f56bf30df
2024-12-30 12:29:18 +00:00
drh
4112a63b8f
Four new assert() statements to help with static analysis.
...
FossilOrigin-Name: e7f7c9d22be8a17b9a4d8f954fcdd40591ba9da5fb674f1184f960bca5f3d30b
2024-12-29 11:54:12 +00:00
drh
8b68902128
Show ETC in fuzzcheck with the --spinner option when there is only one input
...
file.
FossilOrigin-Name: 809699aeaaa4bae67e7ddeae3d42c7133f7deadbb4eb869cfb7e99dd97bdea99
2024-12-28 13:04:31 +00:00
drh
e0190a6984
Fixes to the substr() SQL function so that it can handle ridiculously large
...
numbers in its 2nd and 3rd arguments without signed integer overflows.
FossilOrigin-Name: c1de8f916ea617109a903c436c57d082756fbb2b933ba9ce6998b9b912b12dea
2024-12-28 12:32:01 +00:00
dan
362d51a159
Omit code to link all winShm objects open on a single node into a list. This is no longer required.
...
FossilOrigin-Name: b400ab4ba99d3ed7e90c93257d729563c630ef451017a702d42f322a4e57b663
2024-12-26 16:10:15 +00:00
dan
4e3b6a14fd
Merge trunk changes into this branch.
...
FossilOrigin-Name: 3e2893097c59820def88bb4739189c9c9a4f70a98a0a72b81959658f069715f6
2024-12-26 14:40:11 +00:00
dan
ce50282c3b
Properly wait for asynchronous results for calls to LockFileEx() on FILE_FLAG_OVERLAPPED files even if LOCKFILE_FAIL_IMMEDIATELY, which usually causes LockFileEx() to return synchronously, is specified.
...
FossilOrigin-Name: 35b3e73c5a9efa12f9bb0dad1721fce128cd1e3bcbc87027ee4ea685a12a70d5
2024-12-24 14:44:38 +00:00
drh
9591d3fe93
In the (debugging) rtreenode() function, do not override an error coming out
...
of sqlite3_result_text().
FossilOrigin-Name: 286559dfb3ad01fcf34360991a108dbe6bf81e7919c461ada6c691ee8f43868f
2024-12-22 21:17:27 +00:00
drh
142c5de4dd
Fix a test case in sqllimits1.test so that it works with the Apple
...
configuration which changes the default SQLITE_MAX_LENGTH.
FossilOrigin-Name: 536fff14acb3335ad00fb1165cfb2f97e7a31c36273b9b97ffdb4b572fe72c08
2024-12-19 20:29:36 +00:00
drh
ccfb50d55e
Correction to check-in [a9759fc78d6cb0df] - printf() parameters values must
...
be integers.
FossilOrigin-Name: 2db531d1911369ea932d3559abcc02389e5f9ad72b46b0801dfb6063855aee1b
2024-12-19 19:52:13 +00:00
drh
be2a40d489
The BTree mutex must be held when calling sqlite3BtreeLastPage(). This
...
check-in fixes a bug introduced by [cf8b99e17872c054].
FossilOrigin-Name: e6c30ee52c5cdc193804cec63374d558b45e4d67fc6bde58771ca78485ca0acf
2024-12-19 19:02:09 +00:00
drh
f2d422c528
Fix the sort4.test module so that the first two test cases are omitted
...
when SQLite has been compiled using SQLITE_MAX_WORKER_THREADS=0.
FossilOrigin-Name: 5b96dcf5f6bf41dcb89ced64efd4585e36dce718c428c2324d94e4942905c3bb
2024-12-19 14:20:47 +00:00
stephan
166f4eb5cf
configure script: only set the SQLITE_TEMP_STORE feature flag if --with-tempstore is explicitly set, to avoid colliding with that flag being set by other means via the test fixture scripts.
...
FossilOrigin-Name: c7839b80972fb31df6ac81af38cf6d04c9542714c20fbaa7457c1eaf955f9222
2024-12-19 14:09:35 +00:00
drh
019de3d553
Fix the Microsoft makefile so that it does not set SQLITE_TEMP_STORE
...
unnecessarily.
FossilOrigin-Name: f9b92f9513def690311a5ca46b68cab02bedec7984960d44e7dea5c2d196725a
2024-12-19 14:08:06 +00:00
drh
543ee479eb
Enhance lemon so that it accepts the -U command-line option that undefines
...
a preprocessor macro.
FossilOrigin-Name: e2188a3edf3576963b45e9ffe6ef53e2a85aa68ea3dfb3243b4943d06ffaf829
2024-12-19 13:36:36 +00:00
drh
2dcd4fad6b
Fix additional integer overflow problems in the substr() function.
...
FossilOrigin-Name: 472abb492f1d1553ae6bdf53cc64bebfe75423526335beab7eaff26cc495cd7d
2024-12-19 12:08:39 +00:00
drh
b097ef29d1
Fix possible integer oveflow in the second and third argument to substr().
...
FossilOrigin-Name: b04b4006f38f83d36eaf43c4bace7d53866b02b45e0ddcf1704266fed3bfc11c
2024-12-18 20:29:29 +00:00
drh
47bc07d425
Avoid 32-bit roundoff error on the second argument to round().
...
[forum:/forumpost/170aeab92a|Forum post 170aeab92a].
FossilOrigin-Name: a9759fc78d6cb0df7c81f20c2c5c358729e571ebee50ee2b1441a15239d0b4b6
2024-12-18 18:29:19 +00:00
stephan
0c34eab477
Rename some var refs in ext/lsm1/Makefile for the new build process.
...
FossilOrigin-Name: 0ce42fa586049e8864c5fd1a1d8703722f8549ba0a20ca748b887b7975ba9eb7
2024-12-18 03:41:29 +00:00
drh
2fb488d10a
Do not attempt to truncate a database in sqlite_dbpage if the database is
...
not larger than the requested truncation size.
FossilOrigin-Name: cf8b99e17872c054e7ac0832d12633ce497c843dfc67148daf3b17762fd2b424
2024-12-17 14:32:37 +00:00
dan
c978e390e6
Fix release test errors on winrt.
...
FossilOrigin-Name: 39bebd50b80ceee321b1da837c72a20cdb26f06e4b726f23e3ddac877d9400a7
2024-12-16 19:31:30 +00:00
drh
32dd04b41e
Code formatting changes to make trunk more like wal2.
...
FossilOrigin-Name: 8f725472b0fe62359a4cd3237b43d7b834e042d8ce425abde06e3ed6c62dbafa
2024-12-16 18:04:39 +00:00
dan
800bf8fd93
Fix a problem on this branch causing a file-handle to be leaked following an OOM condition.
...
FossilOrigin-Name: 5ca12dc964b2d8c3d11a2be5be7eac0dc994cec3a8b5fdfeac4ff8dde19a5a93
2024-12-16 15:13:34 +00:00
drh
bd1a5932d9
Changes for better alignment with the wal2 branch.
...
FossilOrigin-Name: 4fab85b3d0d1cad2d185f2456de7ddf281badf8561cc051e10e16655441dcc84
2024-12-16 13:25:49 +00:00
drh
276172e4a3
Remove unnecessary end-of-line whitespace.
...
FossilOrigin-Name: ae580443d210811c12209866112fc8b0b83281e24945504b748a17d93ad84062
2024-12-16 12:08:47 +00:00
stephan
bba1953426
Tiny makefile/configure script doc tweaks. No functional changes.
...
FossilOrigin-Name: ed5e912622839dce76dfb7352b56bb6fc698ecffde195f48db8d3339e9628cb5
2024-12-16 07:03:12 +00:00
drh
9ee02515c4
Fix a harmless compiler warning that comes up when using SQLITE_DEBUG in
...
separate compilation mode.
FossilOrigin-Name: 52e0f8cab9852538da0778d5f57dd85b0774e764157692111a007aecd963f10a
2024-12-13 01:29:22 +00:00
dan
d26bb375be
Fix a buffer overread in test code. Add test configurations for ENABLE_SETLK=1 and FOR_WINRT=1 builds to release testing.
...
FossilOrigin-Name: b558db5db7e7c9aced1d24d74dc5ee2fab7cd04ec6570247c9c45723eb6f8fc0
2024-12-12 20:59:32 +00:00
drh
35d302ccb1
Increase the maximum number of arguments on an SQL function to 1000 with the
...
capability to increase it further up to 32767 using a compile-time option.
FossilOrigin-Name: e8d7d68ba0bb0bc2f948db5d9966990a5d23597fc3658b7cd0bc99d53c7353a9
2024-12-12 15:11:27 +00:00
dan
b1ad83a342
Ensure that all win32 API functions invocations in os_win.c are made via the function table. Fix asan error in test code.
...
FossilOrigin-Name: 2ffdc799c63ff8858f2aa9177ca9c74be2df5d7594cb10fb0a233537d83fd563
2024-12-11 15:30:58 +00:00
dan
7d32ec0a5c
Fix a problem with walsetlk.test on windows.
...
FossilOrigin-Name: 704e6567c14a4a07a1a4d1fc2bd8a7f288b55b27508d23ba7f5c755c830c14ec
2024-12-10 21:24:28 +00:00
dan
d50eb9c999
Ensure windows may block on a SHARED (but not EXCLUSIVE) DMS lock.
...
FossilOrigin-Name: 55e4e7bb0074859e8c3e736e7eceb69af8408ce75135f5baa09e98aaf4e2a321
2024-12-10 19:00:07 +00:00
dan
e5418e9dd3
Fix walsetlk.test to work on unix.
...
FossilOrigin-Name: 798dff041be46d2d5014779c0855f60e6b2a142e9946bfb79061d7dff0bc3d27
2024-12-10 18:12:59 +00:00
dan
50ebf16dd6
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: d67a42d62555cf9294e11a04d3c7cfdf11ca7978d60fc085f5a73e36aff8313e
2024-12-10 17:36:20 +00:00
drh
6e53f67c63
Fix harmless typo in a comment describing the columnMallocFailure() function.
...
FossilOrigin-Name: 0f3b484fd71fd77947a1de7c24f35f8eed2911d0565d03edb7970b8f3092a5da
2024-12-10 12:32:34 +00:00
drh
e57527c14f
Make the TCL interface more rebust against very large strings coming
...
out of TCL9.
FossilOrigin-Name: e2bae4143afd07de1ae55a6d2606a3b541a5b94568aa41f6a96e5d1245471653
2024-12-09 20:46:36 +00:00
drh
e85e33d39c
Enhance the ".import" command of the CLI so that it is able to insert into a
...
view that has an instead-of trigger.
[forum:/info/3e03c73150f8b9f8|Forum post 3e03c73150f8b9f8].
FossilOrigin-Name: 7dcc3731a9057a91f1b173fbab2841d8a666a945d9bc61d4c20f8a2a279d5ff1
2024-12-09 20:37:18 +00:00
dan
9c750fe3a3
Test the case where a db connection blocks for a while and then successfully obtains the lock.
...
FossilOrigin-Name: 9cbc97ff8411a672b572000e4509ac02b3d29911be5ce1bcf334ed8e2a91db77
2024-12-09 17:30:20 +00:00
dan
4ab343cb7c
Enhance tests to ensure that blocking locks, and not calls to xSleep(), are being used by SQLITE_ENABLE_SETLK_TIMEOUT builds when they should be.
...
FossilOrigin-Name: c892242bb642f7a6a961e310ed8b4f1e140f8ee32c00f50021c6011c6e7e1476
2024-12-09 16:01:28 +00:00
drh
c29bc733be
Add NEVER() around branches that seems to have been made obsolete by
...
[a350ea7c6b89725b].
FossilOrigin-Name: cb5bad5c748b7435c43f3ec051736c1cf91ced2be317b0519e5e22523c137290
2024-12-09 13:02:13 +00:00
drh
54f96dc50e
Further improvements to the decimal-to-float conversion for values close
...
to LARGEST_UINT64.
FossilOrigin-Name: 453c949914770e8f7b9b9dd882db492bf8756c212c816f87bb2e3ed98bcd64e3
2024-12-09 11:47:28 +00:00
dan
94ad4abc65
Fix an obscure problem with multiple outer joins, ON clauses and query flattening. Forum [forum:5c8a069d23|thread 5c8a069d23].
...
FossilOrigin-Name: a350ea7c6b89725ba1a0058c77fc8e918f5cb78e868d100f5425cdee114d1320
2024-12-09 11:37:37 +00:00
dan
4f5ae3fc4e
Fix an obscure problem with multiple outer joins, ON clauses and query flattening. Forum [forum:5c8a069d23|thread 5c8a069d23].
...
FossilOrigin-Name: 289daf6cee39625e8f068179cd58efcc1d28242f46064e58ec4175a019cf48ad
2024-12-09 11:12:12 +00:00
drh
a42db7ff40
Add a note in Makefile.msc about EXTRA_SRC files possibly requiring manual editing.
...
FossilOrigin-Name: a0a36bad454fab55ff39cbada68bf9ec6494d48dc4fc88496c0f637ab100734c
2024-12-09 10:57:01 +00:00
drh
fd360c3943
Resynchronize autoconf/Makefile.msc
...
FossilOrigin-Name: 8f9c640818871c451e69f186224bf276f8a03c8d31a76806d81f34922a169f82
2024-12-09 10:52:28 +00:00
stephan
29d1d91502
Add a note in Makefile.msc about EXTRA_SRC files possibly requiring manual editing, as discussed in [forum:903f721f3e7c0d25|forum thread 903f721f3e7c0d25].
...
FossilOrigin-Name: 229c2f013c171bc220148c78f7db5396578f2c6aac28ad6ff9b687c9fa4998ac
2024-12-08 18:38:40 +00:00
drh
9f53d0c817
Yet another iteration of the solution to the floating-point conversion
...
problem - this what avoids complaints about oversize double values
from -fsanitize.
FossilOrigin-Name: fc6904a508eb732b1cb5cc12321a0d637d97e1e066a022a2c93cb50595f3a86a
2024-12-07 19:57:30 +00:00
drh
8703642803
A cleaner and more robust solution to the floating-point conversion problem
...
originally fixed by [81342fa6dd03fffb].
FossilOrigin-Name: 351de57f80b73045448c71d3402d877ff5d72418b1f5fc34c8147a04f7c5cb78
2024-12-07 19:06:25 +00:00
drh
92d252e06d
Fix more harmless compiler warnings.
...
FossilOrigin-Name: f5b8fd77635e5e6d2d88a1ce74e1bd6c4311260a2b695e5055b898b880bf5718
2024-12-07 17:08:13 +00:00
drh
4597870108
Fix harmless compiler warning caused by the previous check-in.
...
FossilOrigin-Name: 462700aeb7c183d739ead4d726ce5384b3297bcf7929abd010987fa3a5f64807
2024-12-07 16:53:42 +00:00
drh
1a4b2117f1
On x64 hardware, round-trip uint64_t→double→uint64_t conversions
...
fail for values greater than UINT64_MAX-2047. This caused the SQLite
text-to-float converter routine to give incorrect results for values
between '1.8446744073709550592eNNN' and '1.8446744073709551609eNNN' for any
exponent NNN. This problem was introduced by check-in [761d8fd18b0ee868]
and first appeared in version 3.47.0 and was reported by
[forum:/forumpost/569a7209179a7f5e|forum post 569a7209179a7f5e]. Fixed
by this check-in.
FossilOrigin-Name: 81342fa6dd03fffbe7d4d699ff049dcef4d30344578bb6f91cb58a4e5a4f6036
2024-12-07 14:48:55 +00:00
drh
ef636cc3cd
Add the SQLITE_PREPARE_DONT_LOG option for sqlite3_prepare_v3(), that prevents
...
errors in the compilation of the SQL from being sent to sqlite3_log().
FossilOrigin-Name: 870403425493866232cf9e8fa62288861b7d0a4091b15d75727f8bb31da46f94
2024-12-06 18:35:16 +00:00
stephan
c40329c9bf
Minor doc update in auto.def. No functional changes.
...
FossilOrigin-Name: d324be296de443bd2853c732b10960178bf3ba9f18c80c509f6b41e2cfb2f3af
2024-12-06 00:12:43 +00:00
stephan
0448e00aaf
Ensure that the post-config checks for @UNEXPANDED_VARS@ pass even if --disable-tcl is used, as reported in [forum:74ef8059fc|forum post 74ef8059fc].
...
FossilOrigin-Name: a38606bf44a1b5d0f684f67174c33f8c88c7927e23fc6a715e8d3ae7a6614bbd
2024-12-06 00:09:05 +00:00
drh
eed134c4d3
Fix the build of sqlite3_analyzer.exe on Windows that was broken by
...
check-in [80f3bf8c2ee31ba1].
FossilOrigin-Name: 223f47b2db8d80629d60a642942eb8b288611e3e466cf904964285229a5809fc
2024-12-05 23:53:16 +00:00
dan
b9be2f6396
Fix filectrl.test so that it works with winrt builds.
...
FossilOrigin-Name: 70b0cfb0493e3fe56645648b462cb035d0d791f95b2913b7622f08c1090338c0
2024-12-04 19:32:24 +00:00
dan
093c21342c
Assume an NT-based OS when running tests if sqlite_os_type is not set.
...
FossilOrigin-Name: 22e4aeded0a6a691fc7026f3cd90836a289dfc994269f8576d01e28fa478902b
2024-12-04 18:27:13 +00:00
stephan
76412af157
Minor doc correction in ext/misc/shathree.c, as reported in the forum. No functional changes.
...
FossilOrigin-Name: 3b82d2c6b732617b9be205efadd07326057c93b71c47ffd42de63fc05093667b
2024-12-04 16:01:25 +00:00
dan
23498de7be
Back out minor changes not required by this branch.
...
FossilOrigin-Name: 68c34ffd2332d89cb6400bce5dad350a6e48c395924b8380cbeb0dbe64141808
2024-12-03 19:41:41 +00:00
dan
c99caf5de5
Merge latest trunk into this branch.
...
FossilOrigin-Name: eb13b8b3ef67ca8a252f7a4fd5a83ed31fefe68aa5ad8693d9d1f17218f4d176
2024-12-03 19:30:14 +00:00
dan
2d5ce92aae
Further test file tweaks to run with SQLITE_OS_WINRT builds.
...
FossilOrigin-Name: 54853421ba012c192ee2a41873e6ba10e187a6ec2e23182ccbec56864604166f
2024-12-03 19:09:54 +00:00
dan
d4545bca73
Fix the lock_win32_file test command so that it works with winrt builds.
...
FossilOrigin-Name: 5994656074b2db2c172f4c690c3b40cadd12e91d737fb91a03268148f8b49421
2024-12-03 15:19:02 +00:00
dan
9d592359fe
Fix a problem with SQLITE_OS_WINRT builds.
...
FossilOrigin-Name: baf43e8c7da6aacce874ec30d0c9e1dcb44c5ed9de2214099d42fbbd335d2e93
2024-12-02 20:48:17 +00:00
drh
33c120f9b7
Improve the output from the ".testctrl opt" command in the CLI.
...
FossilOrigin-Name: de7064d118c33aab0fff39d072593b287c291870b843d093045300bde464420f
2024-12-02 19:55:39 +00:00
dan
4b491d8565
Ensure that the query flattener does not change an ON clause term to a WHERE clause term.
...
FossilOrigin-Name: bdd408a2557ff05c9ea962a94b442f7c078d8e1ec27035aa95bc23d4d2bd5606
2024-12-02 17:21:52 +00:00
drh
c9ac238b92
Fix a comment typo on the sqlite3ExprIsSingleTableConstraint() routine.
...
FossilOrigin-Name: 346a845bf1cd1c7e542f7bf763d86c197d9a3b4f3ea38ade416790a1cf80e6f2
2024-12-02 16:24:47 +00:00
drh
bfdeb1f6d5
Fix a harmless typo in debugging output.
...
FossilOrigin-Name: 578f76cfb2e298fe6bfd278b545091fe682d01feb0be56ef57b6c9f2c179ac61
2024-12-02 16:07:38 +00:00
stephan
ed7fe45c7c
Reformulate [9e09d5d6] so that memsys5 shows up in the late-config summary as being enabled and does the right thing if both --debug and --memsys3 are used.
...
FossilOrigin-Name: 447db1cd0a6575432996e9735e78bbb09c83827c5e3080339b34df176ab86af0
2024-12-02 14:14:30 +00:00
drh
3e1f302dbe
Enable MEMSYS5 with the --dev configure option.
...
FossilOrigin-Name: 9e09d5d60ac91423e1dec1169e9eb60a531f84261b48490c550cf4529540e6dc
2024-12-02 13:47:53 +00:00
drh
224e356081
Slighly less confusing output from treeview during debugging.
...
FossilOrigin-Name: 7aef0b93050cdb79cae68361e84047cea2e8e7251d0581ce917da03352bb1f16
2024-12-02 13:29:29 +00:00
stephan
d004268b27
Trim a bit more from the sqlite370.svg border to get it closer in scaled size to the logo currently on the docsrc site.
...
FossilOrigin-Name: 81c7277fc59af833365f0ee5af603db49c19a6ba87bd5f252ecdfe72df252d4e
2024-12-01 15:23:40 +00:00
stephan
fd66549cb6
Correct the fill color for the background of sqlite370.svg - it was slightly darker than it should have been.
...
FossilOrigin-Name: 732132407b3881aaa7fee151baafb6569664f1d2b82ef7743d89bd0a86cf0a09
2024-12-01 14:20:19 +00:00
stephan
a13a645cdf
Re-export sqlite370.svg to retain the gradient part and clip the size using the cutting guides in sqlite370.eps.
...
FossilOrigin-Name: 12017b01c8e6c12fdd8de3c3c325e56b5be80343a1a392538b6e6ed066e46cee
2024-12-01 14:14:50 +00:00
stephan
9bc351b3c7
Export a clipped copy of sqlite370.eps as sqlite370.svg, based on discussion in [forum:1bbd6d17ca|forum post 1bbd6d17ca].
...
FossilOrigin-Name: dd3a13c1209d0bac3d6eb105826429ef29b36682c347995dc266bf42e46a2193
2024-12-01 14:02:19 +00:00
dan
a180131454
On windows, use a separate handle for each connection for xShmLock() locks.
...
FossilOrigin-Name: 272d552f126357d7bc16d84f13a4bea823abc6ef7faf90e3cffcedb68210f52a
2024-11-30 20:00:54 +00:00
stephan
d6d9c54bb2
At the end of the configure script ensure that none of the files which are filtered for @VARS@ contain any unresolved @VAR@ placeholders, failing fatally if any do.
...
FossilOrigin-Name: 301df5c2beb08e8e2944f7a9e46a10114603518385c05a9c30a838ab436369d4
2024-11-30 17:48:31 +00:00
drh
c5b9da34f2
In sqlite_dbpage, cancel any pending truncate operation if there an error
...
occurs later in the transaction.
FossilOrigin-Name: 1abab10f85a4dba5ffe51a30eeef30853c120e5566ed97b3af1526fff597c647
2024-11-30 14:13:35 +00:00
drh
03e306b3a1
A NEVER() that was added by [eb5ac9e5b9a4f9c8] is violated by the ifnull()
...
in-line function. This check-in fixes that problem.
FossilOrigin-Name: 2220ccf4d6fea2413015c72fd318003b4b5afeae7cb7586b714fce36212d8c49
2024-11-30 12:00:38 +00:00
drh
5c208f36a4
Fix a NEVER() in the iif() logic that can be true if compiled with
...
SQLITE_ENABLE_UNKNOWN_SQL_FUNCTIONS. Problem introduced by [eb5ac9e5b9a4f9c8].
FossilOrigin-Name: 3ec2df5a6c731b59b0ab132ee59c74d107f9c4bd32cf47d9776887858b9c0dea
2024-11-29 11:49:05 +00:00
stephan
2aac896611
Remove some outdated docs from Makefile.in.
...
FossilOrigin-Name: cc2c5fc98b2d1957bd26f41f0b646921ecabe2ffe544b3c3565965ba8850b2ff
2024-11-28 23:55:35 +00:00
stephan
25e042c0b0
Typo fixes and cleanups in autosetup/README.md.
...
FossilOrigin-Name: 7f366565f41fa4eb532cfaf83074106e235436bfc377116e3bf823ac08fd01a5
2024-11-28 20:46:51 +00:00
stephan
187c115a69
Configure script doc updates and cleanups. Skip check for EMSDK when doing an out-of-tree build, as ext/wasm does not support that build mode.
...
FossilOrigin-Name: 9d2f4148db1641e9bf2989c2b1adf5b9dcb2b123526ecacd063bca208b3c36cf
2024-11-28 16:14:19 +00:00
stephan
fed5234fb3
ext/icu/README.txt: clean up EOL whitespace and add a mention of the --with-icu-... configure flags available as of version 3.48.
...
FossilOrigin-Name: 4976ac717bec2f2c89d94ac1d9b96afd1da573ba34e3c78637c3937287635e72
2024-11-28 15:52:21 +00:00
drh
e8233f14bd
Improvements to sqlite3ExprImpliesExpr() so that it recognizes that expressions like "iif(X,Y)" and "CASE WHEN X THEN Y END" imply X.
...
FossilOrigin-Name: eb5ac9e5b9a4f9c85a2203107697da14c07c1667037dff672f9d786cea964a37
2024-11-28 11:52:18 +00:00
drh
dc7b94e63f
Simplification to the fix in the prior check-in.
...
FossilOrigin-Name: f79cb748c9447ca4d2184a24219feb19571eb79870e0bedf14704743a3d5f8b9
2024-11-28 02:09:27 +00:00
drh
3ff6aa6e39
The sqlite3ExprCompare() routine should always compare the same variables
...
as equal to one another, regardless of whether or not QPSG is set.
FossilOrigin-Name: df95d5209a77c0302e08ea7b1f248646fb2a062ba5beca898678aee0a1d03a3a
2024-11-28 01:47:44 +00:00
drh
bfb7f77a8c
Add two NEVER() conditions.
...
FossilOrigin-Name: 4f358ad20dc8a45e7aaa1a1996b40abd39caf34be6556ed54e1e0c80572b7ac0
2024-11-28 00:58:37 +00:00
drh
60ad526639
Enhancements to sqlite3ExprImpliesExpr() so that it realizes that
...
"iif(A,B)" implies "A".
FossilOrigin-Name: d96ecbee59b50eca25447456dfff2c168e8eade7a68e542932d5829f97debb31
2024-11-28 00:34:20 +00:00
dan
0bce1d6c9f
Fix an inaccuracy in the documentation in fts5.h.
...
FossilOrigin-Name: ec3ca6f17972a9624018ae352e5a4be8dc34602a4569c80e827e09cd7fbed7f7
2024-11-27 18:01:25 +00:00
drh
cf04895832
Allow the iif() function to work with two arguments. The third argument is
...
then assumed to be NULL. Also allow if() as an alternative spelling for iif().
FossilOrigin-Name: 1e405c39a8405e2081ce061559d1aacc70055fc74ab86d886b973076a3fb124b
2024-11-26 23:40:54 +00:00
drh
966a158831
New test cases.
...
FossilOrigin-Name: f1cb1a815a09d71eb52d5c7f2f4e5c7689535232dee365e46ac41cce7fd86c01
2024-11-26 23:30:49 +00:00
drh
f12e5d1a0f
Provide a two-argument version of the iif() function, plus an alternative
...
spelling that only requires a single "i".
FossilOrigin-Name: a251ee645e11e24b67473d8a5bd3f8b72fde1ac9d5fda074f5da2297deb2faa8
2024-11-26 20:56:03 +00:00
dan
3e4ccc3208
Update fts5 so that the xInstToken() extension API works with prefix queries.
...
FossilOrigin-Name: 41b79bde4a4b6510b41cc9175ff2527fbd3ca9209812361783754f24cf67ef9e
2024-11-26 20:46:18 +00:00
dan
e2a3c7232b
Update documentation in fts5.h.
...
FossilOrigin-Name: f1e44f703acb415e2ff7d7f87fa05fc874ef1c432095bb3ccb45c6ad2fd085a9
2024-11-26 20:16:34 +00:00
stephan
19a6315ccf
Patch autosetup to rename --debug to --autosetup-debug so we can use --debug/--enable-debug for its historical purpose. Update autosetup/README.md with details of the patch.
...
FossilOrigin-Name: 00dffd10f0c77fed53bdbf1536f6ef9b6076775f1b9a10794b87e3ace33ca1d9
2024-11-26 19:19:12 +00:00
stephan
58cb5644bc
Patch autosetup to rename --debug to --autosetup-debug so we can use --debug/--enable-debug for its historical purpose. --with-debug is now an alias for --enable-debug but can be removed entirely if all scripts which have been adjusted for the autosetup build are edited to (re)use the older flag name.
...
FossilOrigin-Name: 3296c8d30559eafa20f4748339177149172ecf79b019c42ed0d5ee9cf62a666a
2024-11-26 19:02:16 +00:00
stephan
04a556acf2
Move some of the in-comment configure script help text into the --help text. No functional changes.
...
FossilOrigin-Name: ee8449c482b6f9cfb82fa2417da194fc9aa56f54ef3ac83d368537181634ab1c
2024-11-26 16:12:05 +00:00
drh
0dd542f79e
Minor tweak to ./configure --help output.
...
FossilOrigin-Name: 7e634d0569667ce1e17f4a611039cbb726078dc2e6be1f1b19655dc569170ce5
2024-11-26 16:04:02 +00:00
stephan
f2d56bc578
Replace some outdated docs re. soname with a link to the soname forum post.
...
FossilOrigin-Name: 9225701cb88cb4629a12b45de5743378448b1d2ddb351916b77cfde638698070
2024-11-26 03:15:34 +00:00
dan
f6d267491c
Ensure that file-handle winShmNode.hFile.h is used in a thread-safe manner.
...
FossilOrigin-Name: 7a32b497ab16774021924a8536e1025a0a01740a6484f0de17623a69713511d8
2024-11-25 18:47:12 +00:00
stephan
b56f179e45
Correct duplicated soname linker flags, one of them mis-named.
...
FossilOrigin-Name: 87dfd92d3a5a6a09c32c70e724a3f341bc63b9c6dfa0aa94fbbbdd45cc9c29f3
2024-11-25 17:07:58 +00:00
dan
1743c5f836
Fixes for code on this branch. Now appears to work, but is not tested well.
...
FossilOrigin-Name: 0568fc6dde41dd29e85e697cd1865feb4db6aaae09d5e5100b3f97cab93590eb
2024-11-25 16:54:10 +00:00
dan
6bd3faa092
Supports SQLITE_ENABLE_SETLK_TIMEOUT on windows. Does not work properly yet.
...
FossilOrigin-Name: 737ca8a9fb9dc74b28f2186d93c5101463497445d0fabba3def61fee29abf2c8
2024-11-22 21:24:08 +00:00
drh
8ff67df7ac
Fix another issue in argument expansion on Windows for tclsqlite3.c in
...
interpreter mode. Problem introduced by check-in [9b87ea219bce5689] and
unfixed by [cd942dce148c9d8f].
FossilOrigin-Name: 0fe1622cec95b7ebecc127ee57a08113d3da1dadbe72c03a13d6751b3043e50f
2024-11-22 17:41:00 +00:00
stephan
7398e279a7
Remove a flaky JS test which has a result depending on unrepredictable context. That same feature is more reliably tested at a later point in the same script.
...
FossilOrigin-Name: 3d6ae13805bdba4c73b7443f20073264cdd157299cb911228600e1528a136bb1
2024-11-22 16:45:43 +00:00
stephan
de7e2b178d
In order to support package builds, like OpenBSD's, which set a custom soname on libsqlite3.so, extend the --soname configure flag to allow arbitrary soname values.
...
FossilOrigin-Name: 9c1c1b99837efe3704778c594a65e0cd4cd0a8ec492044d3bb07f1b37a692c6a
2024-11-22 16:24:55 +00:00
stephan
5c945264b0
Move handling of the tempstore feature flag into the OPT_FEATURE_FLAGS list and remove the CFLAGS.libsqlite3 makefile var which exists solely to account for the tempstore being tracked separately from the other feature flags.
...
FossilOrigin-Name: 2df5065d118ca4abcb4f285d07819e73c5e32f7e470d30eabc7e3d999ec8d0f2
2024-11-22 14:18:23 +00:00
stephan
dcaf03fccf
Makefile doc cleanups. No functional changes.
...
FossilOrigin-Name: 64add0ac706101c53e2d2877fdc0d1ccd071814cae969768d2741cee05f23c01
2024-11-22 14:12:18 +00:00
stephan
7a13effa20
Remove the libsqlite3.so.3 link from the installation process, as it now serves no functional purpose. We retain libsqlite3.so.0 (A) for compatibility with clients linked against legacy builds and (B) 0 is still valid as the library's ABI version.
...
FossilOrigin-Name: 91bd9813e04e34e088d5e73bfe2a4f338513363d9a99095a232b811c6b616354
2024-11-22 13:47:12 +00:00
stephan
0cf7131555
Add links to [/forumpost/5a3b44f510df8ded|the SONAME discussion] at relevant places in auto.def and the makefiles. No functional changes.
...
FossilOrigin-Name: c78dcc318a36af123676e54d85fc7f980c21b0ea366d164a96e2d998286d3813
2024-11-22 13:22:25 +00:00
drh
ed271dc7ea
Fix harmless scanbuild warnings caused by the introduction of the
...
".dbtotxt" command into the CLI by check-in [b43acf5a8cd4a5ef].
FossilOrigin-Name: 554d8fbd865436ace900859874b6c8c7e1b782184158a86b7788644e27bd1997
2024-11-22 12:29:35 +00:00
drh
38fdb2a857
Fix some harmless scanbuild warnings in the shell.
...
FossilOrigin-Name: 9ba1c9b505d459366274043c1c5327f1a9d4e15d3564d99f8a15926af1d6d247
2024-11-22 12:07:21 +00:00
drh
f0a9af433a
Fix harmless compiler warning caused by [c77a4a42f2e3d164].
...
FossilOrigin-Name: 063690d2c5cc2a887055b9141d3fcdb4fd2fa35d069c9a39b81903c531c73fcf
2024-11-22 12:00:31 +00:00
drh
9edb535bdd
Make ".scanstatus" an undocumented alternative name for ".scanstats" in the CLI.
...
FossilOrigin-Name: f20688efc2bc54648618b0aa2593a771f455ee8cc703b52273452d15e680b67c
2024-11-21 20:57:11 +00:00
stephan
a8c68e551d
Fix a bug-in-waiting (one too few list elements) in [b6bd25bd769e].
...
FossilOrigin-Name: e527dcd016fbeb55b0e613a0b3b95350bbc8b3ee601bbadfedaf6bd5458b3570
2024-11-21 20:10:38 +00:00
stephan
d204a83c9b
Add the --scanstatus configure flag to set -DSQLITE_ENABLE_STMT_SCANSTATUS.
...
FossilOrigin-Name: b6bd25bd769e4286ad0b8ca5059bc9da52188cefe92525d8994aa921768aa750
2024-11-21 20:07:01 +00:00
stephan
2f70d5838a
Fix a JS test which was broken when OMIT_PROGRESS_CALLBACK was _not_ used.
...
FossilOrigin-Name: fba23150b5b57980f8ed2656a2325f95215ca1e13fc3449b5eec804831dd65c8
2024-11-21 15:53:31 +00:00
drh
9bf5bea607
Document that -nofollow does not work on Windows. Fix Windows symlink
...
test cases for when the test suite is run as administrator.
FossilOrigin-Name: 4de8a75ec5a2e3655a2d0c5a9333b58f8b48b681255f0a01866b610ae6249bc2
2024-11-21 01:50:01 +00:00
dan
032bcf72fb
Fix compiler warnings caused by variable shadowing.
...
FossilOrigin-Name: 211b305791980b24c4192ffc57a0471473de3fca32bfc146c0eeacedef7a88aa
2024-11-20 20:39:18 +00:00
drh
d02833bf05
New configuration option --dynlink-tools causes some command-line tools like
...
sqldiff and sqlite3_analyzer to link against the libsqlite3.so system library
rather than being built-in. Caution: sqlite3_analyzer requires the
SQLITE_ENABLE_DBSTAT_VTAB compile-time option on its SQLite library in order
to work, so do not use --dynlink-tools to build sqlite3_analyzer without it.
FossilOrigin-Name: 314c606dd36e03d2ded899c536585ea21250af56b553fa4c96dc714cb5099522
2024-11-20 16:21:34 +00:00
drh
914e32f24a
Use shared-library flags, not shared-object flags, to create shared libraries.
...
This makes no difference on Linux, but is required for Mac.
FossilOrigin-Name: bfaa3ee7588b6f6be9799882c6ed6472357d988fac31512d5e92fe28f57029c6
2024-11-20 16:17:01 +00:00
drh
2722e2e822
Bug fix in the SubrtnSig logic from [c9a3498113074bbc], if a subquery is
...
copied and then changes are made to the copy, be sure to give the copy
a unique Select.selId value so that the original will not be substituted
in place of the modified copy.
[forum:/forumpost/0b9ded2f8428ac00|Forum post 0b9ded2f8428ac00].
FossilOrigin-Name: 19d1bede5654bcfa9f7a151b9b2616a3d10873b8e3f8cf54a3a7e810da08f844
2024-11-20 14:59:32 +00:00
drh
d4a65cfc51
Provide the sqlite3ShowWhereTerm() interface callable interactively from
...
a debugger, when compiling with SQLITE_DEBUG.
FossilOrigin-Name: c77a4a42f2e3d16427a69295436efe36335e56e97abd0efba814092498a8dea8
2024-11-20 14:19:44 +00:00
drh
9566982328
Do not report an sqlite3_error_offset() for errors that occur inside of
...
views or triggers, since the text of those elements is not part of the
original query.
FossilOrigin-Name: bf66c6dfc25c2562a4e6a5b24dd1660213a8fefbb5763e7583b87fb06dbaaf43
2024-11-20 11:34:16 +00:00
stephan
a34fbd1b9b
Add fix from [bfab759611b0] to sqltclsh. Remove some now-unneeded has_tclsh84/5 checks in cases where jimsh can be used.
...
FossilOrigin-Name: 9d389b998317c5006876f2f40d56cd763d1555bbeaf48b2bca9bd46dcd02b80e
2024-11-19 21:19:12 +00:00
drh
18c9e2638e
Add missing $TCL_LIBS to the link for sqlite3_analyzer.
...
FossilOrigin-Name: bfab759611b0562837d8733ce56591854db08c122956524799dc1d5b3e2d0279
2024-11-19 21:14:48 +00:00
stephan
457d9384a2
Rename --link-tools-dynamically to --dynlink-tools, per discussion.
...
FossilOrigin-Name: 50b9f6fde44f9afda27e47badde6115ab6d9ccd5e22b446a8d8127499848815f
2024-11-19 20:21:40 +00:00
stephan
b81e11b25b
Move the in-comment-code commentary about --with-debug, from [7b14309be4], into the --help text for that flag, where it's readily visible.
...
FossilOrigin-Name: c938e5d783b3f015b2a1b9f3711664b13497c4b71e4a890c65d6665539522ff8
2024-11-19 20:14:31 +00:00
stephan
c73b85c156
Get sqlite3_analyzer optionally linking against libsqlite3.so instead of embedding sqlite3.c. Patch mkccode.tcl to accept digits in its IFDEF/IFNDEF checks and sqlite3_analyzer.c.in to only include sqlite3.c if -DINCLUDE_SQLITE3_C is passed to mkccode.tcl.
...
FossilOrigin-Name: 80f3bf8c2ee31ba1ab9187d64d5dcbbf97a61845a21b036f89ea9133153575c0
2024-11-19 19:47:51 +00:00
stephan
d3aaf963a9
Merge trunk into this branch. Fix a small jimtcl/tclsh regex incompatibility in mkccode.tcl.
...
FossilOrigin-Name: 7fb3ebfec634e0508267049fddb2b513201dbefce4d378ca3ec261c5d8336d7f
2024-11-19 19:16:58 +00:00
drh
5608fb36ec
Enhancements to tool/mkccode.tcl such that it recognizes -D command line
...
arguments and can use them in internal IFDEF and IFNDEF macros. Update
the tool/sqlite3_analyzer.c.in script such that it omits the SQLite amalgamation
if -DSQLITE_ENABLE_DBSTAT_VTAB is defined.
FossilOrigin-Name: 7fec209290aa1a6dbbca8de154edaac5d8d0ce042bc0617d27fb2095c8d580f1
2024-11-19 18:26:47 +00:00
stephan
3cd93a0b67
Revert linking the shell to the dll for reasons explained in new makefile comments. Move the --with-debug configure flag into the developer options set and add commentary about why it should never be used for production builds.
...
FossilOrigin-Name: 7b14309be42be4204c4d30e9741d56d75ab8ec34686791d032612337fe1c4dcf
2024-11-19 17:41:13 +00:00
stephan
5ef61df185
Reformulate sqldiff deps and rules so that the target matches the resulting file name, to avoid rebuilding it on every make invocation. Apply the same treatment to the sqlite3 CLI shell.
...
FossilOrigin-Name: 9a17b83f859ef14629cb78d8c9af1b3f2493b0c8756bc2ebcf92f0872fb507c3
2024-11-19 16:40:49 +00:00
stephan
fbd9de1830
Initial configure support for linking certain binaries to libsqlite3.so instead of embedding it dynamically (which they typically do). This currently applies only to sqldiff, but support for adding the same for other tools is planned. This requires disabling the soname because setting it causes the build to link to whatever libsqlite3.so.0 is installed system-wide, so the soname now defaults to off.
...
FossilOrigin-Name: 9192c146e2898456a6b8ea43a6f02c0227ddce5b584374fbeb2d63bd2ecd5d8c
2024-11-19 15:20:47 +00:00
dan
fefc7b1bf7
Fix a problem handling OOM errors in fts3 that could occur when parsing multi-token strings.
...
FossilOrigin-Name: 4c4d1db00bd2c522165876dcf1606116a72525d9ffc891b266213704e25cde55
2024-11-19 11:58:32 +00:00
drh
ea206ad17b
Reduce divergence from begin-concurrent.
...
FossilOrigin-Name: 84d41e9d04c62601e84621e8edb3b81abbacc366a6b5e7059f8b6796fade7ffa
2024-11-18 18:45:31 +00:00
drh
12599d566b
Attempt to reduce divergence with the wal2 branch.
...
FossilOrigin-Name: e0d8f9916c2d899094b71af74f44e089a97db6d80f09eb80a5d8be733c1bf942
2024-11-18 17:05:45 +00:00
drh
5cad859f61
Attempt to reduce divergence with begin-concurrent.
...
FossilOrigin-Name: f783d90187fb326faa3d0244b30138b023c4a8483486f260b7a022a927c13f3a
2024-11-18 16:44:26 +00:00
stephan
0df847cc77
Remove the .POSIX entries from the makefiles because they cause portability problems rather than solve them.
...
FossilOrigin-Name: e1330ecf170436678c5c235557fb95b8acbf4fad62583edba4af03aff49afbc5
2024-11-18 14:15:08 +00:00
dan
de8aa17eb5
Fix a "applying zero offset to null pointer" usan error in the fts5 trigram tokenizer.
...
FossilOrigin-Name: 9b79b999d4192a3a250bf343825f61e9cb83203e4d94dcfa20c320d5f1386d69
2024-11-18 14:08:42 +00:00
drh
9c8235b1bd
Fix minor problems in testrunner.tcl that pop up when the command-line arguments
...
are such that no tests are run.
FossilOrigin-Name: 321ded32f67550e964cd64d61aa0cbc0029ce2fdee4588a46b01dbb5aa87150b
2024-11-18 13:29:16 +00:00
drh
bbc6e5c9b7
Make the --vfstrace output from the CLI go to the same output channel as
...
everything else.
FossilOrigin-Name: f71d4900205ae6ee41f849c4026d0fe4d6cf281dfc3bac8105fc8e242d128b67
2024-11-17 11:42:43 +00:00
stephan
f6fdf32553
buildtclext.tcl: add docs explaining the DESTDIR check and break out of the auto_path search loop early if the DESTDIR is not writable, rather than re-checking that repeatedly.
...
FossilOrigin-Name: d07be336eaeb9a5d56ac6e1b63f4d8e50d3ac236f5953cc178ef34542a7cd8fa
2024-11-17 09:49:53 +00:00
drh
70d390134c
Call fflush() on ".echo" output from the shell, so that the output to
...
stdout is aligned with output to stderr.
FossilOrigin-Name: c38b9db3c4f71706a7d211424da64311e6e5daf64b224565a6d82d4b1a68e261
2024-11-16 18:54:46 +00:00
drh
18689b8fb2
Fix argument expansion in sqlite-tclsh on Windows such that if an argument
...
does not match a filename even after glob expansion, it is appended to the
argument list verbatim.
FossilOrigin-Name: cd942dce148c9d8f5a94cee61923aad8d1b732b807e004005f78323be30c02e7
2024-11-16 17:39:34 +00:00
stephan
50faa8d17e
Handle DESTDIR at an earlier phase in buildtclext.tcl to account for the is-writable-dir check and to filter out //zipfs: dirs as (im)possible installation targets.
...
FossilOrigin-Name: d2e8c161a14fbbcc52c50dfd9274c9969e3c273e2cb7cbf2f865541af9f39ead
2024-11-16 17:09:55 +00:00
stephan
f6c7cc606e
Add the --destdir flag to the tclextension-install makefile target.
...
FossilOrigin-Name: d1663cf05f7dcaafd479bacf083b6b774f34fd3db89012b49599d30817eb174f
2024-11-16 14:30:43 +00:00
stephan
d8f6222bee
Add --destdir flag support to buildtclext.tcl, but do not yet add that to the makefile (so that this change can be cherrypicked to the 3.47 build).
...
FossilOrigin-Name: 67a3ca0c013b6a9da3b2c50ffc86b96b14454d1e45fa90d3b0a238488a783e79
2024-11-16 14:29:51 +00:00
stephan
4b24cb2a3a
Rename tool/tclConfigShToTcl.sh to tool/tclConfigShToAutoDef.sh in the name of pedantic correctness.
...
FossilOrigin-Name: a7dd196d99ee7c75b92a03915f2b370e3f4c598eb8521b90af1cb5dd7f9ee49c
2024-11-16 10:42:33 +00:00
stephan
d676227f2c
configure: tiny simplification of proj-assert.
...
FossilOrigin-Name: bfdc416b561937aa74483bf96c042e701e6f98997150f1f1a6b165cddd40d8d1
2024-11-16 09:00:31 +00:00
dan
67a3914e65
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: edb842349320eda9550bdfcd5a327949c5512e02f4b993782587b2131a425746
2024-11-06 17:31:48 +00:00
dan
8acaa6d039
Add tests for xInstToken() and prefix queries with various fts5 configurations.
...
FossilOrigin-Name: 9cc04331a01760189d88697233009dbe8a60eda589792ad01b56300499e9f54d
2024-11-06 16:20:16 +00:00
dan
090b8649be
Allow an fts5 table or query to be configured to collect xInstToken data for any prefix terms as part of the first parse of the main index, if any.
...
FossilOrigin-Name: 46929ae92b26f02bc70de9931b21a8a7cf9a2453d5fb07f68b712f62e28e9152
2024-11-02 19:10:50 +00:00
dan
32b4979559
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: 790c56d493c66a2136e24d349d169639809d70bfab6996975a403be568a267a5
2024-11-01 19:41:22 +00:00
dan
cd9b951e6b
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: bce9a524de6dda87daa90395cd55713d2d3ccfc090e53a947548e434db5eef5e
2024-10-28 10:39:14 +00:00
dan
b27a30c620
Merge latest trunk into this branch.
...
FossilOrigin-Name: 740a37c5d54b57befa86a6bb299ffa89ed4243d10db885a08ab5c63238460dad
2024-10-27 14:41:58 +00:00
dan
d2a88e961a
Rationalize code further. And add tests.
...
FossilOrigin-Name: 0ca002a4ab88f3e7ae1e6e518038157eaa20759f57888c2ed7e50cb92bd96348
2024-10-01 20:38:08 +00:00
dan
7d56669bc4
Rationalize some of the new code on this branch.
...
FossilOrigin-Name: 66f209ba40e7de49b304d7931ff38a4994038452aab08e9347286a234c6f7075
2024-09-28 20:45:11 +00:00
dan
2eff8f2252
Change the way tokendata indexes are collected for prefix queries.
...
FossilOrigin-Name: 204ddf4e726b695dd12ab4a945ec2461655aa0bcc38b74e970f07ed2ac43c6ff
2024-09-25 18:55:11 +00:00
dan
acfd1e2ba8
Merge trunk changes into this branch.
...
FossilOrigin-Name: 9945206e6e26a48a49b9747650d299eb983cc21a3a61c621cd81f0bbc85a74d7
2024-09-24 15:43:52 +00:00
dan
e25a267e81
Fix the fts5 xInstToken() API for prefix queries that do not use prefix-indexes. This is experimental.
...
FossilOrigin-Name: 97c2824f471e7e622c4a166947a6e8162cae891345101539829a6fcec83373fe
2024-09-14 20:30:14 +00:00
drh
a3ee3860a2
Merge all the latest trunk enhancements into the exists-to-join branch.
...
FossilOrigin-Name: 9084a4c8726a2c7ba1c381886e29c7b86121d531282be0d63d5988d84f6f448d
2024-07-31 23:46:10 +00:00
drh
c96e47c80e
Merge the latest trunk enhancements into the exists-to-join branch.
...
FossilOrigin-Name: fc643f8a12e9b7448136b281f798e18dfebe0a3df5115d930b965c8a33933e2d
2024-06-27 14:54:15 +00:00
drh
620a00ee32
Do not attempt the exists-to-join optimization if the FROM clause is full.
...
FossilOrigin-Name: 8e3a1d2850337a902ab36b1d6a0dad4ae35030b71d1e15547f6e7487c1f86d18
2024-06-20 12:07:25 +00:00
dan
62b954d545
Add tests for the change on this branch.
...
FossilOrigin-Name: ae19ff9ba819439fd107e745b6e8e503e5b68bfdb9da58b74035413704ad3caf
2024-06-14 18:06:25 +00:00
dan
0d92e66dfc
Do not attempt the exists-to-join optimization for expressions from the ON clause of joins.
...
FossilOrigin-Name: 4666433cbd9af21c2e0440b10bcb39878624a39485e2bb514553b276acb8a401
2024-06-12 17:01:00 +00:00
drh
ddc62664bf
Provide the ability to disable the exists-to-join optimization using
...
SQLITE_TESTCTRL_OPTIMIZATIONS. Provide tree-trace output for the optimization.
FossilOrigin-Name: 33a3f327855b427ae6ba0057218d043a1417bc9d780728f47f23acdd836e1686
2024-06-11 18:22:48 +00:00
drh
b4f41b801a
Merge trunk enhancements into the exists-to-join branch.
...
FossilOrigin-Name: 5f25a9518a675efbd0525cc2f5595ee7bc7122be7cfecdf6b20c909185dea370
2024-06-11 17:37:36 +00:00
dan
df77e56cde
Add missing calls to sqlite3exprSkipCollateAndLikely() to the enchancement on this branch.
...
FossilOrigin-Name: 078537d057d638389e3ab3bc04bcac53f342c7bf1d8d75222296ef42d09e9ee7
2024-06-10 19:45:33 +00:00
dan
dc9a262319
Fix a crash that could occur when the SELECT in an EXISTS(SELECT ...) used an unknown collation sequence.
...
FossilOrigin-Name: f3009a6d7facd1ead520d588c5ad089db76d8641cd3dae076f2405492d7defcd
2024-06-10 19:31:18 +00:00
dan
b111f1cb2a
Add extra tests for the changes on this branch.
...
FossilOrigin-Name: a6365c778f2a6d6fa78e8520553373898f382ce73bf6496533e26291648ef5d1
2024-06-08 18:13:12 +00:00
dan
5525ac1049
Experimental optimization to rewrite a SELECT with an EXISTS(...) expression in the WHERE clause as a join.
...
FossilOrigin-Name: 972a33db0b0e924b78d5309d222d8ea298bd59c72da14ea2d14e8e2caaad1e0a
2024-06-07 21:00:42 +00:00