I've seen this on the mailing lists just a day ago ('*have a problem'*), and wow! I have a similar problem.
None of the suggestions in the online documentation helped. I tried both MyISAM and InnoDB table formats. This obviously only works on MySQL >=4.0 (I'm running the 4.0.12 RPM on Linux).


UPDATE a, b
SET a.date_out='2003-04-03 15:48:06',
a.is_dirty_date_out='Y'
WHERE a.file_id=b.file_id
AND date_out='2099-12-31'
AND file_mdate >= '2002-04-03 15:48:06'
AND a.storage_id='6';

ERROR 1114: The table 'a' is full

- a currently contains 1,419,724 rows
- b currently contains 825,770 rows
- the disk is in no way full, and both tables apart take up at most a few 100 MB. The machine has 1GB of RAM.


- the SHOW TABLE STATUS FROM db LIKE 'a' output:
| Name | Type | Row_format | Rows | Avg_row_length
| Data_length | Max_data_length | Index_length | Data_free | Auto_increment
| Create_time | Update_time | Check_time | Create_options | Comment |


| a | InnoDB | Fixed | 1411497 | 97
| 137003008 | NULL | 153534464 | 0 | 1419728
| NULL | NULL | NULL | max_rows=100000000 | InnoDB free: 294912 kB |


(as a solution I'm going to denormalize a bit so I don't have to update using two tables, but this looks like a bug or a hole in the documentation/known issues)

If anyone has any pointers I'd be happy to hear them, please CC: me since I'm not on the mailing list (yet). The similarities between this TABLE STATUS and the previous poster are large, but there are probably important differences - namely table type, max_rows, Auto_increment, Row_format are all quite different.

Cheers,

--
=={Gerrit Hannaert}==

IT Department, CropDesign N.V.


-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]



Reply via email to