I don't have logs from the exact reported crash, but in a very similar one the crash happened on the very first ALTER TABLE E ADD COLUMN, so the table definition hadn't yet changed by then.
Same was the case with my intermediate (non-deterministic) MTR test. All it did was
- create table as described above;
- populate with 1000 rows;
- run ALTER TABLE .. ADD COLUMN;
- in parallel with alter, run I_S queries
SELECT * FROM INFORMATION_SCHEMA . `INNODB_BUFFER_PAGE` LIMIT 1;
SELECT * FROM INFORMATION_SCHEMA . `GLOBAL_TEMPORARY_TABLES` LIMIT 1;
I don't know if the first query is anyhow important or it's there just for the right timing, I suspect the latter.
Anyway, it happens easily with the provided grammar, I expect you shouldn't have a problem reproducing it.
Initial structure of table E
CREATE TABLE E (
pk INTEGER AUTO_INCREMENT,
col_ int_nokey INTEGER /*! NULL */,
col_ int_key INTEGER /*! NULL */,
) ENGINE=InnoDB
I don't have logs from the exact reported crash, but in a very similar one the crash happened on the very first ALTER TABLE E ADD COLUMN, so the table definition hadn't yet changed by then.
Same was the case with my intermediate (non-deterministic) MTR test. All it did was
- create table as described above; BUFFER_ PAGE` LIMIT 1; TEMPORARY_ TABLES` LIMIT 1;
- populate with 1000 rows;
- run ALTER TABLE .. ADD COLUMN;
- in parallel with alter, run I_S queries
SELECT * FROM INFORMATION_SCHEMA . `INNODB_
SELECT * FROM INFORMATION_SCHEMA . `GLOBAL_
I don't know if the first query is anyhow important or it's there just for the right timing, I suspect the latter.
Anyway, it happens easily with the provided grammar, I expect you shouldn't have a problem reproducing it.