codehosting server busy-loops when the branch root directory does not exist

Bug #153550 reported by James Henstridge
2
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
Low
Jonathan Lange

Bug Description

I was testing out the codehosting server locally, and had not created the /var/tmp/sm-ng directory. When I tried to push a branch to it via bzr+ssh, I noticed that the "bzr lp-serve" process was using 100% CPU and not appearing to do anything.

Attaching strace to the process, I saw the following four lines repeated over and over:
  futex(0x7c9fd0, FUTEX_WAKE, 1) = 0
  futex(0x7c9fd0, FUTEX_WAKE, 1) = 0
  futex(0x7c9fd0, FUTEX_WAKE, 1) = 0
  mkdir("/var/tmp/sm-ng/push-branches/", 0777) = -1 ENOENT (No such file or directory)

My guess is that the makedirs() implementation is interacting badly with the chroot transport (i.e. "/" doesn't exist, so it tries to create "/.." which is the same as "/", etc).

Creating /var/tmp/sm-ng fixed the problem, but it'd be good to avoid the busy loop.

Tags: lp-code
Changed in launchpad-bazaar:
assignee: nobody → jml
importance: Undecided → Low
status: New → Confirmed
Revision history for this message
Jonathan Lange (jml) wrote :

This bug doesn't occur for me any more.

Changed in launchpad-bazaar:
status: Confirmed → 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.