Steve, I'm looking at your change to gssd.conf and idmapd.conf, and it
looks like you've got a race condition.  You add the following to the
pre-start script of both:

        if ! mountpoint -q "$PIPEFS_MOUNTPOINT"
        then
                mount -t rpc_pipefs rpc_pipefs "$PIPEFS_MOUNTPOINT"
        fi

The problem is that the filesystem could get mounted between when you
check with mountpoint and when you call mount.  And because mount is the
last command in the pre-start script, if it fails then the pre-start
will fail, preventing the job from starting.  I haven't actually seen
this issue, but since two jobs are running this same code around the
same time, it definitely seems like a possibility.

Probably a simple "|| true" on the mount command would be sufficient.
If the mountpoint isn't actually there when rpc.gssd or rpc.idmapd
starts, that process will exit and upstart will retry.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/811823

Title:
  idmapd upstart job ends in an inconsistent state if /usr is a separate
  partition

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/nfs-utils/+bug/811823/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to