Page MenuHomePhabricator

Use PageUpdater to create dummy revisions
Open, NormalPublic

Description

MediaWiki sometimes creates dummy "null" revisions in the page history to mark events that affect the page's state, but not the pages content. Examples include move/rename and page protection changes.

So far, application logic had to "manually" insert a revision and update the page table to achieve this. However, this is seems rather brittle, and leads to inconsistencies wrt what updates are performed when a dummy revision is created.

For this reason, dummy revisions should be created using the new PageUpdater interface, simply by not supplying any new content before saving the update. However, this would usually trigger a "null edit", which re-applies secondary data updates but does not create a new revision. So PageUpdater will need a mode that forces the creation of empty dummy revisions.

Related Objects

StatusAssignedTask
Declineddchen
OpenNone
OpenNone
DuplicateNone
OpenNone
ResolvedAbit
OpenNone
OpenNone
OpenNone
OpenNone
DuplicateNone
OpenNone
OpenNone
OpenNone
OpenNone
OpenNone
Resolvedppelberg
ResolvedKrinkle
OpenNone
OpenNone
OpenNone
OpenNone
OpenNone
OpenNone
OpenNone

Event Timeline

daniel created this task.Jun 27 2018, 10:24 AM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJun 27 2018, 10:24 AM
daniel claimed this task.Jun 27 2018, 10:24 AM

Change 441595 had a related patch set uploaded (by Daniel Kinzler; owner: Daniel Kinzler):
[mediawiki/core@master] MCR Use PageUpdater to create dummy revisions.

https://gerrit.wikimedia.org/r/441595

CCicalese_WMF triaged this task as Normal priority.Dec 18 2018, 3:52 PM
daniel removed daniel as the assignee of this task.Jan 22 2019, 3:24 PM

This should not block the schema migration, but if we are mistaken on this please draw Core Platform's attention to it.