| Bug #19544 | mysqldump does not backup TS and LG information correctly. | ||
|---|---|---|---|
| Submitted: | 4 May 2006 19:29 | Modified: | 21 Jun 2006 5:01 |
| Reporter: | Nikolay Grishakin | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Backup | Severity: | S2 (Serious) |
| Version: | 5.1 | OS: | Linux (Linux) |
| Assigned to: | Stewart Smith | CPU Architecture: | Any |
[25 May 2006 7:35]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/6857
[6 Jun 2006 4:05]
Stewart Smith
Pushed to 5.1.12
[6 Jun 2006 11:48]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/7323
[21 Jun 2006 5:01]
Paul DuBois
Noted in 5.1.12 changelog. In the INFORMATION_SCHEMA.FILES table, the INITIAL_SIZE, MAXIMUM_SIZE, and AUTOEXTEND_SIZE columns incorrectly were being stored as VARCHAR rather than BIGINT.

Description: mysqldump does not store Log File Groups and Table Spaces information correctly. INITIAL_SIZE and UNDO_BUFFER_SIZE values stored incorrectly and it makes data restoration impossible. Original LG and TS were created like this: CREATE LOGFILE GROUP lg ADD UNDOFILE './undofile.dat' INITIAL_SIZE 250M UNDO_BUFFER_SIZE = 4M ENGINE=NDB; CREATE TABLESPACE ts ADD DATAFILE './datafile.dat' USE LOGFILE GROUP lg INITIAL_SIZE 500M ENGINE=NDB; CREATE TABLE tb ( a1 int NOT NULL AUTO_INCREMENT, a2 char(80) DEFAULT NULL, PRIMARY KEY (a1) ) TABLESPACE ts STORAGE DISK ENGINE=ndbcluster; Database was backed up with mysqldump: mysqldump -u root -Y TPCB > tpcb_backup.sql Drop table tb and try to restore TPCB database: $ mysql TPCB -u root < tpcb_backup.sql The following error is returned: "ERROR 1507 (HY000) at line 22: Failed to create UNDOFILE" I looked in tpcb_backup.sql and it showed wrong values for INITIAL_SIZE and UNDO_BUFFER_SIZE. Numbers are so big so CREATE LG and FG failed: CREATE LOGFILE GROUP lg ADD UNDOFILE './undofile.dat' UNDO_BUFFER_SIZE 4194304 INITIAL_SIZE 2.62e+08 ENGINE=ndbcluster; CREATE TABLESPACE ts ADD DATAFILE './datafile.dat' USE LOGFILE GROUP lg EXTENT_SIZE 1048576 INITIAL_SIZE 5.24e+08 ENGINE=ndbcluster; How to repeat: see above