| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| | |
correctly deals with zero-blobs.
FossilOrigin-Name: 629ee2e3e3125bfd2af435c6713d49e46691213ad15db0a5e93a63a77f1130c2
|
| |
| |
| |
| |
| | |
constraints.
FossilOrigin-Name: a70429596a3c6a413b03118b0d800521b3526d99dcf88a48acc3189b51518d82
|
| |
| |
| |
| |
| | |
cases were a Bloom filter is used.
FossilOrigin-Name: 8e078c0e404fe4b3661dd4a11a992a8914c99e2a144cecc417421cbd68fa08cc
|
|/
|
| |
FossilOrigin-Name: 50ac4de1d7cbb586ea7969e1ae80ea8b021e194edc2fa7db19374b4ee9369bee
|
|
|
|
|
| |
incorrect answer. See ticket [5981a8c041a3c2f3].
FossilOrigin-Name: 266e9cbada531716c908c21d60a6038109722e3dd040237679ac0240fb5020ea
|
|
|
| |
FossilOrigin-Name: 8a56de5b9c6f4522000f8d991373490b67b9e9d97f03c1ca2cf32816d84789ef
|
|
|
|
|
| |
branches.
FossilOrigin-Name: bdd840216cc4c5293c112f182a189f7562b3cc0f6270e3c4af5eb2e8bd61ccc9
|
|
|
| |
FossilOrigin-Name: 87e2f5eb436fc448427b0e24fb70f29688796b513b8c7b12f1a21540dae1e56d
|
|
|
| |
FossilOrigin-Name: 8eaa1d4a98b24adf245bbd2fe9212aa6a924a0f09c445906d7f87574f36a7423
|
|
|
| |
FossilOrigin-Name: 32f33f356931242b59c01b5df7e180941231e3d9c91577ad33aa4a01e9d59092
|
|
|
|
|
| |
transitive constraint.
FossilOrigin-Name: 46e28cbcf6044b36aa4ddcda09adb49a46c6c6a8d41d558467ede3091304aa8c
|
|
|
|
|
|
| |
extension to the column name, for an additional savings in the heap space
needed to hold the schema.
FossilOrigin-Name: 832ac4c1ee384be0de72a4bdd55ed87e0f8294e7df5eefcf6b4942db3d85a69e
|
|
|
|
|
| |
unique and thus easier to find amid all the other code.
FossilOrigin-Name: 8b781dcaf68e0cf12a844708c82eee00193e340195cbca915d077e4846983bf3
|
|
|
|
|
|
|
|
|
| |
reused. Fix for the problem reported by
[forum:/forumpost/28216b36ac|forum post 28216b36ac] and introduced by
check-in [f30fb19ff763a7cb]. Further changes to try to optimize the new
OP_Copy opcode back into either OP_SCopy or OP_Move will be attempted
separately. A test case will be in TH3.
FossilOrigin-Name: c9f0b9cb0aef107265435e22c164dd3c974eadfd00abf7cfd4fc7ec95c0dd7d0
|
|
|
|
|
| |
error.
FossilOrigin-Name: 3e2c36a8272ab3c1777638c0ed8222e7ff04657fe1c40f74a63b99a5a90258cc
|
|
|
|
|
|
| |
left the tree in an inconsistent state. See also [e8a1515b44380cc5] and
[forum:/forumpost/7e484e225c|forum post 7e484e225c].
FossilOrigin-Name: b986600520696b0c91c4ccc6aff1b698391b4bcaf8a3ea436be1967883faa2fe
|
|
|
|
|
|
|
|
| |
generated twice. But for some subqueries, generating code off of the same
tree twice causes problems. So now MULTI-INDEX OR makes a copy of the
sub-expressions it uses to avoid code-generating them more than once.
dbsqlfuzz 9ebd2140e7206ff724e665f172faea28af801635.
FossilOrigin-Name: 4a55f72542c8bcc80253aa77043314cecb29d73cb4f51aa80f7811e86cc8ef68
|
|
|
|
|
| |
check-in.
FossilOrigin-Name: b2b0e23ba885f22c88b03492e42c3cd1cbd59289e452263951bb757a871699f0
|
|
|
|
|
|
| |
a DESC primary key when the primary key is constrained by an inequality.
See [forum:/forumpost/8988341615|forum post 8988341615]. Test cases in TH3.
FossilOrigin-Name: f65c929bf189cf5ca5f1cacdbbb8eec014c9960f767b135023bd2323cd26f279
|
|
|
|
|
|
|
| |
indexes, make sure not to do so if the term being disabled is a transitive
constraint. Fix for the problem identified by
[forum:forumpost/eb8613976a|forum post eb8613976a].
FossilOrigin-Name: f1f9b5de3c59489b94963685660b3ddc45eece5535b02fec399b6ece0e38563d
|
|
|
|
|
| |
disabled.
FossilOrigin-Name: 625fb253eecd6c10fce5d0127d516361df0c1d1661502b396fc418dcdb4ae999
|
|
|
|
|
| |
correctly. This check-in attempts to fix that.
FossilOrigin-Name: 02af30aab24878c4382a8863512b816889400104549b51df6a632767fee48d04
|
|
|
|
|
|
|
| |
the query is run on a corrupt database that causes the initialization of the
key to be bypassed.
dbsqlfuzz 62fdf2bece00d24cac8a4edf2cf562e6eeac779d
FossilOrigin-Name: 8b54102a00852b72783b5b2f336c7a093adbdc8e1b94d46b7d315ae6e5d9476b
|
|
|
|
|
|
| |
is incomplete due to a prior OOM.
dbsqlfuzz b8a824706914488bd236da51118eb9174ceb870f
FossilOrigin-Name: e8a1515b44380cc52aca1838814ca398012e4e9cf5728d40b404546e812a39b7
|
|
|
|
|
| |
has already been coded by an outer loop.
FossilOrigin-Name: 644bb77f8bb2c3499db7c280440c92fd2649a98ce714ae0d5d690eabfdc04326
|
|
|
|
|
| |
CO-ROUTINE lines for a CTE.
FossilOrigin-Name: 1b83e232c490fe6e9f999d30399faebfac6094bf940dc21dc459ed2c97657cb2
|
|
|
|
|
| |
the different output format.
FossilOrigin-Name: 6f8faec0222a7ca07cc1a5ed16cc08d92c6e20bbcb34851b4eff9e624de53601
|
|
|
|
|
| |
This is a symbolic change only. The logic is unmodified.
FossilOrigin-Name: bfd5bf2c73110fcb36db9ba2a949ff516131fbd3e89325f88fe9f5c2b4ed87b2
|
|
|
|
|
| |
on the first iteration of the loop. Possible fix for [2d6e8400].
FossilOrigin-Name: 390cf60a286b13f454429f4652a133f95a7891a75c1ec6d16cd39990590fd3fb
|
|
|
|
|
| |
optimization.
FossilOrigin-Name: ad5ab24ebd557e7af1d92ab3fbcb3747c04da5ad4ed779fb6391dc94042687dd
|
|
|
|
|
|
| |
right after the OP_SeekGE. So use the P2 operand of OP_SeekScan to point
to the first instruction after OP_IdxGT. Problem found by dbsqlfuzz.
FossilOrigin-Name: 091d71939411bf2079098f09ddc0525f11f380119fd27114e2b3eec9a8ac0db4
|
|
|
|
|
|
|
| |
in PRAGMA reverse_unordered_selects mode, as the OP_SeekScan only works
with forwards scans. Thanks to OSSFuzz for pointing out the problem to
us.
FossilOrigin-Name: c75c3a3b756635bfdab44e4b56a337e4a88af3a8803cd3e9a67abf3d0d3450dc
|
|
|
| |
FossilOrigin-Name: e9d1efa597fb073dc4bc4286e03059a350ed05d3e6476cd3247e6cde626f458b
|
|
|
|
|
|
| |
not try to use it there. Fix for ticket [2d5a3163563d559f]. Test
cases in TH3.
FossilOrigin-Name: dbec6910d9648f4907373c818a5cb347a2e487784208751ccecfacca752ff99d
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
later columns are constrained by an IN operator and the earlier index columns
limit the search to a small number of rows. Use the new OP_SeekScan opcode
which does scanning of the relevant range of the index but gives up and
falls back to doing a seek if the number of rows scanned grows to large,
in order to guard against pathological cases where the estimated number
of rows to be scanned is far too small.
FossilOrigin-Name: 4a43430fd23f88352c33b29c4c105b72f6dc821f94bf362040c41a1648c402e5
|
| |
| |
| |
| |
| | |
up based on the estimated number of comparisons needed to perform a seek.
FossilOrigin-Name: dc4172e6b8e1f62dc7329a3adb2223f290bc4c8055c265e88182ef432f4bcf10
|
| |
| |
| |
| |
| | |
OP_SeekScan reaches the end of the table.
FossilOrigin-Name: 9e57e758a6a33f54d28a546b4eebfb5cfacef30dc4e0207e43bb9d2c06fc3439
|
| |
| |
| |
| |
| | |
OP_SeekHit opcodes.
FossilOrigin-Name: 8fd7d8dfcd515aa6b65d6eb27b033d3b3a31db467b9100cc13c62bc60113019e
|
| |
| |
| |
| |
| |
| | |
IN-earlyout optimization because the OP_IfNoHope opcode might move the
cursor.
FossilOrigin-Name: f3c36b840c9a29c0add28039db216f4207a308e5057fc76e3f0004024a8267ac
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
where the statistics deceive the query planner into using a scan when
an indexed lookup would be better. This check-in changes the code
generation to do the IN-scan using a new OP_SeekScan opcode. That new
opcode is designed to abandon the scan and fall back to a seek if
it doesn't find a match quickly enough. For this work-in-progress check-in,
OP_SeekScan is still a no-op and OP_SeekGE still ends up doing all the work.
FossilOrigin-Name: d720b6981eeb0ffdb14494ca63eca298ee724ae4ad4863c7c7cbfdad7fa52519
|
|/
|
|
|
|
| |
ticket [5c4e7aa793943803] reports a case where the optimization does not
work.
FossilOrigin-Name: 7395e96b8cc370c8ac2657fb805915b0992a15d80f8bf256d277b423fec64675
|
|
|
|
|
| |
the WhereTerm object.
FossilOrigin-Name: 43f7ddad800acf40917c5cc3d926640dbec17c34d5f1cbbb74bd80f44eeed0a5
|
|
|
|
|
| |
while generating the OP_VFilter opcode.
FossilOrigin-Name: 751fe4edb2d4602e652523c2759de3f4fffd29d5c66cae68caf45b30fd8b750a
|
|
|
|
|
| |
efficiently when there are two or more indexed IN clauses on a single table.
FossilOrigin-Name: 35505c68c1945c35babd2496e02bc4907a15c8e7b8d77f05f230bd0e9d4891d7
|
|
|
|
|
|
|
| |
range scan. The subsequent OP_IdxGT will always catch the NULL. Similarly,
omit the not-NULL check on the lower bound of a reverse index range scan,
as the SeekLE opcode will disallow the NULL.
FossilOrigin-Name: e51ecadcbdef5ce6e41d68412aee70aa4a1416c850358a6fa7e9a1ab443e719d
|
|
|
|
|
|
|
|
|
| |
be resolved, add the OP_FinishSeek opcode after all WHERE clause terms have
been processed. This obviates the need for the WHERE_SEEK_TABLE and
WHERE_SEEK_UNIQ_TABLE flags to sqlite3WhereBegin() and the ensuing
complication, and it allows the covering index optimization to be used
further into WHERE clause processing.
FossilOrigin-Name: a495f60d315e34b1a1bc5fb1336e05047add52c8fb2710b577c97b10a5e734f6
|
|
|
| |
FossilOrigin-Name: 9ce1710aad43cebe5ad50859c7685fb83e40cdd4a60913bd2b7e659bc59942fd
|
|
|
|
|
| |
is used on the right table of a LEFT JOIN. Ticket [e12a0ae526bb51c7].
FossilOrigin-Name: 704bb9a39acbee420c1d6ac9eb1466a02dd77d3334b938bfddf235973129b5fe
|
|
|
|
|
| |
table implementations that do not set the "omit" flag when the virtual table column contains at least one NULL value.
FossilOrigin-Name: dcb4838757ca49cf149a6e883b3eb0ac8a075147387a078280dfabe39b1a3e8d
|
|
|
|
|
|
|
| |
testcase() together with a comment indicating where an appropriate test case
can be found, and the ticket that provoked the change.
Ticket [614b25314c766238]
FossilOrigin-Name: 3e3c60d8124672ff72a57dfa2e51276316bcac8c8ae8a5739da358f26924b0fb
|