Пространство, занимаемое удаленными записями, будет использовано повторно, как только Firebird соберет мусор.Если GC не происходит (проблемы с транзакциями?), БД будет расти, пока GC не сможет выполнить свою работу.
Кроме того, существует проблема при массовом удалении таблицы (например, миллионы записей), следующий выбор в этой таблице будет «запускать» сборку мусора, и производительность будет падать, пока GC не завершит работу.Единственный способ обойти это - сделать массовые удаления в то время, когда сервер не очень загружен, и после этого запустить очистку, убедившись в отсутствии застрявших транзакций.Имейте в виду, что если вы используете «стандартные» таблицы для хранения временных данных (например, информация вставляется и удаляется несколько раз), вы можете получить поврежденную базу данных в некоторых случаях.Я настоятельно рекомендую вам начать использовать функцию глобальных временных таблиц.