1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-02 14:47:37 +03:00

BUG#26080 - Memory Storage engine not working properly

Extending varchar column length with ALTER TABLE may result in unusable
memory table.

The problem is that we use fast ALTER TABLE in this case, which is not
supported by now.

This is fixed by refusing fast ALTER TABLE when extending varchar column.
In other words force copy of a table during ALTER TABLE.

Affects MEMORY tables in 5.1 only.


mysql-test/r/heap.result:
  A test case for BUG#26080.
mysql-test/t/heap.test:
  A test case for BUG#26080.
storage/heap/ha_heap.cc:
  For MEMORY, if varchar column extended, it should return incompatible for
  now. In other words force copy of a table during alter table.
This commit is contained in:
unknown
2007-02-28 14:27:19 +04:00
parent 9873687783
commit d9dbd4caf4
3 changed files with 20 additions and 3 deletions

View File

@ -731,3 +731,10 @@ SELECT COUNT(*) FROM t1 WHERE c=REPEAT('a',256);
COUNT(*)
2
DROP TABLE t1;
CREATE TABLE t1(c1 VARCHAR(100), c2 INT) ENGINE=MEMORY;
INSERT INTO t1 VALUES('', 0);
ALTER TABLE t1 MODIFY c1 VARCHAR(101);
SELECT c2 FROM t1;
c2
0
DROP TABLE t1;