Closed
Bug 855282
Opened 13 years ago
Closed 11 years ago
Change scheduling model to only trigger one OS version out of 10.6/10.7/10.8 and WinXP/Win7/Win8 except on PGO triggered changesets (was "Stop scheduling 10.6 and 10.7 tests on m-i and try")
Categories
(Release Engineering :: General, defect, P2)
Release Engineering
General
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: armenzg, Unassigned)
References
Details
Attachments
(1 file, 1 obsolete file)
aki let me know if you would like me help with this.
| Reporter | ||
Updated•13 years ago
|
Comment 1•13 years ago
|
||
Hunh, I didn't even see this bug.
Maybe because I was focused on the unowned-buildduty queue.
| Reporter | ||
Updated•13 years ago
|
Summary: A bunch of lion test machines have not taken jobs → Having bad rev4 (lion & snow) wait times
| Reporter | ||
Comment 2•13 years ago
|
||
I had no time to look into this week but I should be able to for next week.
Priority: -- → P1
| Reporter | ||
Comment 3•13 years ago
|
||
I have tried to bring machines back into the pool but a lot of them have the need for memory to be replaced.
We also don't have enough machines to keep up for 10.6 & 10.7.
I'm going to push hard on reducing number of jobs on 10.6.
| Reporter | ||
Comment 4•13 years ago
|
||
I will paste the changes needed to reduce the testing of 10.7.
Priority: P1 → P2
Summary: Having bad rev4 (lion & snow) wait times → Reduce scheduling of 10.7 opt/debug jobs and re-purpose 10.7 machines as 10.6 machines to improve the wait times for 10.6
| Reporter | ||
Comment 5•13 years ago
|
||
This should reduce almost 2/3 of the load on 10.7 machines.
| Reporter | ||
Updated•13 years ago
|
Attachment #742414 -
Attachment is obsolete: true
| Reporter | ||
Comment 6•13 years ago
|
||
I'm going to take the approach mentioned by jlebar on the thread but I have a couple of questions.
This is what my proposal plus jlebar's would be:
* on m-i:
1) do not trigger 10.6 and 10.7 opt/debug test jobs on every check-in
2) when the time of PGO jobs comes around we test on 10.6, 10.7 & 10.8
** 10.8 is untouched
* on try:
3) do not trigger 10.7 by default
I think I can do #2 but I am fearing a lot of hackery.
I have no clue if we can actually do #3. I have been able to disable win64 *builds* by default but I don't know if we can have 10.7 disabled by default yet be able to trigger it with -u none[10.7]
catlee: what would you suggest me to do?
Comment 7•13 years ago
|
||
"the time of PGO jobs" is actually to a very large extent "when we trigger PGO through self-serve" since the scheduler fails to know that a push it chooses will wind up in the middle of a huge bustage and multiple overlapping backouts range, so we trigger quite a bit of PGO on csets that we believe will wind up being our good merge points. Having both periodic PGO and self-serve PGO also trigger the missing Mac tests would probably work out well (other than the headaches for you, since there's no promise that periodic PGO will be triggered on a push that even has Mac builds); having periodic PGO trigger them but self-serve not trigger them is unlikely to work for how we manage inbound.
| Reporter | ||
Comment 8•13 years ago
|
||
I have a patch that does the following:
* stops testing 10.7 on Jetpack
* stops running 10.7 talos jobs (as suggested by mbrubeck)
* stops running unit tests for 10.7 on m-i and try
Adding periodic tests for 10.7 on m-i is going to be an *interesting* code refactoring but I will give it a shot.
I would like to drop 10.7's try support as it would be way too much work for the gain that we would get (do not run by default but find a way to trigger it when needed).
| Reporter | ||
Comment 9•13 years ago
|
||
Attachment #743103 -
Flags: review?(catlee)
Comment 10•13 years ago
|
||
> I would like to drop 10.7's try support as it would be way too much work for the gain that we would
> get (do not run by default but find a way to trigger it when needed).
So if a developer has a failure on 10.7 only on m-c, they're up a creek without a paddle?
I don't think that's OK unless you can prove that this never happens. The logic for not dropping 10.7 altogether was that we couldn't prove that 10.6 + 10.8 is sufficient to catch all failures we care about, so it seems that we're expecting some failures on 10.7.
| Reporter | ||
Comment 11•13 years ago
|
||
(In reply to Justin Lebar [:jlebar] from comment #10)
> > I would like to drop 10.7's try support as it would be way too much work for the gain that we would
> > get (do not run by default but find a way to trigger it when needed).
>
> So if a developer has a failure on 10.7 only on m-c, they're up a creek
> without a paddle?
>
> I don't think that's OK unless you can prove that this never happens. The
> logic for not dropping 10.7 altogether was that we couldn't prove that 10.6
> + 10.8 is sufficient to catch all failures we care about, so it seems that
> we're expecting some failures on 10.7.
If I knew how to do it I would do it but because I know to the most part how buildbot is designed I would have to redesign it just to support a platform that has less users that Windows Vista does (Vista has more Firefox users than *all* Mac versions together).
The proposal was to make 10.7 a tier2 platform (which Asa and akeybl approved) to improve our testing on 10.6 *or* 10.7. We'll have to put a lot of effort into it and might not be sufficient. It is not ideal; we know. We have to be able to come to a middle ground. We can't support everything just because we have to.
On another note, is there anyone from development that could help improve our running times for some of the jobs?
Not sure if this link is reachable by everybody. For instance, I've noticed that "mochitest-browser-chrome" debug jobs are extremely bad:
https://secure.pub.build.mozilla.org/buildapi/reports/builders?detail_level=builder&platform=lion,mountainlion,snowleopard,snowleopard-r4&build_type=debug,opt&job_type=repack,talos,unittest
The average running time for this are:
10.7 mozilla-central debug test mochitest-browser-chrome 1h 41m
10.6 mozilla-central debug test mochitest-browser-chrome 1h 30m
10.8 mozilla-central debug test mochitest-browser-chrome 1h 10m
Comment 12•13 years ago
|
||
(In reply to Armen Zambrano G. [:armenzg] (Release Enginerring) from comment #11)
> For instance, I've noticed
> that "mochitest-browser-chrome" debug jobs are extremely bad
Bug 864085
| Reporter | ||
Comment 13•13 years ago
|
||
On another note, we do zero testing on Windows 7 64-bit yet we are OK to not test it there and be convinced that we ship an OK browser there.
Comment 14•13 years ago
|
||
> On another note, we do zero testing on Windows 7 64-bit yet we are OK to not test it there and be
> convinced that we ship an OK browser there.
Two wrongs don't make a right...
If we're going to make Mac 10.7 a tier-two platform, then we should go all the way and shut everything off. Running tests only on m-c and having no capability to run them on both try and m-i is a recipe for disaster.
It was not clear to me that your proposal was to make 10.7 a tier-two platform, so if this is actually what we're going to do, I think we need to start a new newsgroup thread with "Making Mac OS 10.7 a tier-two platform" as the subject.
Please understand that it's frustrating from my perspective to de-support a platform because it's too hard to modify our infrastructure to support it. We do hard things all the time at Mozilla; that's the nature of shipping a web browser to millions of people on many different platforms. It's not your fault if you don't have time to do this, but I think it is our fault, as an organization, that we're making decisions about which platforms to support based solely on how difficult it is to modify buildbot.
| Reporter | ||
Comment 15•13 years ago
|
||
I will re-post the thread with a new title sometime this week to make it clearer.
On another note, I don't know how to be clear on what type of tier this would be [1].
Meanwhile, I'm going to try to figure out if some jobs could be merged and how to do so before disabling anything.
[1] https://developer.mozilla.org/en-US/docs/Supported_build_configurations
Comment 16•13 years ago
|
||
Why would it be something other than tier-two?
| Reporter | ||
Comment 17•13 years ago
|
||
(In reply to Justin Lebar [:jlebar] from comment #16)
> Why would it be something other than tier-two?
The document talks about build configurations rather than test configurations (even though it points to tbpl). It also merges OS specific versions (10.6, 10.7, 10.8) into architecture buckets (OS X/x86 and x86-64). That is why I wasn't sure if it would become a tier-3.
Updated•13 years ago
|
Attachment #743103 -
Flags: review?(catlee) → review+
Comment 18•13 years ago
|
||
What we decided at the build infra meeting was that we'd like to try:
1. Run 10.6 / 10.7 tests on m-c only.
2. Provide a way to opt in to 10.6 / 10.7 tests on try.
(1) can be this bug, and
(2) can be bug 793989. It's not ideal, because you might have to wait until the mac build finishes before requesting the tests, but it might be good enough to start with.
If this results in lots of difficult m-c closures due to orange on 10.6 / 10.7, we could revisit this decision. That call will be made by the sheriffs.
Depends on: 793989
Comment 19•13 years ago
|
||
It would be great if we could get a rough estimate of when we might expect this work to be done, so that this bug doesn't languish interminably.
Updated•13 years ago
|
Summary: Reduce scheduling of 10.7 opt/debug jobs and re-purpose 10.7 machines as 10.6 machines to improve the wait times for 10.6 → Stop scheduling 10.6 and 10.7 tests on m-i and try
Comment 20•13 years ago
|
||
> 1. Run 10.6 / 10.7 tests on m-c only.
Perhaps this should be instead
1. Don't run 10.6 and 10.7 tests on m-i or try.
We still want them on e.g. b2g18 and probably other trees.
Comment 21•13 years ago
|
||
Though I will point out that bug 851066 has been on file for quite some time about the number of builds/tests we run on b2g18.
| Reporter | ||
Comment 22•13 years ago
|
||
I'm spending a bunch of stuff on infrastructure planning this week and I can have a look at the bug that Ryan points out first (since it is an immediate gain).
Comment 23•13 years ago
|
||
in production
| Reporter | ||
Comment 24•13 years ago
|
||
I'm looking at my queue and I don't have time for this for a while.
Assignee: armenzg → nobody
Comment 25•13 years ago
|
||
(In reply to Justin Lebar [:jlebar] from comment #18)
> 2. Provide a way to opt in to 10.6 / 10.7 tests on try.
>
> (1) can be this bug, and
> (2) can be bug 793989. It's not ideal, because you might have to wait until
> the mac build finishes before requesting the tests, but it might be good
> enough to start with.
Unless I'm missing something, #2 just means making them non-default on try. Request those specifically with testname[10.6,10.7]. Or get everything ever defined in the world, including everybody else's funky nondefault tests, with testname[]. I guess I should make a way of selecting default plus selected other tests, but for now this should be good enough to handle your #2 need.
| Reporter | ||
Updated•13 years ago
|
Whiteboard: [buildduty]
| Reporter | ||
Updated•13 years ago
|
Summary: Stop scheduling 10.6 and 10.7 tests on m-i and try → Change scheduling model to only trigger one OS version out of 10.6/10.7/10.8 and WinXP/Win7/Win8 except on PGO triggered changesets (was "Stop scheduling 10.6 and 10.7 tests on m-i and try")
Comment 26•13 years ago
|
||
This is a scheduling change so it belongs in the Automation component.
Component: Release Engineering: Machine Management → Release Engineering: Automation (General)
OS: Mac OS X → All
QA Contact: armenzg → catlee
Hardware: x86 → All
| Assignee | ||
Updated•13 years ago
|
Product: mozilla.org → Release Engineering
Updated•11 years ago
|
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
| Assignee | ||
Updated•8 years ago
|
Component: General Automation → General
You need to log in
before you can comment on or make changes to this bug.
Description
•