Page MenuHomePhabricator

Multiple special page transclusions all display the same as the first transclusion present
Closed, ResolvedPublic

Description

https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B5%D0%BA%D1%82:%D0%98%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8?uselang=en

ru.wikipedia.org screen capture 2016-04-13_09-33-30.png (594×1 px, 159 KB)

The page included 3 recent change call for three different lists
before was all right - there were three different displaying
but already a few days it shows the same list of the first call - all become equally displayed

Event Timeline

Krenair subscribed.

I copied the code that shows these transclusions of Special:RecentChangesLinked to https://ru.wikipedia.org/wiki/%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Krenair/sandbox - I notice that if you go to edit the page and change the first one's namespace to 3, they *all* start showing "No changes during the given period matching these criteria."

Krenair renamed this task from Inclusion related changes become equally displayed to Multiple transclusions of Special:RecentChangesLinked all display the same as the first transclusion present.Apr 13 2016, 3:30 PM

For a simple test case:

{{Special:RecentChanges|limit=1}}
----
{{Special:RecentChanges|limit=2}}
----
{{Special:RecentChanges|limit=3}}

This gives me three identical results (with a single item) on en.wp.

Krenair renamed this task from Multiple transclusions of Special:RecentChangesLinked all display the same as the first transclusion present to Multiple special page transclusions all display the same as the first transclusion present.Apr 13 2016, 8:42 PM
Florian added a subscriber: daniel.

Hmm, damn, @Catrope, @daniel and I thought about possible side effects of this change, but we haven't thought about multiple inclusion.

Change 283326 had a related patch set uploaded (by Florianschmidtwelzow):
Don't cache SpecialPage object for transcluded pages

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

Hello, @Glaisher, could you explain why do you think these two tasks have something common at all? Thank you.

Hello, @Glaisher, could you explain why do you think these two tasks have something common at all? Thank you.

Sorry, on further look, these are two different bugs.

Legoktm triaged this task as High priority.Nov 8 2016, 4:11 AM
Legoktm added a project: MW-1.28-release.
Legoktm subscribed.

I'm adding this as a 1.28 release blocker, and left a comment on T123995#2778619 which caused this bug.

Change 320723 had a related patch set uploaded (by Legoktm):
Revert "Don't construct SpecialPages twice"

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

Change 320723 merged by jenkins-bot:
Revert "Don't construct SpecialPages twice"

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

Change 320726 had a related patch set uploaded (by Legoktm):
Revert "Don't construct SpecialPages twice"

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

Legoktm claimed this task.

The fix for this will be deployed to Wikimedia sites next week, and included in 1.28.

Change 320726 merged by jenkins-bot:
Revert "Don't construct SpecialPages twice"

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

For information: The bug were happen, because the Special:RecentChanges cached some options and filters as member variable, which gets not cleared when the object was reused and thus using the old options and filter showing the same data twice. See https://gerrit.wikimedia.org/r/#/c/308144/