One of our INNODB tables contained about 350 million entries. All of a sudden, we started getting the error 'The table 'table_name' is full'. The table contains logs-like entries(click logs, basically). Since we didn't need data that was a year old, as a temporary fix I deleted about 30 million entries. However, since we are getting about 5-6 million entries everyday now, I fear that this error would crop up again. Any thoughts on how to overcome it ?
The specs of the machine are : 48 GB ram, 757 gb SSD. Currently, the used space on disk is 500 gb. 30 % free space.
2 Answers 2
Fixed in 5.7.4: A page allocation for an undo log due failed with a "table is full" error message instead of an "undo log is full" error message.
5.6.3 is pre-GA. Recommend you upgrade at least to a later 5.6.xx.
See https://dev.mysql.com/doc/refman/5.6/en/innodb-undo-logs.html as for a discussion of what can be done about "undo tablespaces" starting with 5.6.3.
I suggest you setup a script to run daily that archive older records (this will also reduce the load on that table since you mentioned it has over 300 million rows)
check percona pt-archiver