View Issue Details

IDProjectCategoryView StatusLast Update
0009899mantisbtbugtrackerpublic2009-06-26 12:02
Reporterolegos Assigned Tovboctor  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionduplicate 
Product Version1.2.0a2 
Summary0009899: Prevent loss of data during simultaneous updates
Description

Currently if two users update the same issue at the same time, one set of changes is silently lost. Changes are lost even if users update different fields, as long as user2 starts his update before user1 submits his.

I propose refusing update if any of the fields being updated have changed in the DB since the original values were retrieved. This involves 1) figuring out exactly which fields were updated by the user, and 2) figuring out whether they changed outside of this session. Both can be done by saving the original values (or their checksums), and comparing to the values in the database right before the update, preferably in a single DB transaction.

Steps To Reproduce
  1. In one browser as user1, open an issue and click "Update Issue".

  2. In another browser as user2, open the same issue, and click "Update Issue".

  3. As user2, update Summary, and click "Update Information" to commit.

  4. As user1, update Description, and click "Update Information" to commit.

  5. Watch Summary change back to the original one, even though user1 hasn't touched it.

TagsNo tags attached.

Relationships

duplicate of 0005466 closeddregad Changes are overwritten 

Activities

There are no notes attached to this issue.