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

Alexandru Gheorghe alghe.global at gmail.com
Wed Oct 22 15:58:05 UTC 2014



On 10/22/2014 06:50 PM, vivo75 at gmail.com wrote:
> 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
Btw, not all do that, kudzu is an example.

> 
>>  
>>>> Could this be useful? At least it will allow some more handling by
>>>> knowing if it's an error (1) or it really succeeded (0), and that is
>>>> already in the state wanted (5) when tried so.
>>>>
>>>> --
>>>> ; Alexandru Gheorghe
>>>> ; alghe.global {at} gmail {dot} com
>>>> ; OpenPGP key ID 0xCAF985D2
>>>>
> 
> _______________________________________________
> lxc-devel mailing list
> lxc-devel at lists.linuxcontainers.org
> http://lists.linuxcontainers.org/listinfo/lxc-devel
> 

-- 
; Alexandru Gheorghe
; alghe.global {at} gmail {dot} com
; OpenPGP key ID 0xCAF985D2

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: OpenPGP digital signature
URL: <http://lists.linuxcontainers.org/pipermail/lxc-devel/attachments/20141022/81c68bf7/attachment.sig>


More information about the lxc-devel mailing list