Bug 5327 - [webhob-poky/master] in clean builds, noexec tasks are reported as "covered" instead of "executed"
Summary: [webhob-poky/master] in clean builds, noexec tasks are reported as "covered" ...
Status: VERIFIED FIXED
Alias: None
Product: Toaster
Classification: Build System, Metadata & Runtime
Component: toaster (show other bugs)
Version: unspecified
Hardware: All Multiple
: Medium normal
Target Milestone: 1.6 M1
Assignee: Alexandru Damian
QA Contact:
URL:
Whiteboard: bitbake
: 5457 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-10-09 13:37 UTC by Belen Barros Pena
Modified: 2013-12-13 11:47 UTC (History)
4 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments
executed-noexec.png (319.22 KB, image/png)
2013-11-04 19:09 UTC, Belen Barros Pena
no flags Details
covered-noexec.png (348.46 KB, image/png)
2013-11-04 19:10 UTC, Belen Barros Pena
no flags Details
script_type_master.png (355.80 KB, image/png)
2013-11-29 10:19 UTC, Belen Barros Pena
no flags Details
script_type_dora-toaster.png (308.80 KB, image/png)
2013-11-29 10:20 UTC, Belen Barros Pena
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Belen Barros Pena 2013-10-09 13:37:56 UTC
When I say "clean builds", I mean a build run after deleting /poky/build/tmp and the content of /poky/build/sstate-cache

If you do that, you get a bunch of do_package tasks for native targets: those seem to be noexec tasks. We would have expected those to be reported as 'executed', but instead they are shown as 'prebuilt - covered'.
Comment 1 Belen Barros Pena 2013-11-04 19:09:20 UTC
dora-toaster:46814c99eed399b6dd9ff9e83260fefe79c23ec8

Now we have both: loads of executed noexec and also loads of covered noexec (see attached screenshots). See also, bug 5457
Comment 2 Belen Barros Pena 2013-11-04 19:09:45 UTC
Created attachment 1602 [details]
executed-noexec.png
Comment 3 Belen Barros Pena 2013-11-04 19:10:00 UTC
Created attachment 1603 [details]
covered-noexec.png
Comment 4 Alexandru Damian 2013-11-04 22:07:56 UTC
This is actually expected result, I'm not sure about what's the bug here.

The NoExec flag is set by default to all tasks where no task type information is available. For tasks that don't execute, because they are Prebuilt or Covered, the task type will always be NoExec. 

NoExec should be read as explicitly setup and not a default value only when tasks are marked as Executed.
Comment 5 Belen Barros Pena 2013-11-05 10:37:25 UTC
(In reply to comment #4)
> This is actually expected result, I'm not sure about what's the bug here.

Well, you asked me to open it :) 

> 
> The NoExec flag is set by default to all tasks where no task type
> information is available. 

Why would we have tasks where no task type information is available? Task types are prebuilt or executed, and we should know which for each task.

> For tasks that don't execute, because they are
> Prebuilt or Covered, the task type will always be NoExec. 

This is not what I understood. I thought NoExec tasks were the ones set to [noexec], like for gcc-cross

do_package[noexec] = "1"
do_packagedata[noexec] = "1"
do_package_write_ipk[noexec] = "1"
do_package_write_rpm[noexec] = "1"
do_package_write_deb[noexec] = "1"

> NoExec should be read as explicitly setup and not a default value only when
> tasks are marked as Executed.

I am not sure that will work: NoExec is NoExec as above, and it should come up only for Executed tasks. It seems to me NoExec for Executed tasks and NoExec for Prebuilt tasks as currently implemented mean 2 different things. We don't want the same label (noexec) to have 2 different meanings. It confuses things.
Comment 6 Belen Barros Pena 2013-11-05 10:52:48 UTC
After some deliberation, we have decided that:

executed - noexec will have the script_type set to noexec

covered / prebuilt - noexec will have a null script_type 

That way we don't mix the 2.
Comment 7 Belen Barros Pena 2013-11-05 10:57:40 UTC
*** Bug 5457 has been marked as a duplicate of this bug. ***
Comment 8 Paul Eggleton 2013-11-05 10:58:31 UTC
Rather than null can we have an additional option "Unknown"? "Enum" type database fields shouldn't really be allowed to be null.
Comment 9 Belen Barros Pena 2013-11-05 11:31:44 UTC
(In reply to comment #8)
> Rather than null can we have an additional option "Unknown"? "Enum" type
> database fields shouldn't really be allowed to be null.

Of course, but maybe instead of "unknown" we could use something that communicates the fact that the field doesn't apply to such tasks. Maybe 'not applicable'? 

If I see 'unknown' I am left wondering if it should have been known and got lost somehow.
Comment 10 Alexandru Damian 2013-11-25 10:56:53 UTC
I guess I fixed this bug a while ago (see script type N/A) and forgot to mark it as such.

Merged in origin/master and origin/dora-toaster
Comment 11 Belen Barros Pena 2013-11-29 10:19:24 UTC
Script type comes ok in master (1e084f9d755e3458d2f9863382fa3bb7877a146d), but not in dora-toaster (1182665de0da9a6e5fc77107f32a7fc1515029d0), where all Executed tasks have the script type set to N/A.

Also, CPU and Disk I/O data are not showing in dora-toaster. I've attached screenshots.
Comment 12 Belen Barros Pena 2013-11-29 10:19:50 UTC
Created attachment 1651 [details]
script_type_master.png
Comment 13 Belen Barros Pena 2013-11-29 10:20:06 UTC
Created attachment 1652 [details]
script_type_dora-toaster.png
Comment 14 Alexandru Damian 2013-12-04 10:11:20 UTC
Proposed dropping support for dora+toaster due to extra dependencies in master which make back-porting very difficult.
Comment 15 Belen Barros Pena 2013-12-13 11:46:46 UTC
Resolved in master:ba8506ee342a1a579ceb309f3f50285eaad84f25

We have dropped support for dora-toaster.
Comment 16 Belen Barros Pena 2013-12-13 11:47:06 UTC
verified in master:ba8506ee342a1a579ceb309f3f50285eaad84f25