Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MySQL cluster error 1114 (HY000): The table 'users' is full

I have a MySQL cluster setup, There are 2 data nodes and 1 management node. We are now getting errors on our data nodes when doing inserts.

ERROR 1114 (HY000): The table 'users' is full

Please any help is appreciated, Is this a config issue, if so which node? each node is an Ubuntu 9 server.

like image 744
T-Wrecks Avatar asked Nov 14 '10 19:11

T-Wrecks


3 Answers

The answer is here: http://dev.mysql.com/doc/refman/5.0/en/faqs-mysql-cluster.html#qandaitem-B-10-1-13

in short: ndb engine holds all data in RAM. If your nodes have 1GB RAM and you are trying to load a 4GB database you are (nearly) out of luck.

There is a way to configure ndb to use disk to store data so that RAM is only used to store indexes (they still have to be stored in RAM), here is how: http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-disk-data-objects.html

If you do that, however, you will get far lower performances.

like image 130
Sergio Avatar answered Oct 16 '22 03:10

Sergio


Just in case someone passes by this issue, The root cause for this issue is the value for MaxNoOfConcurrentOperations, which should be raised accordingly in conjunction to the number of rows the table is expected to hold.

The following should be solutions for this issue.

  1. Change the CREATE TABLE of the table initial creation to include MAX_ROWS value to be double the number of rows this table is expected to hold.

  2. Increase the value of MaxNoOfConcurrentOperations and MaxNoOfConcurrentTransactions to a value higher than the largest table in the cluster. This is probably because MySQL Cluster works on all rows in parallel when applying any operation on a large table.

like image 25
ultimatetux Avatar answered Oct 16 '22 02:10

ultimatetux


Check the innodb_data_file_path setting - this error suggests you have exceeded available space defined in that key. Check this link for redefining space for InnoDB.

Alternatively, you could just have run out of disk space on the partition that data is stored on.

like image 2
Andy Avatar answered Oct 16 '22 04:10

Andy