MYSQL /MariaDB - TokuDB ... no space left on device

1.9k Views Asked by At

Although there is some space left on the hard drive any insert on a table with the tokuDB storage engine fails with the error:

Error Code: 1021. Disk full (); waiting for someone to free some space... (errno: 189 "Disk full")

Inserts on other storage engines (e.g. innodb ) are still working.

1

There are 1 best solutions below

0
On BEST ANSWER

There is a toku system parameter called: tokudb_fs_reserve_percent

Copied from https://mariadb.com/kb/en/mariadb/documentation/storage-engines/tokudb/tokudb-system-variables/#tokudb_fs_reserve_percent

Description: If this percentage of the filesystem is not free, inserts will be prohibited. Recommended value is half the size of the available memory. Once disabled, inserts will be re-enabled once twice the reserve is available. TokuDB will freeze entirely if the disk becomes entirely full. Scope: Global Dynamic: No Data Type: numeric Default Value: 5

So the default value is 5%. Either you change the paramter in your /etc/mysql/conf.d/tokudb.cnf to a lower value, e.g.

tokudb_fs_reserve_percent=0

or you free some disk space.