A couple of weeks ago, we were involved in a discussion between users and technicians about transaction integrity for a hypothetical system. The preferred approach of the technicians was the optimistic locking: when a user edits the data and saves the changes while another user contemporarily changes the same data, an error is returned. Users did not take this kindly, because the changes are lost and they need to repeat the operation. We started to think out of the box in order to get a different solution, and borrowing the SAMCRO acronym from our preferred TV series, we created a new meaning: Simultaneous Asynchronous Multi Client Read Operation.
http://blog.mylaensys.com/2011/10/do-you-samcro-your-google-app-engine.html