1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-05 15:55:57 +03:00
Commit Graph

9754 Commits

Author SHA1 Message Date
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
dan
c978e390e6 Fix release test errors on winrt.
FossilOrigin-Name: 39bebd50b80ceee321b1da837c72a20cdb26f06e4b726f23e3ddac877d9400a7
2024-12-16 19:31:30 +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
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
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
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
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
dan
b9be2f6396 Fix filectrl.test so that it works with winrt builds.
FossilOrigin-Name: 70b0cfb0493e3fe56645648b462cb035d0d791f95b2913b7622f08c1090338c0
2024-12-04 19:32:24 +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
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
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
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
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
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
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
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
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
dan
c87d7bede0 Fix a problem with window functions min() and max() when used with a FILTER clause. Forum post [forum:/forumpost/e9126d554a | e9126d554a].
FossilOrigin-Name: d15fb0f75e64bbfdb8df0c0d0358aafbbd7d5e2048df676dafe1abd5e9917f2a
2024-11-14 14:38:16 +00:00
drh
31c160ab8f Add the test/fork-test.c test program.
FossilOrigin-Name: 0611e2b0cf3f33c28cc9ff6c5da7ebba2033bcbda5b1072a30021a3e1fb4e738
2024-11-13 16:08:02 +00:00
dan
a864ac1c5a Fix a case in fts3 where a corrupt database record was not being handled correctly.
FossilOrigin-Name: cbcb53759b9510379e2159d14b73c9746e611df550b0bd05887bd4a480b519a8
2024-11-09 17:54:51 +00:00
drh
4ddeccfc15 Increase the minimum SQLITE_LENGTH_LIMIT from 1 to 30 to avoid problems doing
simple things like converting strings into integers.  See also
[8fd5b8ec4ab9b555].

FossilOrigin-Name: 6aa01707af4bd96f0f173f9e87f2398be7e6f246f59baa117092849a626b2d61
2024-11-08 20:57:45 +00:00
dan
d42855e404 Fix an OOB write that could occur in fts3 when dealing with corrupt database records.
FossilOrigin-Name: 108863ec7998e0a35569e3c6534b538f00d4ef87fdb316bd6a4a9a7a272bba47
2024-11-07 17:34:53 +00:00
drh
19d87fa848 Fix an FTS3 corruption test case that depends on the specific pseudo-random
byte sequence generated by sqlite3_randomness(), which is different on
big-endian platforms than it is on little-endian platforms.

FossilOrigin-Name: 6216bfcb74273b7893735e265d3f04d1362fa625cd60cebccb866ce7d6c50e01
2024-11-06 19:19:49 +00:00
dan
19c4fa92dd Have the xBestIndex method of the generate_series virtual table ignore contraints on the "value" column with usable=0.
FossilOrigin-Name: f5113a2ef84831ad2da723fa7e29e0d575e74e10585741ff51db8c2e37332cd2
2024-11-05 18:25:32 +00:00
drh
2139c35da0 Ensure that the one-line running status output from testrunner.tcl does not
exceed the 80-char line width of a standard terminal.

FossilOrigin-Name: 1eae0f9ed3c4530d117a8efc4adaf0b2cc422083f0407830a1a6d2a5b970fa1a
2024-11-05 11:59:45 +00:00
drh
bc60d7bee9 Ensure that the database encoding is detected before the code generator gets
too far down into byte-code generation and execution, but not so early that
it interferes with initialization.
[forum:/forumpost/bc75a4d20b756044|Forum thread bc75a4d20b756044].

FossilOrigin-Name: af7173a10ec6a4ab465207c1ee20393e8b5f06604c0f3b2fdc19e52c2fc013d5
2024-11-04 19:08:53 +00:00
drh
bce0d04c98 In testrunner.tcl, only show the ETC on the status line if it will fit within
the 80-character line limit.

FossilOrigin-Name: 45a3213d23f4691732ba2eb54d440355ce5757aad4cec8eb92f53b4bd7e7f5cd
2024-10-31 18:29:55 +00:00
drh
bc4df6079c Remove the never-used and never-documented and long-ago deprecated
user-authentication feature option.

FossilOrigin-Name: 3a3f7bf4307c27e56546e51da06ecc9a262cdf155fda2dd359aa2326d207a147
2024-10-28 17:27:15 +00:00
drh
42516b2ef9 Omit the antiquated and long-unsupport async extension since it has been
superseded by WAL mode for over a decade.

FossilOrigin-Name: 10b1b86821bfc21377e7ccceb31146ab01aa6eaf418b85a204abcab5b793958e
2024-10-28 15:38:53 +00:00
drh
0064c43a88 Improvements to the PATTERN option of the "testrunner.tcl joblist" command.
The pattern match is case insensitive and applies to the state and displaytype
in addition to displayname.

FossilOrigin-Name: 63a8f60f98115d4ee6e40de3ae775770aba76e19df6ddde68bccb7967b0200dc
2024-10-27 10:48:06 +00:00
stephan
ccb1211b54 Patch bundle accumulated via /chat: add missing --enable/disable-shared flag to configure script and update testrunner.tcl for other configure script flag changes.
FossilOrigin-Name: 32fc9c3f62601684b4ded783a79ebf817d093588c87ece02b449c3542881b65a
2024-10-26 16:03:04 +00:00
drh
8ce6d66986 The "WITHOUT_JIMSH=1" option on the nmake command-line forces the use of
standard TCL for building, instead of jimsh0.

FossilOrigin-Name: 9f861f66e238b62e04d640ee98bac86b9b532a55d62c92ae0154bd67ee01ec75
2024-10-24 19:56:42 +00:00
drh
4f237f8def Fix harmless compiler warnings. One of the warnings was code that
deliberately committed memory errors to test the systems ability to cope.
But compilers don't allow that any more, so we'll have to leave that
capability untested.

FossilOrigin-Name: 7e7b3b2edbb580c9ac14f21e5caa8f2f6b171d9a7ce6cb336dc0c8db76da7e8c
2024-10-24 15:36:29 +00:00
dan
3dbddc5507 Changes to EXPLAIN QUERY PLAN to identify covering index plan that use indexes on expressions.
FossilOrigin-Name: 29fb4919b6118b3b9ae411ec2ed5b59db7fae281909501c5fa238221ba635db5
2024-10-22 20:16:41 +00:00
drh
f896e2bd5b Add the "halt" command to testrunner.tcl
FossilOrigin-Name: 2cc25d5dbbc729f3b6deb8c6a45b975c535b4d20ad240e4ec0c85b3733a170ed
2024-10-22 20:09:18 +00:00
drh
0d7ede8d1c In testrunner.tcl: Better estimates for ETC (Estimated Time to Completion).
Show the ETC even for the single-line status reports.

FossilOrigin-Name: 2a2f5f4e378338951cc2030ffbacd678e6a6eab142e39ee632c61be42345b092
2024-10-21 22:45:59 +00:00
dan
e2f294a1e5 Add a case to testrunner.tcl so that mdevtest can run on openbsd.
FossilOrigin-Name: e904b37fb2621e6bd5e761f3ecb75adb34350f2d1d7b229e655e74bc6a2f5321
2024-10-21 14:24:27 +00:00