Mysql nie ma wbudowanego mechanizmu rowversioningu. Chociaż użycie typu znacznika czasu może wydawać się OK, popełnisz ten błąd w przypadku zapytań, które aktualizują wiele wierszy jednocześnie i trwają dłużej niż rozwiązanie znacznika czasu, ponieważ przypisana wartość jest oparta na początku zmiany, a nie na końcu zmiana.
Jeśli więc zapytanie aktualizujące dotyczy 100 wierszy, wszystkie wiersze będą miały tę samą sygnaturę czasową (powiedzmy wartość 2015-10-28 09:47:10.123456). Ale możliwe jest, że pisanie wierszy nie zostanie zakończone do 28.10.2015 r. 09:47:10.654321.
Jeśli osobno szukasz wszystkich zmienionych wierszy na podstawie innego znacznika czasu (powiedzmy 2015-10-28 09:47:10.50000), nie uzyskasz pożądanych wyników. W zależności od kodu możesz pominąć 100 zmienionych wierszy.
Faktem jest, że zmiany w wierszach mogą teraz mieć znacznik czasu w przeszłości, którego nie można po prostu porównać 2 znaczników czasu, aby uzyskać wszystkie zmienione wiersze.