Using Per-Table Tablespaces

Hi all ,

i am trying to set up Using Per-Table Tablespaces on mysql 5.5.27

i just created new database with this option. i created 2 small datafile with size of 10M. (max size 30 M)

after DB creation i create t_table table on test database.i creates

t_table.frm and t_table.ibd on …/data/test/ directory.

i made some data load on this table. it grows and after some time it gaves me table full error.

i checked ibdata files it growed up to 30 M which is my max datafile size limit in my.cnf.

and it stop inserts to t_table.

as i know from documentation only t_table.idb file must be grow and there musnt be anny affect on ibdata files.

why these ibdata files also grows even i use Using Per-Table Tablespaces option ?



ibdata files still grows because InnoDB also stores internal data dictionary and undo segments/log files in ibdata file. So i.e if you open a transaction, modify tons of rows and never close it then the ibdata will grow. One more thing, the space occupied by the table can be reused for new InnoDB data, but is not reclaimed for use by the operating system so ibdata file will grow but not shrink.