Page MenuHomePhabricator

Remove the ability to write pre-MCR fields, limit the ability to read pre-MCR fields to migration scripts
Closed, ResolvedPublic

Description

Once all code has been ported to use the new MCR schema, B/C code for writing the legacy schema should be removed:

  • remove support for writing pre-MCR schema from RevisionStore, WikiPage, and related classes
  • move support for reading pre-MCR schema out of RevisionStore and friends, into code that is specific to the update process. We'll probably need to keep it there forever, but there is no reason to have it in the main code base.
  • remove $wgMultiContentRevisionSchemaMigrationStage variable. We should probably still have code that checks if that variable is set to something other than READ_NEW | WRITE_NEW. In that case, MediaWiki should fail with a meaningful error message, telling the wiki's owner to update the schema.

This requires the removal of all references to rev_text_id and ar_rev_id, and any other direct access to the legacy schema, in the code base (including extensions).

Related Objects

StatusSubtypeAssignedTask
Declineddchen
OpenNone
OpenNone
DuplicateNone
OpenFeatureNone
OpenBUG REPORTNone
OpenNone
StalledNone
OpenFeatureNone
DuplicateNone
ResolvedNone
OpenNone
OpenNone
OpenFeatureNone
OpenNone
ResolvedNone
ResolvedNone
OpenFeatureNone
OpenNone
OpenFeatureNone
StalledNone
OpenNone
InvalidNone
ResolvedNone
ResolvedZabe
Resolveddaniel
Resolveddaniel
ResolvedBPirkle
ResolvedCCicalese_WMF

Event Timeline

@BPirkle want to look into this? No need to drop other stuff if you are busy. This is just something that's coming up, and seems like something you could take on.

I'm happy to, but it appears that I cannot edit or claim the task.

I was, however, able to claim T198341. I'll start there.

I'm happy to, but it appears that I cannot edit or claim the task.

That's odd, there should not be any restrictions to that effect. @Aklapper can you have a look? Thanks!

@daniel Given 1.33 has already been cut and scheduled to be released this month, is this something we should defer to the MW 1.34 milestone instead? Or do we have reason to backport it to 1.33 with limited testing? (Or perhaps has this already been resolved?)

Agree, this should be moved to 1.34.

Agree, this should be moved to 1.34.

Sadly, yes. This is very close to done, but didn't quite make it in.

daniel renamed this task from Remove support for legacy pre-MCR schema to Remove support for writing to the pre-MCR schema.Aug 5 2019, 11:25 AM
daniel updated the task description. (Show Details)

Hey there, should this be moved to 1.35? The cut is a couple of weeks away? If it needs to go out in 1.34, is there anything I can do to help get it out of the door?

Hey there, should this be moved to 1.35? The cut is a couple of weeks away? If it needs to go out in 1.34, is there anything I can do to help get it out of the door?

Yes, removing the code can wait. We should default to "new schema only" in 1.34, but that's tracked in a separate ticket.

daniel renamed this task from Remove support for writing to the pre-MCR schema to Remove the ability to write pre-MCR fields, limit the ability to read pre-MCR fields to migration scripts.Sep 6 2019, 8:46 AM

Change 558581 had a related patch set uploaded (by Daniel Kinzler; owner: Daniel Kinzler):
[mediawiki/core@master] [DNM] Remove compat code for pre-MCR schema.

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

Moving to clinic duty, since I'm working on this now.

Change 558581 merged by jenkins-bot:
[mediawiki/core@master] Remove compat code for pre-MCR schema.

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

DannyS712 subscribed.

The above patch makes it so that wgContentHandlerUseDB is ignored and always true, with the note @todo remove once no extensions read it any more. - see https://gerrit.wikimedia.org/r/#/q/topic:wgContentHandlerUseDB for removing uses from all repositories hosted on gerrit

Change 583606 had a related patch set uploaded (by Anomie; owner: Anomie):
[mediawiki/core@master] MovePage: Remove pre-MCR code

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

Change 583606 merged by jenkins-bot:
[mediawiki/core@master] MovePage: Remove pre-MCR code

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

CCicalese_WMF added a subscriber: Anomie.

@daniel @Anomie Is there anything remaining to be done for this task?

It's done, as far as I know