Page MenuHomePhabricator

Redirects to global user pages are broken, and added to Special:BrokenRedirects
Open, MediumPublic

Description

This can currently be seen on https://www.wikidata.org/wiki/Special:BrokenRedirects

User:DGarry (WMF) (edit | delete) → User:Deskana (WMF)

Where User:Deskana (WMF) is a global user page.

I would probably not expect this to show up here!

Event Timeline

Addshore raised the priority of this task from to Needs Triage.
Addshore updated the task description. (Show Details)
Addshore subscribed.

Well, those redirects *are* broken. https://www.wikidata.org/wiki/User:DGarry_%28WMF%29 doesn't redirect to User:Deskana (WMF) for example.

But it is a valid redirect page, and it is pointing to a valid target, I wouldn't really count that as broken...

Legoktm renamed this task from Redirects to global user pages show up on Special:BrokenRedirects to Redirects to global user pages are broken show up on Special:BrokenRedirects.Aug 2 2015, 7:47 AM
Legoktm added subscribers: Matanya, IKhitron, jayvdb and 2 others.

But it is a valid redirect page, and it is pointing to a valid target, I wouldn't really count that as broken...

It's broken in the sense that it doesn't automatically redirect you. Anyways, updated the bug about redirects to global user pages not working at all.

Pathoschild renamed this task from Redirects to global user pages are broken show up on Special:BrokenRedirects to Redirects to global user pages are broken, and added to Special:BrokenRedirects.Apr 2 2016, 10:35 PM

I'll copy what I wrote on T144048:

As you can see here, those renamed users do have global userpages in their new names. The system however identifies that the redirect is broken, so it lists it in Special:BrokenRedirects. This confuses bots, which mark the page for deletion.

To avoid bot accounts to be blocked for this, Special:BrokenRedirects should be able to know if the page which is redirected is to a global userpage, and if so, then not list it at Special:BrokenRedirects.

Thank you.

Quiddity added a subscriber: Kippenvlees1.
Quiddity subscribed.

Copy from merged task:

It seems that the special page "BrokenRedirects" does not take the new addition of Global User Pages into account when deciding if a redirect leads to nowhere.

I found this bug while dealing with the Dutch Wikipedia's broken redirects, where the page User:Nrautava redirects to the "empty" User:OneMember which is filled by a global userpage.

Problem seems to have been fixed. I haven't noticed this error pop up on the Dutch Wikipedia for a few months and found no Global User Pages lingering on the sample I just did on the top 5 wikis. I think this can be marked as resolved.

Problem seems to have been fixed. I haven't noticed this error pop up on the Dutch Wikipedia for a few months and found no Global User Pages lingering on the sample I just did on the top 5 wikis. I think this can be marked as resolved.

I can see it every day.

Change 492038 had a related patch set uploaded (by Gerrit Patch Uploader; owner: Superyetkin):
[mediawiki/core@master] Fix the query for SpecialBrokenRedirects.php

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

Change 492038 abandoned by MaxSem:
Fix the query for SpecialBrokenRedirects.php

Reason:
At Superyetkin's request.

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

Ammarpad triaged this task as Medium priority.Feb 13 2022, 10:24 AM

Change 762103 had a related patch set uploaded (by Ammarpad; author: Ammarpad):

[mediawiki/core@master] SpecialBrokenRedirects: Add hook to allow modifying query info

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

@Ammarpad your patch looks correct to me for what it does (adding the hook), but given that redirects to global userpages don't work (ex: https://test.wikipedia.org/wiki/User:Legoktm/T90978), isn't it correct that they're listed as broken? It would be nice if we could get redirects to just work...

... given that redirects to global userpages don't work (ex: https://test.wikipedia.org/wiki/User:Legoktm/T90978), isn't it correct that they're listed as broken?

Well, the issue is they don't work because they're broken, and they're broken because they don't work!

For clarity, https://test.wikipedia.org/wiki/User:Legoktm/T90978 does not redirect because the target (https://test.wikipedia.org/wiki/User:Legoktm) does not exist in traditional sense (page id == 0). Only GlobalUserPage knows that https://test.wikipedia.org/wiki/User:Legoktm magically exists. To make the redirect actually works, the extension has to let core know that the page exists, and it needs the hook in the above patch to do so.

Once the redirect works, it will also disappear from Special:BrokenRedirect

It would be nice if we could get redirects to just work...

That'd be done in GlobalUserPage in a separate patch. But that requires the above core change first.~

PS. On further checks, I think "get redirects to just work..." can be fixed without the query hook part. I'll do that shortly. But probably Special:BrokenRedirect will not be fixed by that, since it does direct database query.

Change 762440 had a related patch set uploaded (by Ammarpad; author: Ammarpad):

[mediawiki/core@master] Make redirects to global userpages work

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

Change 762440 abandoned by Ammarpad:

[mediawiki/core@master] Make redirects to global userpages work

Reason:

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

Change 762103 abandoned by Ammarpad:

[mediawiki/core@master] SpecialBrokenRedirects: Add hook to allow modifying query info

Reason:

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