Page MenuHomePhabricator

Interwiki user rights changes not being logged correctly
Closed, ResolvedPublicBUG REPORT

Description

Steps to replicate the issue (include links if applicable):

  • Have userrights-interwiki
  • Go to Special:UserRights on meta and assign user rights to a user on another wiki (such as AntiCompositeNumber@testwiki )

What happens?:
The user rights are assigned, but it is logged as a Meta user rights change.
See https://meta.wikimedia.org/w/index.php?title=Special:Log&logid=53251946

What should have happened instead?:
The change should have been logged as an interwiki user rights change, like https://meta.wikimedia.org/wiki/Special:Log?type=rights&page=User%3AAntiCompositeNumber%40nlwiki&wpFormIdentifier=logeventslist

Software version (skip for WMF-hosted wikis like Wikipedia):

Other information (browser name/version, screenshots, etc.):

Event Timeline

Please test future Special:UserRights changes with interwiki user rights before deploying to production. This is getting silly.

Change 949939 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/core@master] cross-wiki userrights: Add SpecialUserRights::getDisplayName

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

Change 949582 had a related patch set uploaded (by Urbanecm; author: Umherirrender):

[mediawiki/core@wmf/1.41.0-wmf.22] cross-wiki userrights: Add SpecialUserRights::getDisplayUsername

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

Urbanecm triaged this task as Unbreak Now! priority.Aug 17 2023, 12:32 PM

This causes data pollution in production => train blocker.

Change 949939 merged by jenkins-bot:

[mediawiki/core@master] cross-wiki userrights: Add SpecialUserRights::getDisplayUsername

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

Change 949582 merged by jenkins-bot:

[mediawiki/core@wmf/1.41.0-wmf.22] cross-wiki userrights: Add SpecialUserRights::getDisplayUsername

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

Mentioned in SAL (#wikimedia-operations) [2023-08-17T13:23:05Z] <urbanecm@deploy1002> Started scap: Backport for [[gerrit:949582|cross-wiki userrights: Add SpecialUserRights::getDisplayUsername (T344391 T255309)]], [[gerrit:949577|revalidateLinkRecommendations: Make it possible to revalidate based on score (T316079)]], [[gerrit:949576|revalidateLinkRecommendations: Make it possible to revalidate based on score (T316079)]]

Mentioned in SAL (#wikimedia-operations) [2023-08-17T13:23:55Z] <urbanecm@deploy1002> urbanecm: Backport for [[gerrit:949582|cross-wiki userrights: Add SpecialUserRights::getDisplayUsername (T344391 T255309)]], [[gerrit:949577|revalidateLinkRecommendations: Make it possible to revalidate based on score (T316079)]], [[gerrit:949576|revalidateLinkRecommendations: Make it possible to revalidate based on score (T316079)]] synced to the testservers mwdebug2001.codfw.wmnet, mwdebug2002.c

Mentioned in SAL (#wikimedia-operations) [2023-08-17T13:28:52Z] <urbanecm@deploy1002> Finished scap: Backport for [[gerrit:949582|cross-wiki userrights: Add SpecialUserRights::getDisplayUsername (T344391 T255309)]], [[gerrit:949577|revalidateLinkRecommendations: Make it possible to revalidate based on score (T316079)]], [[gerrit:949576|revalidateLinkRecommendations: Make it possible to revalidate based on score (T316079)]] (duration: 05m 46s)

This is fixed for most cases now (k8s deployment didn't finish properly, once that is fixed, we can resolve this).

Resolved everywhere.

This causes data pollution in production => train blocker.

Just for the record: The data pollution is about 6 log entries - https://meta.wikimedia.org/w/index.php?title=Special:Log/rights&offset=20230817132800S257074&limit=7

I reapplied the rights change for the end user on svwiki, only one that anyone would likely ever go looking for

This causes data pollution in production => train blocker.

Just for the record: The data pollution is about 6 log entries - https://meta.wikimedia.org/w/index.php?title=Special:Log/rights&offset=20230817132800S257074&limit=7

Yes, as the issue was fixed fairly promptly. Would be worse, if it was left unfixed for a couple of days (and nearly unrecoverable, as there is no way to determine which database was actually used).