daniel added a comment.

Problem: when validating an edit, we apply the modification to the //base// 
revision of the entity, and the check for conflicts. However, the modification 
is eventually applied to the //current// revision of the entity (via the 
diff-and-patch mechanism in EditEntity).

Basic solution: for validation, apply the modification to the //current// 
revision of the entity, and check for conflicts. Then, apply it to the //base// 
revision, and go through the diff-and-patch mechanism in EditEntity.

Better solution: before validation, have the ChangeOp check for a conflict by 
looking at both, the base and current revisions of the entity. IF there is no 
conflict, apply the modification to the current revision, check for conflicts, 
and save without any diff-and-patch. See T126231: Detect edit conflicts in 
ChangeOp instead of using diff-and-patch in EditEntity 
<https://phabricator.wikimedia.org/T126231>.


TASK DETAIL
  https://phabricator.wikimedia.org/T125516

EMAIL PREFERENCES
  https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: daniel
Cc: Tobi_WMDE_SW, StudiesWorld, Jonas, daniel, Aklapper, aude, hoo, 
Lydia_Pintscher, Bene, gerritbot, thiemowmde, Izno, Wikidata-bugs, Mbch331



_______________________________________________
Wikidata-bugs mailing list
Wikidata-bugs@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs

Reply via email to