How can I deal with situations when multiple clients might edit same object at the same time?
For example, I have a web app with admin console, which lets you edit profile data. Several users want to open the same profile and edit it.
If I just let the things go as they do, I`ll get "the last who saves wins" situation and all the other users will lose their changes.
Blocking object for edit on client, when someone enters edit page, seems relatively easy and overall acceptable for simple objects. However, for complex objects, when different users may want to change different parts of object, merging would be much better. I've read a paper on Conflict-free Replicated Data Types and it seems to be pretty complex and does not cover conflict situations.
Are there any other ways to merge objects? Or maybe there are totally different strategies to deal with the situation?