Last modified: 2011-10-07 21:00:52 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 T9601, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 7601 - Diff can cause httpd to hang and peg cpu
Diff can cause httpd to hang and peg cpu
Status: RESOLVED WORKSFORME
Product: MediaWiki
Classification: Unclassified
History/Diffs (Other open bugs)
1.8.x
Other Linux
: Lowest minor (vote)
: ---
Assigned To: Nobody - You can work on this!
:
: 9410 14867 20041 (view as bug list)
Depends on:
Blocks:
  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: ---


Attachments

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 <https://secure.wikimedia.org/wikipedia/test2/wiki/Why_is_there_an_article%3F> 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.


Navigation
Links