drh
61978d90eb
Do not allow surplus SQL text to come after the CREATE statement in the
...
sqlite_schema.sql field. Any such text is flagged as an error. However,
the schema will still work if PRAGMA writable_schema is engaged.
FossilOrigin-Name: e21c5bc59ae6617362e085711ddb4436db5cc4ad4b740873850a4aecdb91f4f2
2026-10-02 19:56:59 +00:00
dan
cb5651e46d
Fix integrity-check fails that would occur if the database contained a contentless fts4 table. Report [bugs:/info/2026-10-02T12:22:03Z | 2026-10-02T12:22:03Z].
...
FossilOrigin-Name: ca8de9a30484d26739a09c972c525a1ae6edcce41b0f3c612805836b894c7a26
2026-10-02 14:33:50 +00:00
dan
e32fbe0c23
Import vec1 sources into directory ext/vec1/ of this project.
...
FossilOrigin-Name: 3a0876d973868be7b6f4156a434cd09098c7ab1abdc7f0ef4f3d12a03de68b24
2026-09-30 14:49:16 +00:00
drh
34615b9c1f
Reset the nullRow flag on the pseudo-cursor on each iteration of the loop
...
when the RHS of a LEFT JOIN is a multi-row VALUES clause. Fix for
[bugs:/info/2026-09-29T00:41:09Z|Bug 2026-09-29T00:41:09Z]. Problem
introduced by check-in [a120c9235f125e05] with a missed opportunity to
fix the problem at check-in [8c0f69e0e4ae0a44].
FossilOrigin-Name: 8e59d3c0a428ff12ea852c7a9f15b6b7b4ca0da55708f3d303b2e88818a17476
2026-09-29 11:52:00 +00:00
drh
1059bc8eac
Fix a duplicate test case identifier label in speedtest1.c.
...
FossilOrigin-Name: 6f7db1d7313892260298aa78cfa1a3d91e5e55aebd16862d77835c5e070857c5
2026-09-28 16:30:59 +00:00
dan
00830b2819
Fix some cases where fts3 integrity-check was not detecting corrupt databases. Report [bugs:/info/2026-09-25T11:18:11Z | 2026-09-25T11:18:11Z].
...
FossilOrigin-Name: 9b23f99212f49587c5f0b025e90fdd2e844437fbb76fc11c26062df7bcff765c
2026-09-25 14:55:16 +00:00
dan
2503dc6182
Avoid marking little-known extension function next_char() as SQLITE_INNOCUOUS by default.
...
FossilOrigin-Name: 481a1df638aeef163022523f8de590c265f64d078eb070cf262995e8ecb0f690
2026-09-24 17:09:56 +00:00
dan
4d577dfb33
Fix an off-by-one error in sqlite3GetUInt32(). The only user-visible effect of fixing this problem is that the error message emitted for a corrupt database has changed in one obscure case.
...
FossilOrigin-Name: 7f0149c9696ed8c804fb1f6d4e78f4e887e465015795e03bae0f8ea648d515b4
2026-09-24 15:34:05 +00:00
drh
28c6f996b0
Fix test case inaccuracy introduced by [4f4ca57309c82d9e].
...
FossilOrigin-Name: 1b097b30ac1009073bec72f67b3bcbe55478795149017ed3c72a32ab652bf4f7
2026-09-24 10:37:53 +00:00
drh
4b495f91a9
In date/time functions, the hour can be 24 as long as the minutes and
...
seconds are zero.
[bugs:/info/2026-09-23T02:44:48Z|Bug 2026-09-23T02:44:48Z]
FossilOrigin-Name: 52eec02592f9d0d2d4282c20cc0872215c8d88e17f1a3e34d2ccab48119f7c42
2026-09-24 00:18:35 +00:00
drh
9da2d2374a
The --escape mode for CSV should default to "off".
...
[bugs:/info/2026-09-23T16:25:07Z|Bug 2026-09-23T16:25:07Z]
FossilOrigin-Name: c356641fadf591bcf312ae9657ddc84e483a06aa068eb2d3021467435cbad0c1
2026-09-23 21:04:57 +00:00
drh
64c8a0f2e9
Minor adjustment to [987ba5a3dc5f2a22] to deal with a corner case involving
...
the maximum integer.
[bugs:/info/2026-09-23T03:07:00Z|Bug 2026-09-23T03:07:00Z].
FossilOrigin-Name: 4a66e328a080b7719e5f76283ae0502f0aaed1b4fa35339c0160b91c3189de5b
2026-09-23 12:27:03 +00:00
drh
d884a3c7c9
An attempt to improve the handling of rowid lookups using very
...
large floating point values.
FossilOrigin-Name: 881da860d6048106a50cfec463bd64ee2773baa996129dab369939252f8fcf48
2026-09-23 11:37:04 +00:00
dan
681d217d49
Do not allow the arguments of table-valued-functions to the left of a LEFT JOIN to refer to tables to the right of the LEFT JOIN. Fix for [bugs:/info/2026-09-20T09:57:48Z | 2026-09-20T09:57:48Z].
...
FossilOrigin-Name: e9e341013f770a82a60ca947f1b3471370fc2ad9f7feb9dd5f86f61d9d8e3315
2026-09-23 11:12:41 +00:00
drh
c907770214
Improved capture and reporting of errors by the CLI.
...
[bugs:/info/2026-09-21T02:55:55Z|Bug 2026-09-21T02:55:55Z]
FossilOrigin-Name: 6698a7e18727b08748eb875c08c93a23afa391d3642e7610a87e86f7528a04bc
2026-09-22 17:12:56 +00:00
dan
6c6d1c71eb
Fix calculation of the virtual table dbstat.pgoffset field for overflow pages. Report [bugs:/info/2026-09-22T01:43:42Z | 2026-09-22T01:43:42Z].
...
FossilOrigin-Name: 4f4ca57309c82d9e2e090cf3accb83d4ee2868de2a7626d7afc30ff4c8351695
2026-09-22 10:30:05 +00:00
dan
bed690d6f9
Do not allow the arguments of table-valued-functions to the left of a LEFT JOIN to refer to tables to the right of the LEFT JOIN. Fix for [bugs:/info/2026-09-20T09:57:48Z | 2026-09-20T09:57:48Z].
...
FossilOrigin-Name: c6b035ceffb7771e5fa9b1b1efc1544b0d7eea6d0576f257c836c82c4122d58d
2026-09-21 15:45:19 +00:00
dan
5f8b6a782d
Fix truncation of 64-bit integer values passed to the fts3 snippet() function. Report [bugs:/info/2026-09-21T02:41:49Z | 2026-09-21T02:41:49Z].
...
FossilOrigin-Name: b0919c9687f01240c89171e1607816b603450e5bed37c468860298b2ccc11a81
2026-09-21 11:14:14 +00:00
drh
93d6a90fe9
Adjustments to the substr() function so that it can accommodate
...
ridiculous values for the second argument.
[bugs:/info/2026-09-20T18:42:27Z|Bug 2026-09-20T18:42:27Z]
FossilOrigin-Name: aadf42e021fc55d457836c7cda68f3d22dcaae72a7bbc105c3c727b3eb5c4657
2026-09-20 20:17:58 +00:00
drh
30fbf300af
Fix test cases added by [f847298c8d424071] so that they work on
...
all configurations.
FossilOrigin-Name: 977e0faac735409fd06d61851a30686b471bcfc3f1dcfba2debe2b4a3d42b5e8
2026-09-19 11:07:26 +00:00
drh
ac2685b071
Fix new test cases added by [c77ff6089de242d8] so that they work
...
on all configurations.
FossilOrigin-Name: 78d3370d36fb8872de1ed853f3a479273b54d2cff9fdfe83db963f4da9c7f999
2026-09-19 10:58:12 +00:00
drh
b8c29c92a5
Ensure that the comments generated by the ".schema" command in the CLI
...
are not terminated early by rogue SQL.
FossilOrigin-Name: e6eef2cb8fff278cfef2b8898e12d641df22c435d70800d0f031ae740cc88b7e
2026-09-19 09:24:10 +00:00
stephan
9073f828a3
Cygwin portability fixes contributed by Jan Nijtmans, including the un-exporting of some non-public-APIs which need to be reviewed closely. One test (delete_db.test) is failing but that specific failure has been a recurring theme in this environment.
...
FossilOrigin-Name: fe484c8dbc4829508616a1db1bd38a8e451409bddcc20b593fbf51a6ab1a1b00
2026-09-15 08:37:47 +00:00
drh
1eca07ed73
Do not discard INDEXED BY or NOT INDEXED from a parenthesized term
...
of the FROM clause.
[bugs:/info/2026-09-10T20:38:13Z|Bug 2026-09-10T20:38:13Z].
FossilOrigin-Name: e308b0fce47e184860564f0535174017eb7d5d7efc4f86dd1eb8d234f75e4d08
2026-09-10 23:54:06 +00:00
drh
134f69359c
In PRAGMA integrity_check, double the space available for checking that
...
every byte of a page is used only once as a safety margin to deal with
unforeseen kinds of database corruption.
FossilOrigin-Name: 0c173d54b1bab44748f0010ec7aa5bd79891aa9aaea91d2996c6f0d3f859d1a8
2026-09-10 20:04:18 +00:00
drh
220b580fc7
Fix minor issues with the delta_parse() table-valued function in the
...
fossildelta.c extension. Add test cases for the fossildelta.c extension.
[bugs:/info/2026-09-09T10:29:35Z|Bug 2026-09-09T10:29:35Z] and
[bugs:/info/2026-09-09T10:55:54Z|Bug 2026-09-09T10:55:54Z].
FossilOrigin-Name: 737ab94632c7745d3fd1f82894a1c8174db59350a33329660681398dd604c4d0
2026-09-09 13:49:42 +00:00
drh
e137e97af6
Improved orderly-shutdown in testrunner. Windows lets running jobs complete.
...
Unix just invokes exit and lets the OS deal with cleaning up the mess.
FossilOrigin-Name: ce822e8dc137128a6c495600205c6659a9cd2ba6ba188d86567ed97c04b7aeea
2026-09-04 14:02:05 +00:00
drh
55f0206dca
Remove an intentional error used for testing that was accidently left in
...
the previous check-in.
FossilOrigin-Name: 87f9d70d9e3fae2eda2650d9f58fd587c5f7b9cf7f7d13d47ebd11053ce63a25
2026-09-04 13:43:43 +00:00
drh
b5e3cf0655
The testrunner.tcl script is enhanced so that --stop-on-error does not
...
exit immediately, but instead marks all pending tasks as "halt" so
that no new tasks are scheduled, but allows "running" tasks to continue
on to completion, as an immediate halt can cause hung processes on Windows.
Also, in Makefile.msc, the "test" target now includes --stop-on-error.
FossilOrigin-Name: 0fba9b52b41a5fade0d162c947712669653c4619c89a79800017703e978d8a24
2026-09-04 13:37:51 +00:00
drh
61974281e4
Omit a minro optimization that fails in two ways: (1) it does not actually
...
make the code run any faster, and (2) it allows an incorrect type
coercion on a GROUP BY query where there is a subquery as one of the
result set columns.
[bugs:/info/2026-09-03T02:29:56Z|Bug 2026-09-03T02:29:56Z].
FossilOrigin-Name: 5d9e5cddec144492df866bf0ea1808b1c099be92551cbb2433a0f3a0ff119023
2026-09-03 16:32:43 +00:00
stephan
62c805e36c
Cygwin portability patches from Jan Nijtmans.
...
FossilOrigin-Name: c76e64373cca884ab47ea24f8df3cedcdc823ccf3484e9b78715154f6d1ea66f
2026-09-01 17:50:43 +00:00
dan
09a5513008
Within a checkpoint, avoid allocating memory for *-shm pages that will not be processed as they have already been completely checkpointed.
...
FossilOrigin-Name: 53a9312cc923073066d697a0038e647d83a17ad0730dd91033e8fe7435fcc8df
2026-09-01 17:44:43 +00:00
stephan
be3dc6699e
Cygwin portability patches sent off-list from from Jan Nijtmans.
...
FossilOrigin-Name: f8306cd54d28ceda631ce9053d94df2bb28cffccce2a7e72d088b4b1f2a0d3ed
2026-09-01 16:26:50 +00:00
drh
ff622746c4
Make sure the extra sorting cursor used by SQLITE_ENABLE_SORTER_REFERENCES
...
is initialized even if the corresponding table is empty.
[bugs:/info/2026-09-01T01:34:02Z|Bug 2026-09-01T01:34:02Z]
FossilOrigin-Name: a418005ba503e65944808a5a8397359210293bcde4c5ddd8800c66ea5c103292
2026-09-01 12:36:03 +00:00
dan
99b322eca9
Fix an SQLITE_CORRUPT error that could occur with an incremental vacuum database if many tables were created and dropped within a single wal-mode transaction.
...
FossilOrigin-Name: f847298c8d4240711e4e12f256941dcf3d5978c53da3a6836cdc675c3468c179
2026-08-31 18:15:11 +00:00
dan
a5ae4bd098
Return an error if the arguments of a table-valued function that is on the left of a RIGHT JOIN depend on tables to the right of it in the FROM clause. Report [bugs:/info/2026-08-31T08:07:08Z | 2026-08-31T08:07:08Z].
...
FossilOrigin-Name: 43c8d7c41c3d8a2602ea0a7759c6b85eeca8640bc85024746e77eb58648f73a6
2026-08-31 15:02:19 +00:00
dan
aba9f8ef69
Fix a bad interaction between the skip-ahead DISTINCT optimization and "ORDER BY ... NULLS FIRST/LAST" clauses. Report [bugs:/info/2026-08-30T23:22:05Z | 2026-08-30T23:22:05Z].
...
FossilOrigin-Name: 7bfd3d6f80316f3d129a1e8c798be0a0efa8fbeb69d6958c1c2af9f4f6945a9e
2026-08-31 11:04:03 +00:00
drh
d92acf1afe
Follow-up to check-in [2cb349e5b02aa549] to help indexes on negative
...
DEFAULT integer values get stored more efficiently.
FossilOrigin-Name: c77ff6089de242d8cb7487ea36b094e403c9ed1a48a8ee713d64a0b87b334369
2026-08-29 20:27:09 +00:00
drh
4213c5cc4f
Fix two test cases that do not work when optimizations are disabled.
...
FossilOrigin-Name: e78b72fadfe4c263f5af56aa887891a49055edfccda9397267804b3aaf4afd53
2026-08-25 17:08:19 +00:00
drh
46c7844d76
Make the optimization of UNION with ORDER BY and LIMIT sound by restricing
...
it to LIMIT 1.
FossilOrigin-Name: 7e6e665d05e5d5895bac60d68b49bdf28e2ec6d8dc4ef8c18703f2e6d4f8870f
2026-08-25 16:29:27 +00:00
drh
69785dee50
Merge the latest trunk enhancements into the union-to-union-all branch.
...
FossilOrigin-Name: c58631b26ad6ee39d8db2700a26413249fd88d137c3a7944bad7af07cd7fe121
2026-08-25 15:49:27 +00:00
dan
11d653bbd3
When an expression that may have a subtype from the WHERE clause of a partial index is substituted for a column value, clear the subtype before the value is used. Report [bugs:/info/2026-08-25T05:36:33Z | 2026-08-25T05:36:33Z].
...
FossilOrigin-Name: e6ae6fbd5c0b33ae6950a5a45fc0631cd5e0a437eb672f0a2ec6d288596f1be2
2026-08-25 14:26:16 +00:00
dan
b1df30c735
Fix test file default.test so that it works with SQLITE_OMIT_ALTERTABLE builds.
...
FossilOrigin-Name: ff0e3dd09486dad093b8392e088d17f78e4445f68baebf63d24ad232d45e69b3
2026-08-25 11:50:11 +00:00
dan
6121d9909d
Avoid coding WHERE constraints too early when using the OR-optimization with OUTER join queries. Report [bugs:/info/2026-08-25T02:08:22Z | 2026-08-25T02:08:22Z].
...
FossilOrigin-Name: a3d15e4937c8f767db046615994f53618be0a407dee09a1989a6382e9b945574
2026-08-25 11:42:00 +00:00
drh
eb13d2232e
Change error message text in the previous check-in to not have initial caps,
...
for consistency with other error messages.
FossilOrigin-Name: c4bd2ffcb7110d71bf1ec8114d65b57cbbad084851295adca754def847751464
2026-08-25 10:39:48 +00:00
dan
9ca4d3f61e
Prohibit using ALTER TABLE to add or drop, or rename to or from a rowid alias, unless the table is a WITHOUT ROWID table. Report [bugs:/info/2026-08-23T15:59:23Z | 2026-08-23T15:59:23Z].
...
FossilOrigin-Name: dfcff5be53c26b9a1728e485ac9c56d50be5ac9ce877fcae3965471469dc8a8d
2026-08-24 21:20:49 +00:00
dan
d6bae5ec97
Ensure that when a large integer value (too large to be losslessly converted to double) is specified as a default value for a column with REAL affinity, the real version of the value is stored in indexes. Report [bugs:/info/2026-08-23T15:39:59Z | 2026-08-23T15:39:59Z].
...
FossilOrigin-Name: 2cb349e5b02aa549518f2e17cbfc6b4841e5686dcfb828f243c87ff3006f4870
2026-08-24 14:40:43 +00:00
drh
221ad559b6
When generating code to evaluate a vector IN constraint where the RHS
...
of the IN operator is a subquery, if the removeUnindexableInClauseTerms()
subroutine changes the order of terms in the IN operator, then do not
allow the modified IN operator to reuse a previously generated evaluation
of the subquery.
[bugs:/info/2026-08-23T06:58:36Z|Bug 2026-08-23T06:58:36Z].
FossilOrigin-Name: 8ee92456eb21878c44732e9adaac64009133eb03c36a7390b42427d63ff4a340
2026-08-24 14:30:29 +00:00
dan
1934b305cd
Ensure that when a large integer value (too large to be losslessly converted to double) is specified as a default value for a column with REAL affinity, the real version of the value is stored in indexes. Report [bugs:/info/2026-08-23T15:39:59Z | 2026-08-23T15:39:59Z].
...
FossilOrigin-Name: c494b123f52506ab57edd3f4c317b882b270e13bd5798b6c8fbdf5eebbd4ed63
2026-08-24 14:22:19 +00:00
drh
85e7fd94d9
The optimization of disabling an ORDER BY term if it is constrained by
...
an equality comparison with a column from an outer query does not work
if there is an affinity mismatch between the two columns. This is a
follow-on to check-in [16aed5d0c63dcdc2] and a fix for
[bugs:/info/2026-08-23T01:02:14Z|Bug 2026-08-23T01:02:14Z].
FossilOrigin-Name: 383e42bc1096d6fe6a2a0a147da90a1bb0bfb37c78a3288bbacaaf9bf7ac17c4
2026-08-24 00:08:45 +00:00