База данных PostgreSQL хранит нефиксированные изменения, так как использует механизм транзакций для обеспечения целостности данных.
Транзакция - это логически связанная группа операций с базой данных, которая может состоять из нескольких изменений (вставки, обновления, удаления и т. д.). Когда начинается транзакция, все ее изменения записываются в журнал транзакций (transaction log).
Когда выполняется команда COMMIT, PostgreSQL фиксирует транзакцию, то есть записывает изменения из журнала транзакций в саму базу данных. Однако, это не означает, что все изменения, произведенные после команды COMMIT, немедленно применяются в базе данных.
После выполнения COMMIT изменения становятся видимыми для других транзакций. Однако, они могут быть еще не записаны на диск (не применены физически). PostgreSQL использует буферизацию и оптимизации чтения/записи данных на диске, чтобы обеспечить высокую производительность. Фактическая запись изменений на диск может произойти позже, в более подходящее для этого время, например, при фоновой записи (background write).
Таким образом, изменения, произведенные после выполнения команды COMMIT, сохраняются, но могут быть физически записаны на диск в более поздний момент во время работы базы данных. Это позволяет PostgreSQL быть гибкой и эффективной системой управления базами данных.