New issue
Advanced search Search tips

Issue 849718 link

Starred by 2 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 2
Type: Bug



Sign in to add a comment

iOS recipes uploads incorrect buildername to test-results app/table

Project Member Reported by liaoyuke@chromium.org, Jun 5 2018

Issue description

I used query:

SELECT
 buildbot_info.master_name,
 buildbot_info.builder_name
FROM
 `test-results-hrd.events.test_results`
WHERE
 _PARTITIONTIME >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 day)
 AND build_id = '8944623743136304208'
GROUP BY
 buildbot_info.master_name,
 buildbot_info.builder_name

And here are the results:
Row	master_name	builder_name	 
1	tryserver.chromium.mac	ios-simulator-iPhone 6s-11.2	 
2	tryserver.chromium.mac	ios-simulator-iPad Air 2-10.3	 
3	tryserver.chromium.mac	ios-simulator-iPhone 6s Plus-11.2	 
4	tryserver.chromium.mac	ios-simulator-iPad Air 2-11.2

It doens't make sense that a single build is associated with mutiple builder_name, and I'm expecting the builder_name to be 'ios-simulator'.

Talked to Sean, and confirmed that test-results app blindly takes whatever is uploaded by the steps, so it's likely that there are some bugs in the iOS recipes.

Here is the link the the above mentioned build: https://ci.chromium.org/p/chromium/builds/b8944623743136304208
 
This appears to be intentional: https://codesearch.chromium.org/chromium/build/scripts/slave/recipe_modules/ios/api.py?rcl=10f8fb1ee4e0c13f3b5bad78d9aa091773fb6536&l=1040

Given that the iOS bots are triggering the same suite against multiple different devices, I'm inclined to think that this is the most reasonable approach. What would you prefer to see?
The definition of buildername is confusing to me. https://ci.chromium.org/p/chromium/builds/b8944623743136304208, if you look at the build properties, it shows "buildername: ios-simulator".

My understanding is that though the same suite is *TESTED* against different devices, it shouldn't affect the buildername. buildrename should be a property passed to the recipe at the beginning and shouldn't be changed later, and it is expected to match with the buildbucket:builder definition in LUCI's world.

AFAIC, iOS recipe is the only recipe that appends device/platform bits to the buildername. For example, https://ci.chromium.org/p/chromium/builders/luci.chromium.try/mac_chromium_rel_ng/63192, though tests are run on Mac 10.12.6 and 10.13, the buildername in the test_results table is always 'mac_chromium_rel_ng', ranther than 'mac_chromium_rel_ng-Mac-10.12.6' and 'mac_chromium_rel_ng-10.13'.
In the mac case, there's only one total execution of a given suite. In the iOS case, there are multiple. You need some mechanism for distinguishing between them. I think the practical options for that are appending to the builder name (in which case you get this scenario) or appending to the suite name (in which case you it's hard to compare suite results across different devices).
Thanks for explaining! Looks like the mac example is not related to this discussion.

I do agree we need some mechanism for distinguishing between them, but I thought these information should be part of the step_name instead of buildername (chromium test recipe appends platform information to the step_name).

Another issue is that iOS recipe uploads each shard as an individual step:
Row	step_name	test_type	master_name	builder_name	 
1	ui_base_unittests	ui_base_unittests	tryserver.chromium.mac	ios-simulator-iPhone 6s-11.2	 
2	ios_web_shell_egtests	ios_web_shell_egtests	tryserver.chromium.mac	ios-simulator-iPhone 6s-11.2	 
3	ios_chrome_ui_egtests_shard_0	ios_chrome_ui_egtests_shard_0	tryserver.chromium.mac	ios-simulator-iPhone 6s-11.2	 

I'll find a way to work it around, but I do think it makes more sense to merge the results before uploading at the recipe side, do we have any plans for this?
Status: Available (was: Untriaged)
Don't think there's plans. Moving into our backlog.
#4: It definitely makes sense to merge shards prior to upload, but as Ben said, we don't have imminent plans. We're in a bit of a crunch re ios work.

Sign in to add a comment