Ethan,

----- Original Message ----- 
From: "Ethan Joffe" <[EMAIL PROTECTED]>
Newsgroups: mailing.database.mysql
Sent: Sunday, June 15, 2003 6:16 PM
Subject: free table memory shrinks when data deleted


>
> After delete a large amount of data from an innodb table, the free memory
> available to innodb tables as reported by 'show table status' decreased
> significantly rather than increasing.

did you wait for purge to clean up the undo log as well as the delete-marked
rows? The undo log takes some space. That is why during a big delete the
free space decreases until the delete transaction commits.

> I am guessing this is caused by fragmentation?

If the deleted rows are scattered then it is possible that no space is freed
from index trees. But the free space should not decrease.  Did you follow
the table's data and index size in SHOW TABLE STATUS.

> If so, I am guessing the
> only way to regain the free memory is to dump the data an recreate the
> table, but the table is several gigs so this would be seriously
> inconvenient now, and pretty much impossible in the future.
>
> So my question is whether the free memory is actually lost or just not
> reported correctly by 'show table status', and if lost, how can I regain
it
> short of dumping and recreating the table.
>
> Thanks
> Ethan Joffe
> CTO Nami Media Inc.

Best regards,

Heikki Tuuri
Innobase Oy
http://www.innodb.com
Transactions, foreign keys, and a hot backup tool for MySQL
Order MySQL technical support from https://order.mysql.com/



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

Reply via email to