Project

General

Profile

Huge change sets and out of memory conditions

Added by Cheyenne Wills about 12 years ago

I'm running into an out of memory condition with subversion and some very large changesets. The problem appears to be happening when a user tries to view differences between two changes, mostly the change associated with creating a new release tag (which happens to be an entire copy of the source tree).

I've bumped the memory on the system up to 16g, which seems to help. Redmine ( Redmine 1.2.1 running under apache/passenger) now shows about 10g after viewing one of these "changes" (and of course it doesn't drop back down..).

The diff limit option in settings seems to limit the output displayed, not the amount collected behind the scenes.

Any suggestions or hints would be appreciated.


Replies (2)

RE: Huge change sets and out of memory conditions - Added by Cheyenne Wills about 12 years ago

Issue #7699 seems to be what is happening, but it appears to be resolved without any resolution....

RE: Huge change sets and out of memory conditions - Added by Cheyenne Wills about 12 years ago

Actually in deeper review, issue #7699 is a different problem.

The problem that I'm seeing is in the processing of the output of an svn diff command. While the UnifiedDiff function limits the amount of data that is displayed, it does not limit the amount of data that is collected. Given a large enough difference between two scm reversions, memory can be exhausted in the {scm}_adapter.rb diff function.

I've opened a feature request (#10203) requesting a change to the {scm}_adapter.rb diff function to limit the amount of data collected from the command.

    (1-2/2)