Edgewall Software
Modify

Ticket #8530 (closed defect: duplicate)

Opened 3 years ago

Last modified 3 years ago

Viewing xml changesets >= 2200 lines uses 100% of CPU and RAM

Reported by: NickDavidson <nick@…> Owned by:
Priority: normal Milestone:
Component: version control/changeset view Version: 0.11.1
Severity: major Keywords: memory
Cc:
Release Notes:
API Changes:

Description

Using variously mod_python, cgi and fcgi wrappers the following behavior can be observed:

When viewing very large changesets of machine generated xml the current apache2 process will use 100% CPU and huge quantities of RAM. apache2 will keep forking new child processes until trac dies.

Version Info:

  • OS: Debian Lenny i386
  • Python: 2.5.2
  • Apache2: apache2-mpm-prefork 2.2.9-10
  • Database: sqllite (15MB approximately)
  • svn: 1.5.1

Backtrace:

Traceback (most recent call last):

  File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 423, in _dispatch_request

    dispatcher.dispatch(req)

  File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 197, in dispatch

    resp = chosen_handler.process_request(req)

  File "/usr/lib/python2.5/site-packages/trac/versioncontrol/web_ui/changeset.py", line 323, in process_request

    self._render_html(req, repos, chgset, restricted, xhr, data)

  File "/usr/lib/python2.5/site-packages/trac/versioncontrol/web_ui/changeset.py", line 577, in _render_html

    diffs = _content_changes(old_node, new_node)

  File "/usr/lib/python2.5/site-packages/trac/versioncontrol/web_ui/changeset.py", line 519, in _content_changes

    new_content = mview.to_unicode(new_content, new_node.content_type)

  File "/usr/lib/python2.5/site-packages/trac/mimeview/api.py", line 790, in to_unicode

    return to_unicode(content, charset)

  File "/usr/lib/python2.5/site-packages/trac/util/text.py", line 59, in to_unicode

    return unicode(text, charset, 'replace')

  File "/usr/lib/python2.5/encodings/iso8859_15.py", line 15, in decode

    return codecs.charmap_decode(input,errors,decoding_table)

MemoryError

Attachments

Change History

comment:1 Changed 3 years ago by cboos

  • Keywords memory added
  • Resolution set to duplicate
  • Status changed from new to closed

Duplicate of #7975.

See also TracIni#changeset-section for some parameters you could tune.

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
to The owner will be changed from (none). Next status will be 'closed'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.