Bug #3248 Doc says MyISAM warns if disk full but it does not
Submitted: 21 Mar 2004 15:03 Modified: 24 Sep 2004 12:19
Reporter: Guilhem Bichot
Status: Closed
Category:Server: MyISAM Severity:S3 (Non-critical)
Version:4.0 OS:Any (all)
Assigned to: Guilhem Bichot Target Version:

[21 Mar 2004 15:03] Guilhem Bichot
Description:
-- This is assigned to me because I am working on better handling of "disk full" when
writing to the binary log --
Manual says:
# It checks once every minute to see whether there is enough space to write the current
row. If there is enough space, it continues as if nothing had happened.
# Every 6 minutes it writes an entry to the log file warning about the disk full
condition.

It does not write an entry to the log file so there is no way to know that it is waiting
for free space. Even if the entry was written, "Every 6 minutes" is in fact "Every 10
minutes".

How to repeat:
have a full disk containing a MyISAM table and try to insert to the table. The INSERT
hangs (expected) but nothing is printed (neither to client, which is normal, but nor to
the error file).

Suggested fix:
Will work on it.
[3 Apr 2004 14:41] Guilhem Bichot
I am working on it. I have changed code so that:
- the error message "disk full" actually goes to the error log,
- a "write error" goes to the error log is the waiting-for-space thread is killed.
And now I am adding a new status variable which will tell about the last disk full error
(maybe even the last disk read/write error?) (timestamp+message) because the error log
may be full too when we try to write the message to it.
[24 May 2004 22:57] Arno de Greef
I experience a similar problem, but with a little twist! When adding a new record into a
table I get the following error message:
[MySQL][ODBC 3.51 Driver][mysql-4.0.18-nt]The table '...' is full.
In visual basis this means a run-time error -2147217887 (80040e21).
This occurs when the databasefile (.MYD) reaches 4 GB in filesize.
I have tried this in several different database configurations, but I'm unable to get rit
of it.
Is this the same problem?
[25 May 2004 0:22] Guilhem Bichot
It's not the same problem. Mine is when the partition is full, yours is that probably you
are hitting the default 4GB default limit of MYD files (or the file size exceeds what the
OS or filesystem can accept). To know how to get rid of the 4GB limit of MYD files, you
can look here:
http://dev.mysql.com/doc/mysql/en/Table_size.html
it's all explained (an ALTER TABLE should do the job).
[25 May 2004 10:47] Arno de Greef
Oeppss, it looks like I overlooked this. You probably made me as a bit of a novice when it
comes to MySQL! Thanks for the suggestion.
[28 Jul 2004 4:34] Guilhem Bichot
New patch submitted.
[24 Sep 2004 12:19] Guilhem Bichot
Thank you for your bug report. This issue has been committed to our
source repository of that product and will be incorporated into the
next release.

If necessary, you can access the source repository and build the latest
available version, including the bugfix, yourself. More information 
about accessing the source trees is available at
    http://www.mysql.com/doc/en/Installing_source_tree.html

Additional info:

Fixed that it writes a message to the error log every 10 minutes.
ChangeSet@1.2032, 2004-09-24 11:54:37+02:00, guilhem@mysql.com