[MDEV-397] Changing a column name via ALTER ONLINE does not work for InnoDB Created: 2012-07-15  Updated: 2013-11-08  Resolved: 2013-11-08

Status: Closed
Project: MariaDB Server
Component/s: None
Affects Version/s: 5.5.25, 5.3.7
Fix Version/s: 5.5.34

Type: Bug Priority: Minor
Reporter: Elena Stepanova Assignee: Michael Widenius
Resolution: Won't Fix Votes: 0
Labels: None


 Description   

I'm not sure whether it's expected behavior, filing just in case it's not.

http://kb.askmonty.org/en/alter-table/ says that changing a column name online should work; and it does for MyISAM, but not for InnoDB:
query 'ALTER ONLINE TABLE t1 CHANGE COLUMN i i2 INT' failed: 1915: Can't execute the given 'ALTER' command as online

Some other CHANGE COLUMN operations do work, even for InnoDB, e.g.
ALTER ONLINE TABLE t1 CHANGE COLUMN i i INT DEFAULT 1

Test case:

--source include/have_innodb.inc
 
CREATE TABLE t1 (i INT) ENGINE=InnoDB;
ALTER ONLINE TABLE t1 CHANGE COLUMN i i2 INT;
 
DROP TABLE t1;



 Comments   
Comment by Elena Stepanova [ 2013-11-08 ]

I suppose it makes no sense to fix it, since in 10.0 semantics of ALTER ONLINE changed anyway – it now works like ALTER .. LOCK=NONE, so the provided test case actually causes opposite results – it works for InnoDB and fails for MyISAM.

Closing as 'Won't fix', please re-open if you think otherwise.

Generated at Thu Feb 08 06:28:26 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.