All of lore.kernel.org
 help / color / mirror / Atom feed
* Design - Cancelling builds
@ 2015-09-01 12:47 Barros Pena, Belen
  2015-09-02 14:31 ` Reyna, David
  0 siblings, 1 reply; 7+ messages in thread
From: Barros Pena, Belen @ 2015-09-01 12:47 UTC (permalink / raw)
  To: toaster

We have been speaking about letting users cancel builds at any point
during the build process. We have a Bugzilla entry for that

https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787

Which now has design attached to it. It should not be controversial in any
way, but if you have any questions / comments, let me know.

Thanks!

Belén



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Design - Cancelling builds
  2015-09-01 12:47 Design - Cancelling builds Barros Pena, Belen
@ 2015-09-02 14:31 ` Reyna, David
  2015-09-02 14:37   ` Barros Pena, Belen
  0 siblings, 1 reply; 7+ messages in thread
From: Reyna, David @ 2015-09-02 14:31 UTC (permalink / raw)
  To: BARROS PENA, BELEN, toaster

Hi Belén,

I have just one question about the backend latency, and how the backend does the cancel.

It appears that when you click "Cancel" the Toaster GUI immediately transitions to show that the build is cancelled and the "Run Again" button appears. Normally when I cancel a build on the command line it can take several minutes for the tasks to cleanly finish up. That would mean that if the user immediately clicks the "Run Again" button in Toaster the backend may not be ready. 

So, how is the cancel handled? Does Toaster try the clean way to stop a build, or does it something radical like killing the build thread?

- David

> -----Original Message-----
> From: toaster-bounces@yoctoproject.org [mailto:toaster-
> bounces@yoctoproject.org] On Behalf Of Barros Pena, Belen
> Sent: Tuesday, September 01, 2015 5:48 AM
> To: toaster@yoctoproject.org
> Subject: [Toaster] Design - Cancelling builds
> 
> We have been speaking about letting users cancel builds at any point
> during the build process. We have a Bugzilla entry for that
> 
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787
> 
> Which now has design attached to it. It should not be controversial in any
> way, but if you have any questions / comments, let me know.
> 
> Thanks!
> 
> Belén
> 
> --
> _______________________________________________
> toaster mailing list
> toaster@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/toaster


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Design - Cancelling builds
  2015-09-02 14:31 ` Reyna, David
@ 2015-09-02 14:37   ` Barros Pena, Belen
  2015-09-03 11:23     ` Barros Pena, Belen
  0 siblings, 1 reply; 7+ messages in thread
From: Barros Pena, Belen @ 2015-09-02 14:37 UTC (permalink / raw)
  To: Reyna, David L (Wind River), toaster



On 02/09/2015 15:31, "Reyna, David" <david.reyna@windriver.com> wrote:

>Hi Belén,
>
>I have just one question about the backend latency, and how the backend
>does the cancel.
>
>It appears that when you click "Cancel" the Toaster GUI immediately
>transitions to show that the build is cancelled and the "Run Again"
>button appears. Normally when I cancel a build on the command line it can
>take several minutes for the tasks to cleanly finish up. That would mean
>that if the user immediately clicks the "Run Again" button in Toaster the
>backend may not be ready.
>
>So, how is the cancel handled? Does Toaster try the clean way to stop a
>build, or does it something radical like killing the build thread?

These are really good questions. The answer is I don't know. I guess some
discussion is needed about the technical implementation details of this
feature. 

If a delay is likely between clicking 'cancel' and the build being
stopped, we can create a 'cancelling' state for builds in the UI. I will
make sure to add that to the design document.

Cheers

Belén

>
>- David
>
>> -----Original Message-----
>> From: toaster-bounces@yoctoproject.org [mailto:toaster-
>> bounces@yoctoproject.org] On Behalf Of Barros Pena, Belen
>> Sent: Tuesday, September 01, 2015 5:48 AM
>> To: toaster@yoctoproject.org
>> Subject: [Toaster] Design - Cancelling builds
>>
>> We have been speaking about letting users cancel builds at any point
>> during the build process. We have a Bugzilla entry for that
>>
>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787
>>
>> Which now has design attached to it. It should not be controversial in
>>any
>> way, but if you have any questions / comments, let me know.
>>
>> Thanks!
>>
>> Belén
>>
>> --
>> _______________________________________________
>> toaster mailing list
>> toaster@yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/toaster



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Design - Cancelling builds
  2015-09-02 14:37   ` Barros Pena, Belen
@ 2015-09-03 11:23     ` Barros Pena, Belen
  2015-09-03 13:14       ` sujith h
  0 siblings, 1 reply; 7+ messages in thread
From: Barros Pena, Belen @ 2015-09-03 11:23 UTC (permalink / raw)
  To: Reyna, David L (Wind River), toaster



On 02/09/2015 15:37, "Barros Pena, Belen" <belen.barros.pena@intel.com>
wrote:

>
>
>On 02/09/2015 15:31, "Reyna, David" <david.reyna@windriver.com> wrote:
>
>>Hi Belén,
>>
>>I have just one question about the backend latency, and how the backend
>>does the cancel.
>>
>>It appears that when you click "Cancel" the Toaster GUI immediately
>>transitions to show that the build is cancelled and the "Run Again"
>>button appears. Normally when I cancel a build on the command line it can
>>take several minutes for the tasks to cleanly finish up. That would mean
>>that if the user immediately clicks the "Run Again" button in Toaster the
>>backend may not be ready.
>>
>>So, how is the cancel handled? Does Toaster try the clean way to stop a
>>build, or does it something radical like killing the build thread?
>
>These are really good questions. The answer is I don't know. I guess some
>discussion is needed about the technical implementation details of this
>feature. 
>
>If a delay is likely between clicking 'cancel' and the build being
>stopped, we can create a 'cancelling' state for builds in the UI. I will
>make sure to add that to the design document.

I've updated the design to include a 'cancelling' state. Attached to

https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787

Belén

>
>Cheers
>
>Belén
>
>>
>>- David
>>
>>> -----Original Message-----
>>> From: toaster-bounces@yoctoproject.org [mailto:toaster-
>>> bounces@yoctoproject.org] On Behalf Of Barros Pena, Belen
>>> Sent: Tuesday, September 01, 2015 5:48 AM
>>> To: toaster@yoctoproject.org
>>> Subject: [Toaster] Design - Cancelling builds
>>>
>>> We have been speaking about letting users cancel builds at any point
>>> during the build process. We have a Bugzilla entry for that
>>>
>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787
>>>
>>> Which now has design attached to it. It should not be controversial in
>>>any
>>> way, but if you have any questions / comments, let me know.
>>>
>>> Thanks!
>>>
>>> Belén
>>>
>>> --
>>> _______________________________________________
>>> toaster mailing list
>>> toaster@yoctoproject.org
>>> https://lists.yoctoproject.org/listinfo/toaster
>



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Design - Cancelling builds
  2015-09-03 11:23     ` Barros Pena, Belen
@ 2015-09-03 13:14       ` sujith h
  2015-09-03 16:11         ` Reyna, David
  0 siblings, 1 reply; 7+ messages in thread
From: sujith h @ 2015-09-03 13:14 UTC (permalink / raw)
  To: Barros Pena, Belen; +Cc: toaster

[-- Attachment #1: Type: text/plain, Size: 2747 bytes --]

On Thu, Sep 3, 2015 at 4:53 PM, Barros Pena, Belen <
belen.barros.pena@intel.com> wrote:

>
>
> On 02/09/2015 15:37, "Barros Pena, Belen" <belen.barros.pena@intel.com>
> wrote:
>
> >
> >
> >On 02/09/2015 15:31, "Reyna, David" <david.reyna@windriver.com> wrote:
> >
> >>Hi Belén,
> >>
> >>I have just one question about the backend latency, and how the backend
> >>does the cancel.
> >>
> >>It appears that when you click "Cancel" the Toaster GUI immediately
> >>transitions to show that the build is cancelled and the "Run Again"
> >>button appears. Normally when I cancel a build on the command line it can
> >>take several minutes for the tasks to cleanly finish up. That would mean
> >>that if the user immediately clicks the "Run Again" button in Toaster the
> >>backend may not be ready.
> >>
> >>So, how is the cancel handled? Does Toaster try the clean way to stop a
> >>build, or does it something radical like killing the build thread?
> >
> >These are really good questions. The answer is I don't know. I guess some
> >discussion is needed about the technical implementation details of this
> >feature.
>

Sorry for a dumb suggestion, wouldn't killing all instances of bitbake,
help?


> >
> >If a delay is likely between clicking 'cancel' and the build being
> >stopped, we can create a 'cancelling' state for builds in the UI. I will
> >make sure to add that to the design document.
>
> I've updated the design to include a 'cancelling' state. Attached to
>
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787
>
> Belén
>
> >
> >Cheers
> >
> >Belén
> >
> >>
> >>- David
> >>
> >>> -----Original Message-----
> >>> From: toaster-bounces@yoctoproject.org [mailto:toaster-
> >>> bounces@yoctoproject.org] On Behalf Of Barros Pena, Belen
> >>> Sent: Tuesday, September 01, 2015 5:48 AM
> >>> To: toaster@yoctoproject.org
> >>> Subject: [Toaster] Design - Cancelling builds
> >>>
> >>> We have been speaking about letting users cancel builds at any point
> >>> during the build process. We have a Bugzilla entry for that
> >>>
> >>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787
> >>>
> >>> Which now has design attached to it. It should not be controversial in
> >>>any
> >>> way, but if you have any questions / comments, let me know.
> >>>
> >>> Thanks!
> >>>
> >>> Belén
> >>>
> >>> --
> >>> _______________________________________________
> >>> toaster mailing list
> >>> toaster@yoctoproject.org
> >>> https://lists.yoctoproject.org/listinfo/toaster
> >
>
>


-- 
സുജിത് ഹരിദാസന്
Bangalore
<Project>Contributor to KDE project
http://fci.wikia.com/wiki/Anti-DRM-Campaign
<Blog> http://sujithh.info

[-- Attachment #2: Type: text/html, Size: 4730 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Design - Cancelling builds
  2015-09-03 13:14       ` sujith h
@ 2015-09-03 16:11         ` Reyna, David
  2015-09-03 16:44           ` Richard Purdie
  0 siblings, 1 reply; 7+ messages in thread
From: Reyna, David @ 2015-09-03 16:11 UTC (permalink / raw)
  To: sujith h, BARROS PENA, BELEN; +Cc: toaster

[-- Attachment #1: Type: text/plain, Size: 3874 bytes --]

Hi Sujith,

> Sorry for a dumb suggestion, wouldn't killing all instances of bitbake, help?

Not a dumb question.

The thing is that we have all done exactly that at one time or another to stop an errant build, however Bitbake explicitly advises against that. The reason is that it is possible that a given task could be broken at a state that cannot be recovered from in a subsequent build.

And while that failure state has never been encountered in my experience, it is always possible given how fancy bitbake is getting around parallel builds and state management, and the actions to recover from such a state would probably not be doable from Toaster and would require the intervention of the system manager.

You can see the bitbake warning if you stop a build with a single CTLR-C.

- David

From: sujith h [mailto:sujith.h@gmail.com]
Sent: Thursday, September 03, 2015 6:15 AM
To: BARROS PENA, BELEN
Cc: Reyna, David; toaster@yoctoproject.org
Subject: Re: Design - Cancelling builds



On Thu, Sep 3, 2015 at 4:53 PM, Barros Pena, Belen <belen.barros.pena@intel.com<mailto:belen.barros.pena@intel.com>> wrote:


On 02/09/2015 15:37, "Barros Pena, Belen" <belen.barros.pena@intel.com<mailto:belen.barros.pena@intel.com>>
wrote:

>
>
>On 02/09/2015 15:31, "Reyna, David" <david.reyna@windriver.com<mailto:david.reyna@windriver.com>> wrote:
>
>>Hi Belén,
>>
>>I have just one question about the backend latency, and how the backend
>>does the cancel.
>>
>>It appears that when you click "Cancel" the Toaster GUI immediately
>>transitions to show that the build is cancelled and the "Run Again"
>>button appears. Normally when I cancel a build on the command line it can
>>take several minutes for the tasks to cleanly finish up. That would mean
>>that if the user immediately clicks the "Run Again" button in Toaster the
>>backend may not be ready.
>>
>>So, how is the cancel handled? Does Toaster try the clean way to stop a
>>build, or does it something radical like killing the build thread?
>
>These are really good questions. The answer is I don't know. I guess some
>discussion is needed about the technical implementation details of this
>feature.

Sorry for a dumb suggestion, wouldn't killing all instances of bitbake, help?

>
>If a delay is likely between clicking 'cancel' and the build being
>stopped, we can create a 'cancelling' state for builds in the UI. I will
>make sure to add that to the design document.

I've updated the design to include a 'cancelling' state. Attached to

https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787

Belén

>
>Cheers
>
>Belén
>
>>
>>- David
>>
>>> -----Original Message-----
>>> From: toaster-bounces@yoctoproject.org<mailto:toaster-bounces@yoctoproject.org> [mailto:toaster-<mailto:toaster->
>>> bounces@yoctoproject.org<mailto:bounces@yoctoproject.org>] On Behalf Of Barros Pena, Belen
>>> Sent: Tuesday, September 01, 2015 5:48 AM
>>> To: toaster@yoctoproject.org<mailto:toaster@yoctoproject.org>
>>> Subject: [Toaster] Design - Cancelling builds
>>>
>>> We have been speaking about letting users cancel builds at any point
>>> during the build process. We have a Bugzilla entry for that
>>>
>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=6787
>>>
>>> Which now has design attached to it. It should not be controversial in
>>>any
>>> way, but if you have any questions / comments, let me know.
>>>
>>> Thanks!
>>>
>>> Belén
>>>
>>> --
>>> _______________________________________________
>>> toaster mailing list
>>> toaster@yoctoproject.org<mailto:toaster@yoctoproject.org>
>>> https://lists.yoctoproject.org/listinfo/toaster
>



--
സുജിത് ഹരിദാസന്
Bangalore
<Project>Contributor to KDE project
http://fci.wikia.com/wiki/Anti-DRM-Campaign
<Blog> http://sujithh.info

[-- Attachment #2: Type: text/html, Size: 10268 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Design - Cancelling builds
  2015-09-03 16:11         ` Reyna, David
@ 2015-09-03 16:44           ` Richard Purdie
  0 siblings, 0 replies; 7+ messages in thread
From: Richard Purdie @ 2015-09-03 16:44 UTC (permalink / raw)
  To: Reyna, David; +Cc: toaster

On Thu, 2015-09-03 at 16:11 +0000, Reyna, David wrote:
> The thing is that we have all done exactly that at one time or another
> to stop an errant build, however Bitbake explicitly advises against
> that. The reason is that it is possible that a given task could be
> broken at a state that cannot be recovered from in a subsequent
> build.  
>
> And while that failure state has never been encountered in my
> experience, it is always possible given how fancy bitbake is getting
> around parallel builds and state management, and the actions to
> recover from such a state would probably not be doable from Toaster
> and would require the intervention of the system manager.

Generally bitbake itself is comparatively safe however we have no
guarantees about the underlying build systems in the individual pieces
of software though.

One pathologically bad case is when we run out of disk space, that
usually breaks build directories to the point they're unusable,
depending on where/when it happens. The same thing could happen when
killing builds although the risk is smaller.

Cheers,

Richard




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2015-09-03 16:44 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-01 12:47 Design - Cancelling builds Barros Pena, Belen
2015-09-02 14:31 ` Reyna, David
2015-09-02 14:37   ` Barros Pena, Belen
2015-09-03 11:23     ` Barros Pena, Belen
2015-09-03 13:14       ` sujith h
2015-09-03 16:11         ` Reyna, David
2015-09-03 16:44           ` Richard Purdie

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.