There are many different ways to resolve conflicts, depending on the guarantees the system wants to provide.
An important aspect of different approaches to resolving conflicts is whether they do it eagerly or lazily.
In the eagerly case, the conflict is resolved during the write operation.
In the lazily case, the write operation proceeds to maintain multiple, alternative versions of the data record that are eventually resolved to a single version later on, i.e., during a subsequent read operation