Deploy refactored actor storage
Open, Needs TriagePublic

Description

The high-level checklist:

  • 1. Merge the first patch for T167246: Refactor "user" & "user_text" fields into "actor" reference table (adding new schemas and code)
  • 1.1. Check deployed extensions for needed updates.
  • 2. Perform schema change (T188299)
  • Interrupt: Remove read-both (gerrit:461440)
  • 3. Turn the feature flag to "write both, read old". See if stuff breaks.
  • 4. Run the maintenance script(s) to migrate all the old stuff to new stuff.
  • 5. Turn the feature flag to "write both, read new". See if stuff breaks.
  • 5.1. Announce the pending change to wikitech-l@ and cloud@, and give time for people to update.
  • 5.2. Make sure all deployed extensions are updated.
  • 6. Turn the feature flag to "new only".
  • 7. Merge the second patch for T167246 (removing old schemas and code)
  • 7.1. Submit schema change (task TBD)

Related Objects

Anomie created this task.Feb 26 2018, 10:31 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptFeb 26 2018, 10:31 PM

Note this is blocked on T187089, since the actor-related changes to the image table are included in that task rather than T188299. In turn, that's blocked on the DC switch so the eqiad masters can be changed without having to failover all the masters.

Nirmos added a subscriber: Nirmos.May 30 2018, 6:54 PM
Anomie updated the task description. (Show Details)Sep 17 2018, 3:03 PM

Change 460916 had a related patch set uploaded (by Anomie; owner: Anomie):
[operations/mediawiki-config@master] Set actor and comment schema migrations for Beta Cluster

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

Change 460916 merged by jenkins-bot:
[operations/mediawiki-config@master] Set actor and comment schema migrations for Beta Cluster

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

Change 460923 had a related patch set uploaded (by Anomie; owner: Anomie):
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => WRITE_BOTH on test wikis, mw.org

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

Change 460923 merged by jenkins-bot:
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => WRITE_BOTH on test wikis, mw.org

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

Mentioned in SAL (#wikimedia-operations) [2018-09-17T16:18:03Z] <anomie@deploy1001> Synchronized wmf-config/InitialiseSettings.php: Setting wgActorTableSchemaMigrationStage = WRITE_BOTH on test wikis, mw.org (T188327) (duration: 00m 50s)

Change 461209 had a related patch set uploaded (by Anomie; owner: Anomie):
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => OLD on test wikis, mw.org

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

Change 461209 merged by jenkins-bot:
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => OLD on test wikis, mw.org

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

Mentioned in SAL (#wikimedia-operations) [2018-09-18T20:58:52Z] <catrope@deploy1001> Synchronized wmf-config/InitialiseSettings.php: Set ActorTableSchemaMigrationStage back to OLD on test wikis, mediawikiwiki (T188327, T204669) (duration: 00m 57s)

Anomie updated the task description. (Show Details)Oct 3 2018, 5:45 PM
Anomie updated the task description. (Show Details)Oct 11 2018, 6:44 PM
Anomie updated the task description. (Show Details)Tue, Nov 13, 4:18 PM

Change 473241 had a related patch set uploaded (by Anomie; owner: Anomie):
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => write-both/read-old on test wikis & mediawikiwiki

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

Change 473241 merged by jenkins-bot:
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => write-both/read-old on test wikis & mediawikiwiki

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

Mentioned in SAL (#wikimedia-operations) [2018-11-13T16:22:45Z] <anomie@deploy1001> Synchronized wmf-config/InitialiseSettings.php: Setting actor migration to write-both/read-old on test wikis and mediawikiwiki (T188327) (duration: 00m 54s)

Change 474704 had a related patch set uploaded (by Anomie; owner: Anomie):
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => write-both/read-old on group 0

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

Change 474704 merged by jenkins-bot:
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => write-both/read-old on group 0

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

Mentioned in SAL (#wikimedia-operations) [2018-11-19T15:08:29Z] <anomie@deploy1001> Synchronized wmf-config/InitialiseSettings.php: Setting actor migration to write-both/read-old on group 0 (T188327) (duration: 00m 47s)

Change 475767 had a related patch set uploaded (by Anomie; owner: Anomie):
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => write-both/read-old on group 1

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

Change 475767 merged by jenkins-bot:
[operations/mediawiki-config@master] Set ActorTableSchemaMigrationStage => write-both/read-old on group 1

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

Mentioned in SAL (#wikimedia-operations) [2018-11-26T15:24:49Z] <anomie@deploy1001> Synchronized wmf-config/InitialiseSettings.php: Setting actor migration to write-both/read-old on group 1 (T188327) (duration: 00m 46s)

CannotCreateActorException from line 2540 of /srv/mediawiki/php-1.33.0-wmf.6/includes/user/User.php: Cannot create an actor for a usable name that is not an existing user

Happened when deploying 1.33.0-wmf.6 to all wikis. Seems it was solely for wiktionary. Filled as T210732