Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
10.2.38, 10.3.29, 10.4.19, 10.5.10, 10.6.1
Description
MDEV-25459 corrected MVCC missing reads from CHAR or VARCHAR indexes, but omits handling InnoDB spatial r-tree indexes in storage/innobase/row/row0sel.cc row_sel_sec_rec_is_for_clust_rec. It seems to work for geometry fields which fit in the key prefix length.
Checking for dict_index_is_spatial(sec_index) in check_for_blob: goto works, although repetitive code. Not familiar enough with the internals to tell if it would be safe to skip the other checks entirely in case of spatial index.
Additionally, row_sel_sec_rec_is_for_blob doesn't seem to work right. When len > REC_VERSION_56_MAX_INDEX_COL_LEN it becomes REC_VERSION_56_MAX_INDEX_COL_LEN + 1, causing assert failure in debug build.
Attachments
Issue Links
- is caused by
-
MDEV-25459 MVCC read from index on CHAR or VARCHAR wrongly omits rows
- Closed
- is duplicated by
-
MDEV-25621 Spatial Index ignores some geometry
- Closed