Page MenuHomePhabricator

When too many revisions are revealed at once using the IP reveal APIs, the request fails because the URL is too long
Closed, ResolvedPublic

Description

Steps to reproduce
  1. Go to https://sh.wikipedia.org/wiki/Posebno:Doprinosi/~2024-7890
  2. Click "500" to show 500 revisions
  3. Click "Show IP"
What happens?

"Show IP" is replaced by "(error)" without any other detail or information.

image.png (570×1 px, 215 KB)

What should have happened instead?
  • Either "Show IP" should result in the underlying IP becoming visible OR
  • A helpful explanation of what happened appears
Note
  • I could not reproduce this issue with other temp accounts on the same wiki

Details

Event Timeline

Niharika triaged this task as High priority.Feb 4 2025, 4:44 AM

The issue is a 414 (URI too long). @Niharika's pager is configured to show 1,000 rows, and the URL generated ends up looking something like:

https://sh.wikipedia.org/w/rest.php/checkuser/v0/temporaryaccount/~2024-7890/revisions/42420867%7C42420865%7C42420864%7C42420854%7C42420847%7C42420846%7C42420818%7C42420816%7C42420815%7C42420814%7C42420809%7C42420689%7C42420685%7C42420684%7C42420683%7C42420682%7C42420681%7C42420680%7C42420679%7C42420677%7C42420676%7C42420675%7C42420674%7C42420673%7C42420672%7C42420671%7C42420670%7C42420669%7C42420668%7C42420667%7C42420666%7C42420665%7C42420664%7C42420661%7C42420597%7C42420595%7C42420594%7C42420593%7C42420577%7C42420574%7C42420572%7C42420569%7C42420567%7C42420566%7C42420563%7C42420562%7C42420561%7C42420559%7C42420558%7C42420534

We recently did some work to facilitate batch reveals of IP addresses for multiple users on a page (T369688: Batch the requests to reveal temp account IP addresses); we probably need to reuse that infrastructure for batch reveals on the Special:Contributions page.

We should consider how this interacts with other pages where we might see a request that exceeds the URL limit. Perhaps we should make the code use the batch-temporaryaccount API if the generated URL is too long.

This is a good bug to fix, but probably not super urgent either.

This is a good bug to fix, but probably not super urgent either.

Should re-triage as no longer "High" given this?

kostajh lowered the priority of this task from High to Medium.Feb 28 2025, 1:55 PM
Dreamy_Jazz renamed this task from [Bug] Temp Accounts displays "Show IP" but errors out without any information on shwiki to When too many revisions are revealed at once using the IP reveal APIs, the request fails because the URL is too long.May 21 2025, 10:54 AM
Dreamy_Jazz updated the task description. (Show Details)

(Just to note, this is still happening).

Change #1167909 had a related patch set uploaded (by Harroyo-wmf; author: Harroyo-wmf):

[mediawiki/extensions/CheckUser@master] WiP

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

Some tests are failing after yesterday's rework of the patch, moving back to "In Progress"

Change #1167909 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] ipreveal: Pass revision IDs using POST

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

Djackson-ctr subscribed.

The new code has been implemented and is functioning as expected (Selecting Show IP on the Special:Contributions page, will reveal the IP Address instead of the error message).
QA was completed for this ticket using LocalHost: Mediawiki 1.45.0-alpha (a10c31d)