Commit Graph

12 Commits

Author SHA1 Message Date
drh
c1e40a3a02 Fix a bug in cursor hints that can cause references to tables that have not
been opened.  Cursor hints are intended for use by COMDB2 only and should not
appear in production builds, so this should not be a factor for the vast
majority of users.

FossilOrigin-Name: d3370d59cffb7ab982d6c620c93d22aa6a9dc786e1c4af95ca8d45ff0b9b7d6f
2023-05-04 11:29:15 +00:00
drh
ed36917835 New assert() statements to validate the parameters to
sqlite3BtreeCursorHint().  Fix a problem with the construction of those
parameters discovered by
[forum:/forumpost/0b53708c95|forum post 0b53708c95].

FossilOrigin-Name: 4c5a3c5fb351cc1c2ce16c33314ce19c53531f09263f87456283d9d756002f9d
2023-04-10 18:44:00 +00:00
drh
2c16ec829b New test case to further validate the fix at [221fdcec964f8317].
[forum:/forumpost/d34ad68c36|Forum post d34ad68c36].

FossilOrigin-Name: a6e218a6e1ddd74be6a313b1d336334071747efd4ecd354ed7efe303d09c849c
2023-03-25 02:07:20 +00:00
drh
d23924d1ea Fix a problem in cursor-hints for WITHOUT ROWID tables used in a RIGHT JOIN.
[forum:/forumpost/591006b1cc|Forum post 591006b1cc].

FossilOrigin-Name: 221fdcec964f8317b2c23e926cc23799615cd3b4239a8a9ff87a83588d05bc64
2023-03-24 19:17:25 +00:00
dan
a796de8300 Test script changes to account for the fact that the "p5" column in the EXPLAIN output is now an integer, not a text values containing a 2-digit hex value.
FossilOrigin-Name: 102126d80872fdb7469233611cab28100c8455aab4ce25702b83398394559185
2020-05-15 11:26:31 +00:00
drh
7f10579a82 Add releasetest.tcl cases for SQLITE_LIKE_DOESNT_MATCH_BLOB and
for SQLITE_ENABLE_CURSOR_HINTS.

FossilOrigin-Name: f300c35efa5f7383b2a74b1c9466c243c17815e4
2016-01-04 01:08:50 +00:00
drh
f7854c7329 Split out sqlite3BtreeCursorHintFlags() from sqlite3BtreeCursorHint()
the interface for improved performance.

FossilOrigin-Name: b3ec9a0d62c5543e91d4be2cd634ec4a3d6dca11
2015-10-27 13:24:37 +00:00
drh
bcf40a7f12 Provide hints for all terms in a range constraint if there are any equality
terms anywhere in the constraint.  Range constraint terms are only omitted
for a pure range constraint with no equality prefix.

FossilOrigin-Name: b5897bc0f003c470eeb2a75e0a2b2bb202681531
2015-08-18 15:58:05 +00:00
drh
b413a5467a Avoid generating hints using constraints that are also used to initialize the
cursor, since presumably the cursor already knows about those constraints.

FossilOrigin-Name: 142b048ac778620dd4e448c2e969982eb8188501
2015-08-17 17:19:28 +00:00
drh
a67a31624d Change the display of the P4 operand of CursorHint in EXPLAIN output to
function notation.

FossilOrigin-Name: bee73d429cb0e99b43fb191ac15e298d0353b135
2015-08-15 00:51:23 +00:00
drh
1eb6eeb829 Updated testing of cursor-hints. Remove the test_cursorhint.c file and
associated logic in the core and do tests based purely on the newly enhanced
EXPLAIN output.

FossilOrigin-Name: bf383e665a191a4f33a540d1240960a922e22813
2015-08-14 20:08:13 +00:00
dan
91d3a61f8a Add simple tests for new sqlite3BtreeCursorHint() functionality.
FossilOrigin-Name: 1efa6ed584172291edce78faf9021e577583d03b
2014-07-15 11:59:44 +00:00