Last modified: 2012-06-15 13:25:43 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T17853, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 15853 - Spurious RSS updates for non-existent pages
Spurious RSS updates for non-existent pages
Status: RESOLVED FIXED
Product: MediaWiki
Classification: Unclassified
History/Diffs (Other open bugs)
unspecified
All All
: Low normal with 1 vote (vote)
: ---
Assigned To: Nobody - You can work on this!
: patch, patch-need-review
Depends on:
Blocks: feeds
  Show dependency treegraph
 
Reported: 2008-10-05 17:13 UTC by Alan De Smet
Modified: 2012-06-15 13:25 UTC (History)
4 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments
Detect requests for a history feed of a non-existant article (529 bytes, patch)
2009-06-25 15:28 UTC, Mormegil
Details
Updated patch (546 bytes, patch)
2011-12-02 11:01 UTC, Mormegil
Details

Description Alan De Smet 2008-10-05 17:13:11 UTC
The RSS feeds for non-existant pages are getting spurious updates about other, unrelated pages, being renamed.  Examples:

* http://en.wikipedia.org/w/index.php?title=Image:Madison_Wisconsin_Flag.svg&feed=rss&action=history - Page used to exist; was moved to Mediawiki.
* http://en.wikipedia.org/w/index.php?title=Image_talk:Varicella_computer_game_screenshot.png&feed=atom&action=history - Page never existed, but matching article does.
* http://en.wikipedia.org/w/index.php?title=Olitext&feed=atom&action=history - Deleted article

The feed contains reported updates and links that to the matching article's history.  Since the article doesn't exist, obviously the links don't work.

Expected behavior: No updates.  Perhaps an empty feed, or a feed with a single static entry (with a non-changing GUID and date!) saying that no such article exists.

Now it may seem silly to follow feeds for non-existant pages, but it an be useful if you want to know if a page is later created.  This is especially likely if you are following an article that does exist, but no matching talk page yet exists.
Comment 1 Mormegil 2009-06-25 15:28:11 UTC
Created attachment 6266 [details]
Detect requests for a history feed of a non-existant article

If the article does not exist, the fetchRevisions() function blindly passes the $this->mTitle->getArticleID() (which is zero), to the query, returning all revisions with rev_page=0.

I guess there should be none, anyway, but 1. there is no point in doing that, 2. it seems that on Wikimedia servers, there are some (see the abovementioned URL).

Either way, there is some code already that copes with an empty feed, so just be checking for a nonexisting page, we begin using that.

The resulting feed is not perfect, though.
Comment 2 Chad H. 2009-12-04 13:15:50 UTC
Fixed in r59730.
Comment 3 Chad H. 2009-12-04 16:04:48 UTC
Reverted myself in r59737.
Comment 4 Sumana Harihareswara 2011-11-22 23:31:47 UTC
Alan, is this problem still happening?  Can you still reproduce it?

Mormegil, as you can see in the comments for https://www.mediawiki.org/wiki/Special:Code/MediaWiki/59730 and https://www.mediawiki.org/wiki/Special:Code/MediaWiki/59737 , Chad originally committed your patch, but had to revert it because it caused some warnings, as well as a possible regression.  Now, the codebase has changed enough that your patch doesn't apply cleanly to trunk anymore.  I'm sorry.

If you have the time and the interest to update and revise your patch, please do!  Thanks for the contribution.
Comment 5 Sumana Harihareswara 2011-11-22 23:32:12 UTC
Comment on attachment 6266 [details]
Detect requests for a history feed of a non-existant article

Patch is obsolete and no longer applies cleanly against trunk, per
http://lists.wikimedia.org/pipermail/wikitech-l/2011-November/056340.html
automated testing.
Comment 6 Alan De Smet 2011-11-23 00:23:07 UTC
Sumana, yes, I'm still seeing it.  I've seen spurious updates go by as recently as November 11th, 2011.  Two of the original examples I gave still have spurious updates (the last has since become a "real" page):
*
http://en.wikipedia.org/w/index.php?title=Image:Madison_Wisconsin_Flag.svg&feed=rss&action=history
* http://en.wikipedia.org/w/index.php?title=Olitext&feed=atom&action=history

A few other pages that I saw go by in my RSS aggregator recently:

* http://en.wikipedia.org/w/index.php?title=User:Alan_De_Smet%2FGoOFF&feed=atom&action=history
* http://en.wikipedia.org/w/index.php?title=Xlear_Nasal_Wash&feed=atom&action=history
* http://en.wikipedia.org/w/index.php?title=Image_talk:Aaron_Williams_of_Nodwick_at_Gen_Con.jpg&feed=atom&action=history
Comment 7 Mormegil 2011-12-02 11:01:39 UTC
Created attachment 9598 [details]
Updated patch

(In reply to comment #4)
> If you have the time and the interest to update and revise your patch, please
> do!

The reasoning behind is bascially still the same – the only thing that changed is that fetchRevisions() now returns a ResultWrapper instead of a simple array (and performs “->numRows()” on it), so we need to return that. (There were more possible solutions here, I chose the simplest one.)
Comment 8 Sumana Harihareswara 2012-05-16 19:58:38 UTC
Mormegil, thanks for the update.  I suggest you submit it directly into Git, our
source control system. You can do that with developer access:
https://www.mediawiki.org/wiki/Developer_access  That way it'll get reviewed faster.
 
Thanks!
Comment 9 Mormegil 2012-06-15 13:25:43 UTC
Patch committed with Gerrit change #10752 and successfully merged.

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links