OgmEntityPersister.update first calls getTuple and later update the Tuple with new values. It does need the "old" state to:
-
compare versions
-
update an old unique constraint or ToOne navigational information
Most likely, this state has already been loaded previously when the object was hydrated. We could reuse that state. One trouble is that without transaction, we are not guaranteed that the version or the fks have not been overridden since then. This approach costs a read but reduce the inconsistency window.
|