Das Problem ist, dass bei einem MVCC-DBMS bei einem
UPDATE
die Reihe als gelöscht markiert werden muss, eine neue mit den neuen Werten angehängt wird dann der Pointer geändert werden muss.
Aber die Anfrage muss ja nicht die gesamte Anwendung blockieren. Bei einer asynchronen Anfrage beschränkt sich die Wartezeit nur darauf, der Datenbank den Auftrag zu erteilen. Das scheint in RoR allerdings mit mehr Aufwand verbunden zu sein als ich es zunächst vermutet hatte.