drh
47996ea7c4
Add the sqlite3_value_encoding() interface.
...
FossilOrigin-Name: d6d449978245b4fa66c152132da468eea7977eab4d1fe53bb2fe3ef543d8030f
2022-10-12 12:49:29 +00:00
drh
c2777abc2d
Enhance the OP_IsType opcode so that it is slightly smaller and faster and
...
so that it works correctly with invalid serial-type codes 10 and 11.
FossilOrigin-Name: 846f863e0d55eb7e78c8d355bbbcd73e1946d0ba566c2cb31683cde5f4353d1b
2022-10-11 13:57:55 +00:00
drh
7d23d157bb
Improved the ability of the CLI to handle very long input lines.
...
Potentially a fix for the bug reported by
[forum:/forumpost/fa4bb2941a|forum post fa4bb2941a].
FossilOrigin-Name: d0e107ee00101f42b4c9bf372625311d04b83c96a4a9caacac866ea03d8e7fa4
2022-10-11 12:02:42 +00:00
drh
7747ffba47
Enhance the "PRAGMA integrity_check" statement so that it verifies datatype
...
constraints on non-STRICT tables: (1) Columns with TEXT affinity should not
contain numeric values, and (2) columns with NUMERIC affinity should not
contain TEXT values that could be converted into numbers.
FossilOrigin-Name: aa6e9086196248675b9e33dbfaad9ef67097432535896790f80d2470002978b1
2022-10-10 23:54:17 +00:00
drh
c9ef12f62b
Code clean-up for the integrity_check enhancement.
...
FossilOrigin-Name: a140173102febe9ef8064ee9b95bee489db54caba149e577d69e4d75161bf390
2022-10-10 21:21:04 +00:00
drh
db6940ab45
Fix corner-case bugs in the new integrity_check logic. All tests pass now.
...
FossilOrigin-Name: dbab9d52a842085da67f5d0b8e96c665adc16331accf380b4c234e9b05bdb7fb
2022-10-10 19:38:01 +00:00
drh
49d77ee642
An attempt to enhance PRAGMA integrity check so that it does data type
...
checking on non-STRICT tables. Specifically: (1) Columns with TEXT affinity
should not contain numeric values, and (2) columns with numeric affinity should
not contain text values that can be converted to numeric.
FossilOrigin-Name: 8b1e7f0524637728cebe81c7d3ff8ad8a5a55782eac6409b425dad538024f596
2022-10-10 18:25:05 +00:00
drh
005c9d8295
Improved detection of database corrupting when moving pages on an
...
autovacuumed database when creating a new btree.
dbsqlfuzz 9a55397eae13cec64aebf1fd35489c3a90bdaac5
FossilOrigin-Name: 327965bc71023d9380a9d6805062659108dab4bfcd386b7aba813754f270d33a
2022-10-10 12:02:53 +00:00
drh
211a1a7281
When casting an odd-length BLOB into a TEXT with encoding UTF16, omit the
...
last byte. dbsqlfuzz c5df68b5bbdf6c9f3c1851e41e88f49ac05c9969
FossilOrigin-Name: 1e2796b3741a4c0b966e6c01a7d62dea8de9d1f4bededea3d7ba7004dabc2ffe
2022-10-08 17:27:05 +00:00
dan
73c586bcbf
Fix a problem causing the seek-scan optimization to skip over valid rows that could occur when it is used with expressions of the form (a IN (?,?..) AND b >= ?). dbsqlfuzz ab1db6dc0efb04cba1cd3431ee6da4894fdc4520.
...
FossilOrigin-Name: 63d9efe277759d4daa29794846b60c6f55491496618f423f61468df72d0a4633
2022-10-07 18:57:15 +00:00
drh
8a2254fa1f
Improved tracing output for showing all registers used by the
...
OP_SeekGE opcode. This applies to debugging builds only.
FossilOrigin-Name: 0aa6dee7f72279114a47cbb69fdbda0b916a2c365f7a147946869f167bd018b7
2022-10-07 15:55:35 +00:00
dan
73ac958c74
Fix a problem that occurred when using a bloom filter to optimize an (ipk = ?) lookup in the case where the RHS of the expression is a TEXT value. First reported by [forum:/forumpost/f61a8b7053|forum post f61a8b7053].
...
FossilOrigin-Name: 8e14c351b29bb434ac4e2510681e95716424a73e340d39feff4919f0431c2e00
2022-10-06 14:10:11 +00:00
drh
2eca06141f
Attempt to clarify the operation of the xLock and xUnlock VFS I/O methods.
...
Assert() statements added to prove that they behave as the documentation says.
FossilOrigin-Name: 3efa811251d4510a074231a1e0b667783cc5f90777466b9dcae675cd9892b423
2022-10-04 14:50:46 +00:00
drh
a4b2f41938
Change the name of the autoconf-generated configuration file from "config.h"
...
to "sqlite_cfg.h" to work around a bug in a dependency checker, reported
in [https://twitter.com/josecastillo/status/1577136108097314816 |a tweet from Jose Castillo].
FossilOrigin-Name: 897e187cad981126fc5f6ea8e382e937825af10b0c9589b0a23b9fbaa4ca58b8
2022-10-04 10:35:10 +00:00
drh
16292a5e52
Adjust the --help output for speedtest1 to clarify that the argument to
...
the --cachesize option is in pages, not bytes.
FossilOrigin-Name: d7c2be6bdc3402e5a339d0f7b76d2c25f3a444dcbf54a77c1ccb790d1195a7cf
2022-10-03 15:22:59 +00:00
drh
277c7d3516
Copy all of the fiddle-opfs changes to speedtest1 into trunk.
...
FossilOrigin-Name: f3d31c9982cab517a3907a28c571225cee614ee78375c70eb2efb9a2b6b4b042
2022-10-03 13:56:52 +00:00
drh
3044e77b4a
Add the --vfs option to speedtest1.
...
FossilOrigin-Name: aeb884029ac1c68f0d7361dda0a545cff19ed265b608c1e329a1926397c5c8a3
2022-10-03 13:45:03 +00:00
stephan
65e6522f8f
Minor doc typo fix in sqlite.h.in.
...
FossilOrigin-Name: 372802aaa22a830bf498bb0d9561ae02b32e5e191c4d7d771ea152140f6685a1
2022-10-02 20:13:46 +00:00
drh
7d34b8d628
Performance optimization in sqlite3_prepare() (discovered while working
...
on the stmt-cache branch).
FossilOrigin-Name: cd494240cc6184bb028d1f1049086f57c0a71a43d7ed1405fd4205240e1b9e61
2022-10-01 20:27:29 +00:00
drh
7424aeff41
Replace the Parse.disableVtab field with Parse.prepFlags for increased
...
generality, a small size reduction, and a small performance increase.
FossilOrigin-Name: b7da0bcdf70e53ab1ec00a0694e17c7429e23bc6eb3f39b622d06a930aa2f6a3
2022-10-01 13:17:53 +00:00
drh
7bc6a818f0
Remove one of the NEVER() macros added by [5166acf3f0040459] because it
...
is reachable after all.
FossilOrigin-Name: bd8ae5febbb8d3122f1e2e09b9fcdd6ac20c075ae1cf60bcdbd36080f3736417
2022-09-30 22:40:57 +00:00
drh
1337a2291d
New test cases in fuzzdata8.db
...
FossilOrigin-Name: aa367a3c974041323edb759855f0b83803439ceef2846da2d73eadd80efeaac4
2022-09-30 20:59:09 +00:00
drh
2d3261fe86
Fix a bug in the demoDelete fix from [d76a301e22e05722].
...
FossilOrigin-Name: 7e761a02530ffbb055a766eb6c995f11fc2adbabb9a52502124f672fdcff0d10
2022-09-30 20:53:36 +00:00
drh
0a803bd984
Add NEVER() to two error-detection tests that were made unreachable by
...
the previous check-in.
FossilOrigin-Name: 5166acf3f00404597e77910aee88920ab833af8447766f50bf4f70525606cf95
2022-09-30 20:48:22 +00:00
dan
ad658b2d82
Better handle a case of database corruption where a b-tree page is one of its own ancestor pages.
...
FossilOrigin-Name: a24e46804893a7e6e8f3130abca882f9a3aa3b7b2b82aa39a0a20856172766d5
2022-09-30 20:15:21 +00:00
drh
cb57716c65
Improvements to the "demoDelete" method in the demovfs, suggested by
...
[forum:/forumpost/cad18961c2|forum post cad18961c2].
FossilOrigin-Name: d76a301e22e0572262917dfe9557a5051339a65416a473dd2d9989a49975403e
2022-09-30 14:35:18 +00:00
drh
31474ce57e
Fix misuse of the sqlite3_set_auxdata() interface in the ICU extension.
...
FossilOrigin-Name: f25cf63471cbed1edb27591e57fead62550d4046dbdcb61312288f0f6f24c646
2022-09-28 19:14:01 +00:00
drh
5d48e0cdc5
Provide the SQLITE_MAX_ALLOCATION_SIZE compile-time option for limiting the
...
maximum memory allocation size.
FossilOrigin-Name: 584de6a996c78b8e41bdfcd05a8e2a3844664c6b4efedb5883c8b8af388462b5
2022-09-27 16:35:06 +00:00
drh
6319a8003c
Make the legacy FTS3 code more robust against integer overflow during
...
memory allocation.
FossilOrigin-Name: 5517bc50988b5339c2fd071b29de1b5ca03037b0b635c3b112cf7108fab54d5f
2022-09-27 01:53:05 +00:00
drh
80cf891792
Enhance defensive mode so that it disallows CREATE TRIGGER statements if the
...
statements within the trigger attempt to write on a shadow table.
FossilOrigin-Name: 3283bbd12a60f472ed03cb7c6209a605a3bf9f3d9083371e17840b56e8b3f559
2022-09-27 00:56:45 +00:00
drh
f333370e1f
Reduced and improved comments on the constraintCompatibleWithOuterJoin()
...
function.
FossilOrigin-Name: 38aaf26e082bd95df6b64df43e1772fe6e20c4eb71307dcd97559cac7f11f8f1
2022-09-21 18:21:31 +00:00
drh
2897b88f9e
The RIGHT JOIN logic added to version 3.39.0 added a new restriction on the
...
query flattener which resulted in a performance regression for some queries,
as documented by [forum:/forumpost/96b9e5709cf47cda|forum post 96b9e5709cf47cda].
This change removes that restriction (thus restoring performance) and fixes the
problem that RIGHT JOIN was having in a different way.
FossilOrigin-Name: 501609eddf2a46d51e8cd56477a22d4df142a166e78fe4322c0db11d1eed6687
2022-09-21 09:54:41 +00:00
drh
faaacd3fbb
Break out the decision of whether or not a constraint term is usable by
...
an outer join into a subroutine: constraintCompatibleWithOuterJoin().
FossilOrigin-Name: c7fbc9b0453050e2746af27e3a11e0c3701bef8c56da8e19173242c6ea3aff8b
2022-09-21 00:16:59 +00:00
drh
0f51aa3972
Do not allow EP_InnerON terms to be used on a outer join.
...
FossilOrigin-Name: f47aa745690c018800243bf76930b2499ff4537411c4e27b4b16ba3854cc2bf8
2022-09-20 22:19:13 +00:00
drh
0cc6f78bcf
Add new test cases that (current) get an incorrect answer.
...
FossilOrigin-Name: fe5c37736444e397ace387b761ec2491229785d7a437f3f60232aedf9d1f00ec
2022-09-20 21:07:52 +00:00
drh
4c5c941b6e
New test cases for query flattening when there are ON clauses and outer joins.
...
FossilOrigin-Name: db55387b1972bc7bc6855bd3497af744a111e7d28d09893cd985fbb01be41bcc
2022-09-20 19:45:04 +00:00
drh
8b9a3d1fc8
Modify the OP_IfNotOpen opcode so that the jump is taken if the cursor is open
...
but was previously set to a NULL row using OP_NullRow.
FossilOrigin-Name: 1292d68caa7086610ddda343f3852e63de8da1eb66536ee4716b6529f5a31bc6
2022-09-20 19:22:17 +00:00
drh
5a0771a1f4
Remove code that has been previously commented out.
...
FossilOrigin-Name: 852b385a5de622aa32026824210d4bd23db52a4a8a697b83d22d6000edeba487
2022-09-20 18:18:00 +00:00
drh
a5f8c42c98
Merge the fuzzcheck fix from trunk into the flattener improvement branch.
...
FossilOrigin-Name: 930a8c1561d0d5dc70dc5378edac77f79ac59ab6569b561de3dfb02f160c38c5
2022-09-20 17:43:40 +00:00
drh
703c208d30
Update the fuzz invariant checker to conform to the latest changes in
...
dbsqlfuzz.
FossilOrigin-Name: 8d8c124349d2a25200ace9a60d76751594b722468ad0c39d927a5d2c6e2464e0
2022-09-20 17:21:54 +00:00
drh
40c9becc81
Is the query flattener restriction 29 (do not allow both EP_InnerON and
...
EP_OuterON constraints on the same FROM clause term) really necessary? This
branch explores what happens if we omit that restriction. This is an effort
to address the performance regression reported by
[forum:/forumpost/96b9e5709cf47cda|forum post 96b9e5709cf47cda] that is caused
by flattener restriction 29.
FossilOrigin-Name: 19270577ad1d08c9e6e5f0600396b8a1ccda9df1e67a0df845aee6b60437f379
2022-09-20 16:57:49 +00:00
drh
b22b493338
Clarify comments that describe query flattener restrictions associated with
...
outer joins. No code changes.
FossilOrigin-Name: 2647d73bb1876d01851f52cb3fd6af08a962ab336b6d51c160d27b1baf94f75f
2022-09-19 19:25:15 +00:00
drh
316cd40122
Fix a minor comment typo. No changes to code or documentation.
...
FossilOrigin-Name: 8032db4ade66f70a102abb9d3a49e20620e204c45ad7a954a49d20403985bf07
2022-09-19 17:41:59 +00:00
drh
bcdb4cc71b
Remove a NEVER macro in defragmentPage() that dbsqlfuzz discovered can be
...
true. crash-32d9312f145cdce41613573f6431d9a3e439e3d7
FossilOrigin-Name: 90403759e1cf30f7c11fa8170d6df59a0dd138e1de59d2b60bec7ba15d74f67c
2022-09-18 17:59:28 +00:00
drh
3e4e697d1c
New run-time options to the speed-check.sh script.
...
FossilOrigin-Name: ff46bc9d2a844dde9dafa157114f4d9ee157205ca5c08ed9ee32f018de310e62
2022-09-12 16:07:24 +00:00
mistachkin
bdb6368d72
Fix harmless compiler warning seen with MSVC.
...
FossilOrigin-Name: 73c4c68d3b4c16caf8281dabddd7365d24691e5ee2da89b1783eca66bfbd9280
2022-09-09 17:50:29 +00:00
drh
b53e0992b2
Enhance an assert() to impose for tighter constraints on the operation of pcache.
...
FossilOrigin-Name: 42105eb43a916a7cd839fa6c582eaffaef17f50b23c3e05142400c379feb73c7
2022-09-07 20:11:22 +00:00
drh
8c983ddb67
An improved technique for ensuring that the Rekey() operation does not
...
overwrite an existing page number. This approach does not change the
semantics of the underlying pluggable pcache and it is easier to prove
correct. This replaces the changes at
[aadd38f99a3e5abc] and [81cff9f1955874aa].
FossilOrigin-Name: 7dbddde79e3ca1b81e00288616fc27434698ce6dcb47714728fce8602ae91f45
2022-09-07 19:28:18 +00:00
drh
2e440a0801
Add the tool/omittest-msvc.tcl script that will try to build using MSVC
...
using various compile-time options, to ensure that the compile-time options
all build without errors.
FossilOrigin-Name: 6b00ecb59fd303f7985902c35a46db9e729201d4beaedea46596b728d9e4b1c8
2022-09-05 22:54:36 +00:00
drh
0c4517a61a
Get the tool/omittest-msvc.tcl script working.
...
FossilOrigin-Name: 82b89f8a074858a81d841dfc26436e8d39ce4907b8f989eba4d848db16758303
2022-09-05 22:53:24 +00:00