[Bug 933566] Re: Stopping resolvconf doesn't disable updates

Steve Langasek steve.langasek at canonical.com
Fri Feb 17 23:43:06 UTC 2012


On Fri, Feb 17, 2012 at 02:05:02PM -0000, Thomas Hood wrote:

> Using post-stop has the consequence that any error during the resolvconf
> update run in the upstart job causes resolvconf updates to be disabled. 
> That is undesirable IMHO.

This is entirely by design.  If the errors in the hook scripts should not
cause resolvconf to redisable itself, then resolvconf should be changed to
not return a non-zero exit code here.  Otherwise, it's impossible for the
upstart job to distinguish between a fatal error setting up resolvconf
(which should result in the job being marked as "stopped") and an ignorable
hook failure.

We *want* to know if resolvconf has failed to be set up, so that the job's
state reflects reality, and so that when things are broken, 'service
resolvconf start' does the right thing.  The unwinding in the post-stop is
an intented side-effect of the job not being considered successfully
started.  So the root bug is that resolvconf is returning an error in a case
where it apparently doesn't need to.

Should we adjust resolvconf to not take hook failures into consideration for
its return code?

>  Using pre-stop does not have this consequence.

Only because of a bug that prevents the pre-stop script from being run at
all.  If and when that bug is fixed, the pre-stop script will have the exact
same effect.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek at ubuntu.com                                     vorlon at debian.org

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

Title:
  Stopping resolvconf doesn't disable updates

Status in “resolvconf” package in Ubuntu:
  Fix Committed
Status in “upstart” package in Ubuntu:
  New

Bug description:
  Stopping the resolvconf job should disable updates by means of
  deleting the enable-updates flag file, but this does not happen.

  # ls -l /run/resolvconf
  total 4
  -rw-r--r-- 1 root root   0 2012-02-16 17:02 enable-updates
  drwxr-xr-x 2 root root  60 2012-02-16 17:02 interface
  -rw-r--r-- 1 root root 177 2012-02-16 17:02 resolv.conf
  # stop resolvconf
  stop: Unknown instance: 
  # ls -l /run/resolvconf
  total 4
  -rw-r--r-- 1 root root   0 2012-02-16 17:02 enable-updates
  drwxr-xr-x 2 root root  60 2012-02-16 17:02 interface
  -rw-r--r-- 1 root root 177 2012-02-16 17:02 resolv.conf
  # start resolvconf 
  resolvconf start/running
  # stop resolvconf
  resolvconf stop/waiting
  # ls -l /run/resolvconf
  total 4
  -rw-r--r-- 1 root root   0 2012-02-16 17:06 enable-updates
  drwxr-xr-x 2 root root  60 2012-02-16 17:02 interface
  -rw-r--r-- 1 root root 177 2012-02-16 17:02 resolv.conf

  
  The following change seems to fix this.

  
  --- /etc/init/resolvconf.conf_ORIG	2012-02-16 17:09:22.313489458 +0100
  +++ /etc/init/resolvconf.conf	2012-02-16 17:08:31.398957282 +0100
  @@ -14,6 +14,6 @@
   	resolvconf --enable-updates
   end script
   
  -pre-stop script
  +post-stop script
   	resolvconf --disable-updates
   end script

  
  # stop resolvconf
  resolvconf stop/waiting
  # ls -l /run/resolvconf
  total 4
  drwxr-xr-x 2 root root  60 2012-02-16 17:02 interface
  -rw-r--r-- 1 root root 177 2012-02-16 17:02 resolv.conf

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/resolvconf/+bug/933566/+subscriptions




More information about the foundations-bugs mailing list