I think there should be a way to avoid collisions when collisions don't change any fields that were changed since the submission that caused the collision. What I mean is this: Say user A and B view a bug. User A changes form field "foo" and adds a comment, then hits submit. User B changes form field "bar" and adds a comment, then hits submit. In the current world this is a collision because we can't tell what other form fields the user has actually changed, or did not want to change.. There are a few ways of handling this: 1) Create a single, hidden form field which keeps a list of all the form fields that have changed since viewing the bug.. whenever the user changes a form field, you'd have to call some JS which manages the value of this hidden field.. When this form is submitted, the CGI knows which form fields the user has touched, and which they have left alone. 2) For each form field, have a corresponding hidden field which indicates the original value of that form field. Upon submission, the CGI would compare the old values with the values that just were submitted, and if any had changed, they would know which fields to update.. this wouldn't require any JS, but would require a whole lot more form fields, resulting in twice as much data sent to the server. This came off bug bug 109545, because for mobile users who make changes to bugs while offline, it may be a few hours before their changes are finally submitted, resulting in a much higher likelyhood of collisions. Furthermore, collisions wouldn't be detected because the way the channel system works, the results of form submits are only seen by the user if they happen to be a part of the channel. (one way to fix that is to have a non-interactive collision mode, which sends e-mail to the user when there was a collision, and gives them a link to a bug with the values they changed, so they could resubmit.. but frankly the complexity behind making that work seem quite daunting)
*** This bug has been marked as a duplicate of 107306 ***
Status: NEW → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.