Bug #28367 | InnoDB free is larger than the total size | ||
---|---|---|---|
Submitted: | 11 May 2007 7:54 | Modified: | 16 May 2007 6:45 |
Reporter: | Denis Dordoigne | Email Updates: | |
Status: | Not a Bug | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
Version: | 4.1.8 | OS: | Linux (xfs) |
Assigned to: | Heikki Tuuri | CPU Architecture: | Any |
Tags: | innodb free |
[11 May 2007 7:54]
Denis Dordoigne
[11 May 2007 9:26]
Sveta Smirnova
Thank you for the report. But version 4.1.8 is quite old. Please upgrade to current 4.1.22 version, try with it and say us result.
[14 May 2007 12:34]
Heikki Tuuri
Hi! Are you sure mysqld reads your my.cnf when it starts? InnoDB reports 74,767 MB of free space, though the my.cnf contains only 72,000 MB! --Heikki
[14 May 2007 13:21]
Denis Dordoigne
> Please upgrade to current 4.1.22 version, try with it and say us result It is not possible, I will try it with another server. > Are you sure mysqld reads your my.cnf when it starts? Yes. > InnoDB reports 74,767 MB of free space, though the my.cnf contains only 72,000 This is the bug.
[14 May 2007 15:02]
Heikki Tuuri
Denis, please show what SHOW VARIABLES prints. Please show: ls -l in the relevent data file directories. --Heikki
[14 May 2007 17:01]
Denis Dordoigne
SHOW VARIABLES prints
Attachment: show_variables.txt (text/plain), 21.91 KiB.
[14 May 2007 17:02]
Denis Dordoigne
ls -l in the relevent data file directories.
Attachment: ls_ibdatas.txt (text/plain), 4.20 KiB.
[14 May 2007 17:19]
Denis Dordoigne
Comment : we recently removed 7 ibdatas from the first directory and added 20 new ibdatas in the second directory but the method related in the reference manual ("15.8. adding-and-removing") was not seriously followed : only the 7 seven extra ibdatas were removed before restarting mysqld, and not all ibdatas.
[14 May 2007 17:25]
Heikki Tuuri
Denis, that is probably the explanation. The free space counter in the header page of ibdata1 is wrong now. Now, if you try to fill your tablespace, InnoDB will crash, because the file it tries to access does not exist! You can probably fix the problem by adding a couple of all-zeroed ibdata files to your database and edit the .my.cnf. Then restart mysqld. Regards, Heikki
[14 May 2007 17:41]
Denis Dordoigne
Thanks for your analyse Heikki Tuuri, so it's not a bug. > adding a couple of all-zeroed ibdata files to your database How can I do that ? It is an SQL request to execute ? > and edit the .my.cnf What are the elements whichh need a modification ? Thanks for your help, -- Denis
[16 May 2007 6:45]
Denis Dordoigne
We stopped the instance, removed all the existing tablespace files and restarted the instance : all is OK now. Thanks, -- Denis