[lxc-devel] [PATCH 3/9] lxc_start: ERROR if container is already running.

Serge Hallyn serge.hallyn at ubuntu.com
Wed Oct 22 15:55:24 UTC 2014


Quoting vivo75 at gmail.com (vivo75 at gmail.com):
> Il 22/10/2014 17:43, Dwight Engen ha scritto:
> > On Wed, 22 Oct 2014 14:31:15 +0000
> > Serge Hallyn <serge.hallyn at ubuntu.com> wrote:
> >
> >> Quoting Alexandru Gheorghe (alghe.global at gmail.com):
> >>> On 10/21/2014 07:54 PM, Serge Hallyn wrote:
> >>>> Quoting Dwight Engen (dwight.engen at oracle.com):
> >>>>> On Tue, 21 Oct 2014 09:58:29 -0500
> >>>>> Tycho Andersen <tycho.andersen at canonical.com> wrote:
> >>>>>
> >>>>>> On Tue, Oct 21, 2014 at 02:54:34PM +0000, Serge Hallyn wrote:
> >>>>>>> Quoting Tycho Andersen (tycho.andersen at canonical.com):
> >>>>>>>> On Tue, Oct 21, 2014 at 02:29:28PM +0000, Serge Hallyn wrote:
> >>>>>>>>> Quoting Tycho Andersen (tycho.andersen at canonical.com):
> >>>>>>>>>> On Fri, Oct 10, 2014 at 11:16:54AM +0800, Dongsheng Yang
> >>>>>>>>>> wrote:
> >>>>>>>>>>> We should exit with a error when starting a running
> >>>>>>>>>>> container.
> >>>>>>>>>> Is this intentional? I just noticed it when pulling from
> >>>>>>>>>> master that it breaks some of my scripts. Are we sure it
> >>>>>>>>>> doesn't break anything else?
> >>>>>>>>> Which scripts does it break?
> >>>>>>>> No public ones, just some that I wrote myself. Just curious
> >>>>>>>> if the behavior change was intentional or not (I prefer the
> >>>>>>>> previous behavior :)
> >>>>>>> What exactly is the change?  Did it used to return true
> >>>>>>> instead of false?  The intent was simply to shortcut a bunch
> >>>>>>> of extra work in the case where the container was already
> >>>>>>> running.
> >>>>>> Yes, sorry. It used to exit 0 instead of 1 when the container
> >>>>>> was already running (and didn't print any ERROR or anything).
> >>>>> I also find this a bit inconsistent, we purposefully don't
> >>>>> report an error when doing stop on an already stopped container
> >>>>> (see the early return 0 in lxc_cmd_stop()). I think it can be
> >>>>> argued that its not an error since the command did what the
> >>>>> caller wanted (ensure the container is started/stopped).
> >>>> Ok - I don't want to revert the patch, but am happy to have it
> >>>> return 0.
> >>> Why not return a different code, like 5, when is already running
> >>> (and trying to start)/stopped (and trying to stop it), so wrappers
> >>> can detect this and use the information further?
> >> Yup, that sounds good.  I could just do it I suppose, I've just been
> >> waiting for someone to send a patch :)
> > Won't that still break shell scripts that are testing $?
> And init scripts generally return 0 and output a warning if the service
> is already started, it may be wise to follow the convention

Ok I've pushed a change to return 0.

thanks,
-serge


More information about the lxc-devel mailing list