-
Satya Bodapati authored
FIELD->FIXED_LEN == FIELD->PREFIX_LEN Background: ----------- For fixed columns maximum length allowed is 255 (.i.e CHAR(255)). With charset utf8mb4 or utf32, each char can take at max 4 bytes. So the maximum possible fixed size is (255*4) 1020 bytes. when key field length is > 767 bytes, it is chosen as long fixed length field and treated as variable length field and this field can be chosen for off-page storage. Problem: -------- When such long length fixed field is treated as variable length field, and when estimating the maximum the record size in a btree index page, we wrongly treat it as fixed length field. Fix: ---- If long length fixed fields are treated as variable-length fields, do not treat them as fixed size fields when estimating the the maximum record size of a btree index page Reviewd-by:
Marko Makela <marko.makela@oracle.com> RB: 10375
Satya Bodapati authoredFIELD->FIXED_LEN == FIELD->PREFIX_LEN Background: ----------- For fixed columns maximum length allowed is 255 (.i.e CHAR(255)). With charset utf8mb4 or utf32, each char can take at max 4 bytes. So the maximum possible fixed size is (255*4) 1020 bytes. when key field length is > 767 bytes, it is chosen as long fixed length field and treated as variable length field and this field can be chosen for off-page storage. Problem: -------- When such long length fixed field is treated as variable length field, and when estimating the maximum the record size in a btree index page, we wrongly treat it as fixed length field. Fix: ---- If long length fixed fields are treated as variable-length fields, do not treat them as fixed size fields when estimating the the maximum record size of a btree index page Reviewd-by:
Marko Makela <marko.makela@oracle.com> RB: 10375
Loading