MDEV-20814 Assertion index->is_instant() failed on trivial upgrade from 10.1
rec_init_offsets(): Relax the assertion that was added in commit 01f45becd1b71433e240959228e35266f271bba1 to catch ROW_FORMAT=REDUNDANT records that have fewer fields than expected. This assertion would fail when accessing the records of the built-in InnoDB table SYS_INDEXES. The column MERGE_THRESHOLD had been effectively instantly added in MariaDB Server 10.2 (and MySQL 5.7), but is_instant() does not hold for that index. Relax the assertion, so that it will not fail in this case.
This commit is contained in:
parent
bb450b1fed
commit
fa6c606257
@ -742,7 +742,9 @@ resolved:
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (i < rec_offs_n_fields(offsets)) {
|
if (i < rec_offs_n_fields(offsets)) {
|
||||||
ut_ad(index->is_instant());
|
ut_ad(index->is_instant()
|
||||||
|
|| i + (index->id == DICT_INDEXES_ID)
|
||||||
|
== rec_offs_n_fields(offsets));
|
||||||
|
|
||||||
offs = (rec_offs_base(offsets)[i] & REC_OFFS_MASK)
|
offs = (rec_offs_base(offsets)[i] & REC_OFFS_MASK)
|
||||||
| REC_OFFS_DEFAULT;
|
| REC_OFFS_DEFAULT;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user