Last modified: 2014-03-17 11:35:58 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T38898, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 36898 - Need interface for diff-based DataUpdates in WIkiPage::doEdit
Need interface for diff-based DataUpdates in WIkiPage::doEdit
Status: NEW
Product: MediaWiki
Classification: Unclassified
Page editing (Other open bugs)
unspecified
All All
: Low minor (vote)
: ---
Assigned To: Nobody - You can work on this!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-05-16 09:36 UTC by Daniel Kinzler
Modified: 2014-03-17 11:35 UTC (History)
4 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description Daniel Kinzler 2012-05-16 09:36:23 UTC
As of recently, DataUpdate objects are used to represent updates to be performed on the database when a page is changed or deleted (basically, DataUpdate is a generalization of LinksUpdate).

Currently, WikiPage::doEdit takes a list of DataUpdate objects from the ParserOutput object and applies them to the database. However, the DataUpdate could be implemented more smartly if the difference between the previous and the new revision could be used,m instead of relying solely on the new revision. 

So, WikiPage::doEdit should call a function that can generate DataUpdate objects based on the (difference between) the previous and the new revision, and apply them to the database.

Conceptually, WikiPage::doEdit should have a way to determine which DataUpdates need to be performed for the current edit, instead of relying on the UpdateObjects from the ParserOutput directly.
Comment 1 Daniel Kinzler 2012-05-16 09:42:48 UTC
An alternative place to implement diff-based updates would be the update of the recentchanges table.

Would it be feasible to even do the update to the recentchanges table in the same transaction (list of DataUpdates) as the update to links tables?
Comment 2 Daniel Kinzler 2012-05-16 09:43:22 UTC
Context: this is needed to feed the global/shared change-tracking table for the Wikibase extension that will run the Wikidata project.
Comment 3 Andre Klapper 2013-10-31 12:17:25 UTC
[replacing wikidata keyword by adding CC - see bug 56417]

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links