]>
git.ipfire.org Git - thirdparty/sqlite.git/log
drh [Sun, 29 Mar 2026 22:41:12 +0000 (22:41 +0000)]
Fix harmless compiler warnings about unused variable assignments.
FossilOrigin-Name:
afe7e9fd1c476c7cdcefab0adf0191a8dc3283811f72a685fff3eb6539b72dcc
drh [Sun, 29 Mar 2026 19:23:47 +0000 (19:23 +0000)]
Merge trunk performance enhancements and fixes into the direct-printf branch.
FossilOrigin-Name:
9fa9cd11f8f5f7591168870c6e41121221b58a4a3094e708e3fa5bab1502f190
drh [Sun, 29 Mar 2026 19:06:36 +0000 (19:06 +0000)]
Avoid using unsigned 64-bit integer division on platforms that do not support
it in hardware.
FossilOrigin-Name:
2197677491dfc5ec87b57bbf807776875248a250f80ce9a5ce94ae385bb1d2bc
drh [Sun, 29 Mar 2026 10:32:25 +0000 (10:32 +0000)]
The _umulh() intrinsic function is not available on 32-bit windows. So don't
use it there.
FossilOrigin-Name:
e75f30c7e66e725a2f3f46c7d4d69a2ff925e2de9a86c3a6ec38897545b43a58
drh [Sat, 28 Mar 2026 20:24:47 +0000 (20:24 +0000)]
In sqlite3_str_vappendf(), write floating-point renderings directly into
the output buffer, saving a memcpy().
FossilOrigin-Name:
e4e040e7aaaf5bfccbf0414fee3d08c5fdc24e03d1118dce92d2dd16c614ce63
drh [Sat, 28 Mar 2026 14:21:53 +0000 (14:21 +0000)]
Remove a harmless unused variable from the fp-speed-2.c benchmark.
FossilOrigin-Name:
ff9008e7615d877e6cc852c60097777006b274971646d368eaa56b99a7acf6c7
drh [Sat, 28 Mar 2026 14:17:53 +0000 (14:17 +0000)]
Enhancements to the fp-speed-N.c programs, suggested by Andreas Kupries.
FossilOrigin-Name:
7d81ff4c509d4039ef9e2f1066284ec560131422db0cbffa7e1826d71bb8f8e1
drh [Sat, 28 Mar 2026 13:59:34 +0000 (13:59 +0000)]
Reduce the compiled size of the quote() SQL function.
FossilOrigin-Name:
9ea980a35628f7d0741ab6c65840ab9dab8abb576c6c60109147336452f9637a
drh [Sat, 28 Mar 2026 13:30:47 +0000 (13:30 +0000)]
Turn an sqlite3VMPrintf() into an sqlite3DbStrDup().
FossilOrigin-Name:
75e8703664ae94244284819d9021877a5fc33a268fb86f3e70de20875a766d80
drh [Fri, 27 Mar 2026 20:18:06 +0000 (20:18 +0000)]
Fix up the floating-point speed tests so that they only need to be run once
to get a performance comparision. Provide the fp-speed-test makefile target
to build and run them both.
FossilOrigin-Name:
09e0e78a8265c2e2bc36fef1fa88bd5bf414f9b776966c1c91a4ed4b7866331d
drh [Fri, 27 Mar 2026 19:25:25 +0000 (19:25 +0000)]
Add a comment to test/fptest01.sql to remind us that failures in that
script might not be the fault of SQLite.
FossilOrigin-Name:
65efcb0a2ed49fa2fd747b5f034d976ed3cb4a01a185bcada70bf8a5208f3841
drh [Fri, 27 Mar 2026 18:58:50 +0000 (18:58 +0000)]
New test cases for text→float conversions.
FossilOrigin-Name:
bbf2d648376a965605d5c641a889ab7ef365bc53788d984c054468e9889deee6
drh [Fri, 27 Mar 2026 16:09:10 +0000 (16:09 +0000)]
Enable the use of intrinsic high-precision multiplies on Windows ARM.
Make the SQLITE_DISABLE_INTRINSIC option effective on high-precision
multiple subroutines, for testing purposes.
FossilOrigin-Name:
efb6212de4ca998546329b06b43122f0fffa3759e4615ca3357ef9fa13606d44
drh [Fri, 27 Mar 2026 14:54:01 +0000 (14:54 +0000)]
Change the print resolution the fp-speed-1.c test to 17 digits.
FossilOrigin-Name:
c687b32a956315ddf4336df42deb4037c37d51b536b8a24c5cef4c5a0bc4c79b
drh [Fri, 27 Mar 2026 14:19:01 +0000 (14:19 +0000)]
Update fp-speed-1.c and fp-speed-2.c to include its own timers, so that it
works on platforms that lack the "time" command.
FossilOrigin-Name:
9b083070de2d782fe1db62652af8f3cd48abe16b55b974f3927b738e3d914887
drh [Fri, 27 Mar 2026 14:03:41 +0000 (14:03 +0000)]
Add the fp-speed-2.c performance test program.
FossilOrigin-Name:
b788256f1980531e7abb15c5fbcdd40ae166f091aea28f449c0407105ddf1aa4
drh [Fri, 27 Mar 2026 11:46:11 +0000 (11:46 +0000)]
Add a comment showing reserved file-control numbers to sqlite3.h
FossilOrigin-Name:
cd472d7c85f3fda54bba5166eae72b5f9b86861c4a1160583e8ee902ba992255
stephan [Thu, 26 Mar 2026 19:11:57 +0000 (19:11 +0000)]
Add SQLITE_STRICT_SUBTYPE to PRAGMA compile_options, an omission reported in [forum:
3906a71526 |forum post
3906a71526 ].
FossilOrigin-Name:
c5af6a10245b6b847d30002806c1577b020c36ab27f7b1cf202ade136aa4779c
drh [Thu, 26 Mar 2026 18:19:47 +0000 (18:19 +0000)]
Enhance the return value from sqlite3AtoF() so that it reports if the input
includes more than 19.25 significant digits.
FossilOrigin-Name:
1721c8da769816ca16104cd636299d84f682fc004938a50056b76b269e49e915
drh [Thu, 26 Mar 2026 16:33:03 +0000 (16:33 +0000)]
Revamp the return code from sqlite3AtoF() for additional information and
for small speed improvement and size reduction.
FossilOrigin-Name:
f10a431eade20ecd4c4d501fc534e2dae6ab2fe67302ea7bb3cd6eba127848fc
drh [Thu, 26 Mar 2026 14:19:34 +0000 (14:19 +0000)]
Improvements to the sqlite3AtoF() interface. Add a test-control for
direct testing of sqlite3AtoF().
FossilOrigin-Name:
97ee48b6ef65fb55633196282c9e75b3b0a3b81ba9755f63493a38e3f1a5610c
drh [Thu, 26 Mar 2026 12:09:37 +0000 (12:09 +0000)]
drh [Wed, 25 Mar 2026 21:23:23 +0000 (21:23 +0000)]
Fix an off-by-one error that cause a loop to (harmlessly) run more times
than necessary. Performance optimization, not a bug fix.
FossilOrigin-Name:
58f4e058f1cbb798b8a48208c6310fd10ca9cd1fc7c550f3ed283cf38ae45c2f
drh [Wed, 25 Mar 2026 21:05:18 +0000 (21:05 +0000)]
Performance optimization when zero-padding in printf().
FossilOrigin-Name:
dbd81abdc6633124e72999321db6fc8640851fa5eb063e6317a4c3e57b48dbaa
drh [Wed, 25 Mar 2026 19:36:16 +0000 (19:36 +0000)]
Small size reduction and performance increase in sqlite3Atoi64().
FossilOrigin-Name:
c818165fd709b813ab07788662bf69205ece2dcea41346609b3439950f900057
drh [Wed, 25 Mar 2026 17:59:22 +0000 (17:59 +0000)]
Signification optimizations to layout of text for floating point
conversions in sqlite3_str_vappendf().
FossilOrigin-Name:
6a74df6d6ecfda8e0ff72ca0f4167190e989973ad124412892f7d36f1666ccfc
dan [Wed, 25 Mar 2026 11:19:38 +0000 (11:19 +0000)]
Handle the case where the compile-time default page-size is greater than 8192 bytes.
FossilOrigin-Name:
3aea251f238277c68d7a80a4fa643bb0f80b274cef77ef32c4eb833cfaf46740
drh [Tue, 24 Mar 2026 19:26:05 +0000 (19:26 +0000)]
Prevent overly long JSON paths from using too much stack space.
FossilOrigin-Name:
82a0794814bbc095235f8158a4129a5d83f6af1b0c27cb56449ea32feb44faf5
drh [Tue, 24 Mar 2026 12:39:05 +0000 (12:39 +0000)]
Limit JSONB recursion depth in the json_patch() function.
FossilOrigin-Name:
f8659b700c0088abe19ce65fec032c1005a1f750566488f4578256d41558770c
drh [Tue, 24 Mar 2026 11:54:55 +0000 (11:54 +0000)]
Improved error messages for JSONB nested too deep.
FossilOrigin-Name:
82036fafa175e798fd32b3dc4ad043fc2bbe2bb2af17781f12dcb4d23a233865
stephan [Tue, 24 Mar 2026 11:33:22 +0000 (11:33 +0000)]
Remove a stale reference to the long-removed SQLITE_MUTEX_APPDEF, as pointed out in [forum:
348453389b |forum post
348453389b ].
FossilOrigin-Name:
cb8e55b59113d0102c50db0a43b1b59d531cdcb12a7cce4c4c9a428c7c6e1adf
drh [Tue, 24 Mar 2026 11:25:44 +0000 (11:25 +0000)]
Minor simplification to JSON path error reporting.
FossilOrigin-Name:
1cd30c4827e382861cf12af48579eedc9685b9612dedb6a2844f20355b910e7e
drh [Tue, 24 Mar 2026 00:31:28 +0000 (00:31 +0000)]
Recognize artifical JSONB blobs with deep recursion as being ill-formed.
FossilOrigin-Name:
adac4ed1f13a9a1c4a34c8f59438eac68867981748629ca3957055ad9f940299
drh [Mon, 23 Mar 2026 21:03:34 +0000 (21:03 +0000)]
Move datatype and structure definitions up near the top in the CLI source code,
to facilitate future changes. No changes to the actual logic (yet).
FossilOrigin-Name:
6b3d84d34d1a84eb8ddff08cd85d9dff6e71099e7a4b2c19db8774d942d3a040
stephan [Mon, 23 Mar 2026 13:17:13 +0000 (13:17 +0000)]
Require a button click to start the OPFS concurrency tester, rather than simply launching all N workers immediately on page load.
FossilOrigin-Name:
3342d6786e07d3d8dd4b1f2291edea9f8354d384ff21242cc513c218ce6f1630
drh [Mon, 23 Mar 2026 13:00:56 +0000 (13:00 +0000)]
Use sqlite3_atof() instead of atof() in the CLI. Dogfooding.
FossilOrigin-Name:
276c350313a1ac2ebc70c1e8e50ed4baecd4be4d4c93ba04cf5e0078da18700e
drh [Mon, 23 Mar 2026 12:25:52 +0000 (12:25 +0000)]
Move the definition of the new sqlite3_atof() function in sqlite3.h so
that it is adjacent to sqlite3_mprintf().
FossilOrigin-Name:
1553a60506fa29b5f00535ae0f7aeb8cc94ebe84015386b3248fd8491108fc60
drh [Mon, 23 Mar 2026 10:58:29 +0000 (10:58 +0000)]
drh [Sun, 22 Mar 2026 20:52:23 +0000 (20:52 +0000)]
drh [Sun, 22 Mar 2026 18:26:43 +0000 (18:26 +0000)]
Performance enhancements and improved documentation for sqlite3AtoF().
FossilOrigin-Name:
62f011509600ab8cda28888ebd32e5faa4e865702755bc32dee7a12bf2f4425d
drh [Sun, 22 Mar 2026 17:50:48 +0000 (17:50 +0000)]
Additional performance improvements in sqlite3AtoF(). Also update the
header comments.
FossilOrigin-Name:
8c3a1b450d6d5778004b9fb0e92b4f3f90d3e06ff87276370d01a45b7d607d23
drh [Sun, 22 Mar 2026 02:51:18 +0000 (02:51 +0000)]
Further simplification and performance improvement
FossilOrigin-Name:
6c3dc2430adef061b458b6d9159628bb8debfd4d63876d5d5e7493afb799d97f
drh [Sun, 22 Mar 2026 02:26:38 +0000 (02:26 +0000)]
Performance improvements in the floating-point number parser.
FossilOrigin-Name:
aea648f3668219a2539160eb68c77ddd06aa8eac235c1326fe7b1547288b11ee
drh [Sat, 21 Mar 2026 19:49:38 +0000 (19:49 +0000)]
Because version 3.52.0 was withdrawn, that means QRF has never been
officially released. Hence the new nMultiInsert field of the spec
can be moved out of the extensions area and into the main part of the
spec, and the version number can drop back from 2 to 1.
FossilOrigin-Name:
cf19982241afb17e3db4148b8257f6737141935a291c340ab085c42ed946af1a
drh [Sat, 21 Mar 2026 13:21:41 +0000 (13:21 +0000)]
Try to fix harmless compiler warnings from legacy C compilers in the CLI.
FossilOrigin-Name:
8e1d0c4eac303cd0834449f4792605c0ed983db1f360af42300f0048dadbbef8
drh [Sat, 21 Mar 2026 13:05:54 +0000 (13:05 +0000)]
drh [Sat, 21 Mar 2026 12:55:57 +0000 (12:55 +0000)]
Undo "indices"→"indexes" changes in comments, to avoid diff clutter.
Fix a couple of unreachable branches.
FossilOrigin-Name:
0042ff9afd00eca0a837e9bbe57540ff2810fcd58b4f7e3f4e3b83aad5699757
drh [Fri, 20 Mar 2026 20:35:21 +0000 (20:35 +0000)]
Fix harmless compiler warnings in the csv.c.
FossilOrigin-Name:
6ac701f89e2ac8dfd18d041eb8c36a0c2b9fedc5618d3a95be794aecce5c59cf
drh [Fri, 20 Mar 2026 19:30:58 +0000 (19:30 +0000)]
If the argument to REINDEX is EXPRESSIONS (with no schema prefix) then it
updates both expression indexes, and any indexes named "expressions" or
all indexes of any tables name "expressions".
FossilOrigin-Name:
72650dc152279a6da1937f377b1e16b79f4cd664841e12222dc5459838408d22
drh [Fri, 20 Mar 2026 14:37:39 +0000 (14:37 +0000)]
If there are not collating sequences, tables, or indexes named "EXPRESSIONS"
then the "REINDEX EXPRESSIONS" command rebuilds all expression indexes.
FossilOrigin-Name:
df5c5aa26758e0dc00a9ccba29eac83071176d257e121207e0a13c54833b18c0
dan [Fri, 20 Mar 2026 11:35:15 +0000 (11:35 +0000)]
Ensure that collation sequences on non-PK columns of a WITHOUT ROWID table are used correctly when they are part of a row value comparison. Fix for forum post [forum:
7a308e933d |
7a308e933d ].
FossilOrigin-Name:
078b3162d0d3d3035f4d3ad88664066d99c218a731ac481b9f1172529e26e4eb
drh [Thu, 19 Mar 2026 23:49:29 +0000 (23:49 +0000)]
Ensure that sqlite3RCStr values returned by json_group_array() and
json_group_object() are zero-terminated.
FossilOrigin-Name:
88a931ea2ae734478928c2a6021b00b0f2be490328260630e176cf3cc7111472
dan [Thu, 19 Mar 2026 17:56:10 +0000 (17:56 +0000)]
Update fts5 scan costs to take into account that a prefix query combined with a rowid equality constraint is still quite expensive.
FossilOrigin-Name:
539769b63e4044018be2993894b1962df6a6ae58636682b7fb7a2dd5aaf4075c
drh [Thu, 19 Mar 2026 17:08:08 +0000 (17:08 +0000)]
Restructure some internal subroutine signatures for improved
performance of affinity type conversions.
FossilOrigin-Name:
2bc6ce87b39c6ae324c3641c5af60e000df7d7c6d5fd2dd1a318c94cbb4aef84
drh [Thu, 19 Mar 2026 13:40:40 +0000 (13:40 +0000)]
Use compiler intrinsics to improve the performance of
sqlite3Multiply160().
FossilOrigin-Name:
3c64f31392328f51e205fde52f19cf70c193e90897ccb7e93c685bad4f342cac
dan [Thu, 19 Mar 2026 10:51:40 +0000 (10:51 +0000)]
Do not assume that a recursive CTE emits rows in ORDER BY order. Fix for forum post [forum:
deb1eadf4d677bd5 |
deb1eadf4d677bd5 ].
FossilOrigin-Name:
cadb6cdd32c3c9abd7e063f25acd39dddc9ff764a16019ffd5aa11063175326f
dan [Thu, 19 Mar 2026 10:39:24 +0000 (10:39 +0000)]
Reverse the if() condition added by this branch.
FossilOrigin-Name:
a9a0dd521c7c24b0c8b22abf2a131028f4dc9cd233678dc1f658da81a4a70e4b
drh [Wed, 18 Mar 2026 22:31:56 +0000 (22:31 +0000)]
Continue enforcing the legacy declaration-before-statement C-language rule,
since some downstream still uses it.
FossilOrigin-Name:
5c237f1f863a32cf229010d2024d0d1e76a07a4d8b9492b26503b959f1c32485
drh [Wed, 18 Mar 2026 20:17:48 +0000 (20:17 +0000)]
Add logic to silently and transparently deal with stale expression index
values when deleting or update a table row, instead of reporting a corrupt
database. Enhance PRAGMA integrity_check to identify non-serious
stale expression index entries as such, rather than proclaiming that the
indexes is broken.
FossilOrigin-Name:
0ed040128b7ebb5be438b1841607ed9c525b271cac81021bc356cf573d1cd516
drh [Wed, 18 Mar 2026 18:14:14 +0000 (18:14 +0000)]
Minor optimization to error message generation in integrity_check.
FossilOrigin-Name:
e0fa7c500052af9d36cb2d232131ef93361403187f4a60f53279b102c7a95860
drh [Wed, 18 Mar 2026 17:16:18 +0000 (17:16 +0000)]
Comment improvements. Ensure that tests in shellB.test that require
virtual tables do not run when compiling without virtual table support.
FossilOrigin-Name:
a270c6cc0eea8a8a2cf1ce30d724b2f12b11a1c343cd8520bd7843f4e62878f8
drh [Wed, 18 Mar 2026 15:51:15 +0000 (15:51 +0000)]
Improve the integrity-check error message when floating point index values
are off by one or two ULPs. Change the name of the eiib1.test test module
to expridx1.test.
FossilOrigin-Name:
4e996c183ea8d270b4448b471d4d032e13cef89f537674599d1e7c367cc2d0f8
dan [Wed, 18 Mar 2026 15:40:26 +0000 (15:40 +0000)]
Do not assume that a recursive CTE emits rows in ORDER BY order. Forum [forum:
deb1eadf4d677bd5 |
deb1eadf4d677bd5 ].
FossilOrigin-Name:
971aa34b3fd86ba30fe170886d9f83c17159b1638c4bd4fb6cdef79b1c9a88e2
drh [Wed, 18 Mar 2026 14:47:20 +0000 (14:47 +0000)]
Take care not to overread the record header when decoding the record
in vdbeIsMatchingIndexKey().
FossilOrigin-Name:
3a275b5848767b61011b9d1d3d1a62328a80906386375d1b1e13fd92b6983e05
dan [Wed, 18 Mar 2026 14:01:21 +0000 (14:01 +0000)]
Pad the allocation in vdbeIsMatchingKey() a little to avoid undefined behaviour if the record is corrupt and getVarint32() reads past the end of it.
FossilOrigin-Name:
9b0671a4f58098948d530f5e238b483a0e9f1309021aff0d6b5ea90e6c8f4e7b
drh [Wed, 18 Mar 2026 13:49:06 +0000 (13:49 +0000)]
Adjust the fix at [
f7389cdb129d3386 ] so that integrity_check output still
appears prior to the SQLITE_CORRUPT return.
FossilOrigin-Name:
efd9a7a6c862f778da9cd74e38f674e5d1094aa1c566ea3e68553e83f59502d3
drh [Wed, 18 Mar 2026 12:36:01 +0000 (12:36 +0000)]
Simplification to the logic that decides whether or not an index
field matches when floating point values are close but not exact.
FossilOrigin-Name:
3897017c0e871c676d44786a6f11205fd4b7a947d9d1359109037a123eda6b9b
drh [Wed, 18 Mar 2026 11:15:57 +0000 (11:15 +0000)]
Fix harmless signed/unsigned compiler warnings.
FossilOrigin-Name:
aa211fa1d49b6734913e957f9e4b9825709a1493d275f7dfaf9123dc8c7232dc
dan [Wed, 18 Mar 2026 11:06:10 +0000 (11:06 +0000)]
Fix some cases where integrity-check would fail to identify real values in indexed expressions that are with 2 ULPs of each other.
FossilOrigin-Name:
40c5966f7b784f181365c81fc559aee9463c374ee56677cf6e0aecaed39d2b28
drh [Wed, 18 Mar 2026 11:04:15 +0000 (11:04 +0000)]
Fix harmless "unused variable" compiler warning.
FossilOrigin-Name:
3380eb1ea71d6bf8325dbe49f4bac7623b3b6193f3b36dedd9411188cfc80b89
dan [Tue, 17 Mar 2026 21:17:42 +0000 (21:17 +0000)]
Modify integrity-check so that it is only tolerant of very small distortions of real values in indexed expression fields.
FossilOrigin-Name:
82e6de835bde306778425d18ab1a15ae80fdf01af7f577ead89c09f9d53b5b2f
drh [Tue, 17 Mar 2026 18:55:24 +0000 (18:55 +0000)]
Improved error handling in OP_IFindKey and in vdbeIsMatchingIndexKey().
FossilOrigin-Name:
f7389cdb129d3386b7dfb8acacf84816cf10864c6800a9bd9a61c6364b850a31
dan [Tue, 17 Mar 2026 17:05:45 +0000 (17:05 +0000)]
When integrity-check finds a missing index entry, search a small range (currently 10) of entries around the missing key for an entry that matches all non-virtual and non-expression fields.
FossilOrigin-Name:
978cedcbd33165dadc7dffc118bde359eff6751ec9842230880cb827d9f7845f
drh [Tue, 17 Mar 2026 13:13:02 +0000 (13:13 +0000)]
Do not run index healing on an invalid cursor.
FossilOrigin-Name:
eb6403f02c113f58030c0b4143d91b6327ee21dcb324d3f235c2bf6bf3d6577c
drh [Tue, 17 Mar 2026 12:16:47 +0000 (12:16 +0000)]
Merge recent trunk enhancements into the idxdelete-tolerance branch
FossilOrigin-Name:
9d84fdb7819a9850919e2c1977811bcf514b3baad29eb8cc9fc78451d500c8b6
drh [Tue, 17 Mar 2026 12:07:49 +0000 (12:07 +0000)]
Fix an assertion fault that could occur in RTree when given a corrupt
database.
FossilOrigin-Name:
ed29fe973e6cbf291eff6fc582aeb34556ea4f8df105ec61b361e4cdda017e62
dan [Tue, 17 Mar 2026 11:26:57 +0000 (11:26 +0000)]
Fix display of P4_INDEX values in EXPLAIN output.
FossilOrigin-Name:
e717017f0213441da2ef8a9e1f1e88ebfdefa26fc4773711968417c0bd6ebe5f
dan [Tue, 17 Mar 2026 11:22:51 +0000 (11:22 +0000)]
Fix compiler warning an inefficiency introduced by previous commit.
FossilOrigin-Name:
03058d73d3a88ab30e874b4231cc5b263b874a577f8bf5189a452d7376e25a47
drh [Tue, 17 Mar 2026 11:19:16 +0000 (11:19 +0000)]
Typo fix in sqlite3Multiply128(): The datatype should be *unsigned*.
FossilOrigin-Name:
b459f6ff63325f71d4056dad2ebb536e0d414c973f3c6e167e8f67e94e6f0e2d
dan [Tue, 17 Mar 2026 11:17:54 +0000 (11:17 +0000)]
Change the sqlite3VdbeFindDeleteKey() routine so that all index fields that are not expressions or virtual columns must match the table for the delete to succeed.
FossilOrigin-Name:
eccd9fcfa7e34ddcdeb671544c6afac7aa0d4665c5e1df7c8e53c41387ed0386
drh [Tue, 17 Mar 2026 10:19:11 +0000 (10:19 +0000)]
drh [Tue, 17 Mar 2026 09:53:02 +0000 (09:53 +0000)]
Merge trunk enhancements into the idxdelete-tolerance branch
FossilOrigin-Name:
5f5ab3eb3618b6a2799355df50bfdf94121161f7cadba6253963036d9f284f08
drh [Tue, 17 Mar 2026 09:49:07 +0000 (09:49 +0000)]
Enhance text→float conversions for exact rounding in all cases.
FossilOrigin-Name:
704ddfd0df57c2b137af88264df20a540e3f8f114a58ae5e31b40ab8259bb63e
drh [Tue, 17 Mar 2026 09:45:47 +0000 (09:45 +0000)]
Include the float-point table generator utility in the tools directory.
FossilOrigin-Name:
4ab10b251d870af8297b9e505452393f6000f83784c822ff128e7aec06f8c72f
drh [Tue, 17 Mar 2026 09:18:36 +0000 (09:18 +0000)]
Reorder bounds checking in sqlite3Fp10Convert2()
FossilOrigin-Name:
23ad656edb3a63e7e6602770e1f2c4a5ef1f3d41565e7f13408b5305619dfa3d
dan [Mon, 16 Mar 2026 19:14:07 +0000 (19:14 +0000)]
dan [Mon, 16 Mar 2026 16:44:14 +0000 (16:44 +0000)]
dan [Mon, 16 Mar 2026 16:21:43 +0000 (16:21 +0000)]
If OP_IdxDelete cannot find an index entry to delete, first search 10 entries in either direction of where the entry should be in the index. If that fails, search the entire index for an entry with matching PK fields.
FossilOrigin-Name:
2cb9f4e4178549144acd82e317a1646e71c9281ac9fc4aa26bf129f1068ded45
dan [Mon, 16 Mar 2026 15:49:58 +0000 (15:49 +0000)]
Fix a problem with the find-delete-key method on this branch.
FossilOrigin-Name:
6f49b5ecad5d924999d045a1ade93d95e731182be1781aefa5bc763b6202e9c3
drh [Mon, 16 Mar 2026 15:35:41 +0000 (15:35 +0000)]
Rework the ".indexes" command of the CLI. (1) The PATTERN now matches
the name of the index itself, not the name of the table containing
the index, thus making the pattern actually useful. (2) System-generated
indexes (for UNIQUE constraints and similar) are omitted unless
the -a|-all or --sys options are added. (3) The --expr option causes
only expression indexes to be shown.
FossilOrigin-Name:
13e2cad810bfd59a9e18eb38bda1241715b76756ffec7d617e9ce99b89f19284
dan [Mon, 16 Mar 2026 15:16:13 +0000 (15:16 +0000)]
Make OP_IdxDelete tolerant of small variations in index key values.
FossilOrigin-Name:
c4b0081f08bd0458dbcf269b43a4051941eec8067393aa8e6810d4b8422ce44a
dan [Mon, 16 Mar 2026 11:14:26 +0000 (11:14 +0000)]
Properly fix temp triggers created as part of FK processing to their schemas. Otherwise they may become confused by similarly named child tables in other attached databases. Fix for forum post [forum:
636bd0180a |
636bd0180a ].
FossilOrigin-Name:
80bc5bc07e221f837c28066f0a438f11c8ab6be4c8ba93615439eb1667967003
drh [Mon, 16 Mar 2026 09:40:12 +0000 (09:40 +0000)]
Improve accuracy of text→floating-point conversions by moving
from 64-bit to 96-bit approximations to powers of ten.
FossilOrigin-Name:
a19c0785dcfb9fb74963c45b161b12ac8f4379e2b990f6c5de0d7b959c5be98d
stephan [Sat, 14 Mar 2026 16:30:13 +0000 (16:30 +0000)]
Add a missing return for the invalid arguments error case in sqlite3_test_control_fault_install. No current scripts trigger this error.
FossilOrigin-Name:
dc78d258745a1350685b37da56f0a2ac2e437b422415d634522dc61d340d06eb
drh [Fri, 13 Mar 2026 15:03:55 +0000 (15:03 +0000)]
Changes some legacy testing targets in the makefiles into aliases for
"devtest" and "releasetest"
FossilOrigin-Name:
4c54f22f7abbf5403e554fbf3dd70ddee97352d7de1f7fe19f540bdf681f4e75
stephan [Thu, 12 Mar 2026 08:33:14 +0000 (08:33 +0000)]
Update the canonical JimTcl home page link (it was moved earlier today).
FossilOrigin-Name:
568573f872733bf32c2fde6a3a43100bdac17fc762e5c9a6d7a47b988fdcea4e
stephan [Wed, 11 Mar 2026 15:17:14 +0000 (15:17 +0000)]
Replace several comment-based switch-fall-through notices with attribute based ones, as suggested in [forum:
b6ab8dc547 |forum post
b6ab8dc547 ].
FossilOrigin-Name:
2b0209a3bd3fb19af424386dcd13ff49a0c86edfd5d283fd5e5c42c266872100
drh [Wed, 11 Mar 2026 14:43:29 +0000 (14:43 +0000)]
drh [Tue, 10 Mar 2026 22:43:39 +0000 (22:43 +0000)]
drh [Tue, 10 Mar 2026 21:01:59 +0000 (21:01 +0000)]
Fix the behavior dot-commands that appear as command line arguments to the
CLI so that their effect persists into subsequent commands on the command
line. This fix also improves error messages caused by command line
arguments.
[forum:/forumpost/2026-03-10T19:26:06z|Forum post 2026-03-10T19:26:06z].
FossilOrigin-Name:
ff084ae341eab5c4ce9403defee03adc448c05f77648a954f0942a38f640080b