Introduction
When you e.g. delete rows, these rows are just marked as deleted
not really physically deleted from indexes and free space
introduced is not returned to operating system for later reuse.
Purge thread will physically delete index keys and rows, but
still free space introduced is not returned to operating system
and this operation can lead holes on page. If you have variable
length rows, this could lead to situation where this free space
can’t be used for new rows (if these rows are larger than old
ones). User may use OPTIMIZE TABLE
or
ALTER TABLE <table> ENGINE=InnoDB to reconstruct the table.
Unfortunately, running OPTIMIZE TABLE
against an InnoDB table stored in the shared …