> Стартует первая транзакция и обновляет запись. Версия пишется в память. > Стартует вторая транзакция делает селект. Как обычно.
А если она делает апдейт ? А если она в другом процессе классика ? > Первая транзакция коммитится. При этом запись из файла переносится > в память, а из памяти пишется на диск. > и т.д. Какого файла ? Выше ничего про это нет > Количество версии обычно должно быть намного меньше чем обычных > записей в БД. Откуда такое предположение ? > Поэтому для аналоги свипа достаточно будет обработать > этот временный файл небольших размеров. Нет, ибо см. ниже > > Сборка мусора удаляет не только старые > > версии записей, она также удаляет ненужные блобы и ключи индексов > > С индексами конечно есть проблема. Сейчас версии тоже вставляются в индекс. > Если их не вставлять то надо как решить проблему выборки незакоммиченных > версий. Вот реши для начала, и потом поговорим :) -- Хорсун Влад