Last modified: 2011-10-07 21:00:52 UTC

Wikimedia Bugzilla is closed!

Wikimedia has migrated from Bugzilla to Phabricator. Bug reports should be created and updated in Wikimedia Phabricator instead. Please create an account in Phabricator and add your Bugzilla email address to it.
Wikimedia Bugzilla is read-only. If you try to edit or create any bug report in Bugzilla you will be shown an intentional error message.
In order to access the Phabricator task corresponding to a Bugzilla report, just remove "static-" from its URL.
You could still run searches in Bugzilla or access your list of votes but bug reports will obviously not be up-to-date in Bugzilla.
Bug 7601 - Diff can cause httpd to hang and peg cpu
Diff can cause httpd to hang and peg cpu
Product: MediaWiki
Classification: Unclassified
History/Diffs (Other open bugs)
Other Linux
: Lowest minor (vote)
: ---
Assigned To: Nobody - You can work on this!
: 9410 14867 20041 (view as bug list)
Depends on:
  Show dependency treegraph
Reported: 2006-10-16 14:41 UTC by tester
Modified: 2011-10-07 21:00 UTC (History)
4 users (show)

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


Description tester 2006-10-16 14:41:30 UTC
This is with mediawiki 1.8.2

If a spammer posts a page revision a with 2000 lines of spam links which are
enclosed in square brackets, then a subsequent 'diff' of that page with the
previous revision can cause mediawiki to hang and cause httpd to peg the CPU.

Repeated occurances of this on a server (even over a period of days) can cause
multiple httpd processes to hang, and can eventually cause total depletion of
the system's swap space.
Comment 1 tester 2006-10-16 14:57:09 UTC
Under FC5 with apache-2.2.2 and php-5.1.4
Comment 2 Peter Strömberg 2006-11-28 16:02:30 UTC
This problem quickly gets huge if such a diff is included in the rss feeds. I
had to disable recent changes feeds on my mediawiki site because it immediately
(after a httpd restart) started using up about all apache and system resources.
Comment 3 Peter Strömberg 2006-11-29 20:50:25 UTC
Siteowners might be interested in knowing that using the wikidiff2 extension
dodges this bug.
Comment 4 Rob Church 2006-12-27 08:17:39 UTC
This is because the built-in difference engine is rather slow and inefficient
when called multiple times; if wikis are large enough that a large number of
diff requests are anticipated, then the wikidiff2 extension should be installed,
which is a compiled form of the same algorithm, and works a lot faster.
Comment 5 Chad H. 2009-05-07 15:45:16 UTC
*** Bug 14867 has been marked as a duplicate of this bug. ***
Comment 6 Tim Starling 2009-05-07 16:53:58 UTC
Reducing priority/severity, nobody cares. 
Comment 7 Brion Vibber 2009-05-07 18:20:35 UTC
It would be nice to have a) a faster default implementation and b) cleaner resource limits so ultra-long diffs can be aborted internally without killing the whole UI or RSS feed generation.
Comment 8 Chad H. 2009-08-04 22:27:00 UTC
*** Bug 20041 has been marked as a duplicate of this bug. ***
Comment 9 Chad H. 2010-05-21 19:51:20 UTC
*** Bug 9410 has been marked as a duplicate of this bug. ***
Comment 10 Sumana Harihareswara 2011-10-07 21:00:52 UTC
Can anyone reproduce this on MediaWiki 1.17.0 or later?  I just played around a bunch with 1.18 via a test wiki <> and couldn't reproduce the issue.  Please reopen if you can reproduce this problem on a recent version of MediaWiki.

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