Svn import of ruby taking 2.7G RSS

Bug #536486 reported by Tom Haddon
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
High
Unassigned

Bug Description

Following up on a swap alert for neumayer, I saw this:

importd@neumayer:~$ ps fuwwxx | egrep '10691|USER'
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
importd 9801 0.0 0.0 3000 740 pts/1 S+ 12:19 0:00 \_ egrep 10691|USER
importd 10691 12.2 69.4 3057024 2838116 pts/0 Ss+ 04:16 59:05 \_ /usr/bin/python2.5 /srv/importd.launchpad.net/production/launchpad-rev-9072/scripts/code-import-worker.py 14023 bzr-svn http://svn.ruby-lang.org/repos/ruby/trunk

This seems somewhat excessive.

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

And it OOMed in the end! Yowee.

Luckily the fix is clear: incremental imports, which bzr-svn has recently been modified to support. Adapting Launchpad to take advantage should be easy, and will be done this cycle.

Changed in launchpad-code:
status: New → Triaged
milestone: none → 10.03
assignee: nobody → Michael Hudson (mwhudson)
importance: Undecided → High
Changed in launchpad-code:
status: Triaged → In Progress
Revision history for this message
Ursula Junque (ursinha) wrote : Bug fixed by a commit
Changed in launchpad-code:
status: In Progress → Fix Committed
tags: added: qa-needstesting
Revision history for this message
Steve McInerney (spm) wrote :

seen a mem greedy run on strawberry:

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
importd 15009 4.9 71.3 2405640 1495932 pts/0 Rs+ 18:22 14:37 \_ /usr/bin/python2.5 /srv/importd.staging.launchpad.net/staging/launchpad/scripts/code-import-worker.py 14023 bzr-svn http://svn.ruby-lang.org/repos/ruby/trunk

~ 1.5Gb RSS.

revno 9109 of db-stable

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

The incremental import feature works, but the ruby import still takes too much memory. I'll have to talk to Jelmer about that.

tags: added: qa-ok
removed: qa-needstesting
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

Reopening this, as the incremental import feature doesn't seem to have helped.

tags: added: code-import
removed: qa-ok
Changed in launchpad-code:
status: Fix Committed → Triaged
milestone: 10.03 → none
assignee: Michael Hudson (mwhudson) → nobody
Revision history for this message
Stefan Stasik (stefan-stasik) wrote :

Hi: And yet another OOM incident today, with svn/gcc:

importd@pear:/etc/nagios$ ps faux 17002
importd 17002 13.1 56.6 5075528 3462972 pts/1 Ds+ Mar25 282:04 \_ /usr/bin/python2.5 /srv/importd.launchpad.net/production/launchpad-rev-9093/scripts/code-import-worker.py 321303 bzr-svn svn://gcc.gnu.org/svn/gcc/trunk

We ended up just killing the job before it OOM'ed the box (the new importd host, pear, which has LOTS of RAM & CPU ) .

So this definitely still needs to be addressed.

Revision history for this message
Martin Pool (mbp) wrote : Re: [Bug 536486] Re: Svn import of ruby taking 2.7G RSS

I'm not sure if this will work, but it would be worth trying to get a
meliae dump along the lines of
http://jam-bazaar.blogspot.com/2009/11/memory-debugging-with-meliae.html

but that probably requires running it with a terminal attached.

Perhaps we need a signal that will tell bzr to dump its memory usage
and then exit (or continue.) Or a debug option that always does this.

--
Martin <http://launchpad.net/~mbp/>

Revision history for this message
Steve McInerney (spm) wrote :

Had another one with russkaya and the ruby import.
https://pastebin.canonical.com/30187/

was at 4Gb RSS before being killed.

Tom Haddon (mthaddon)
tags: added: canonical-losa-lp
Revision history for this message
Robert Collins (lifeless) wrote :

We're now fully incremental, this should be a thing of ze past.

Changed in launchpad:
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.