[
https://issues.apache.org/jira/browse/BEAM-8213?focusedWorklogId=317761&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-317761
]
ASF GitHub Bot logged work on BEAM-8213:
----------------------------------------
Author: ASF GitHub Bot
Created on: 24/Sep/19 19:02
Start Date: 24/Sep/19 19:02
Worklog Time Spent: 10m
Work Description: youngoli commented on issue #9642: [BEAM-8213] Split up
monolithic python preCommit tests on jenkins
URL: https://github.com/apache/beam/pull/9642#issuecomment-534702315
As far as queue times go, I think the impact of this should be minimal. Like
Chad mentioned, although it will take up 5 Jenkins slots, the overall work is
equivalent they should take about 1/5 as long (or slightly longer if you
include setup time).
I think the main mitigation here is that these are precommits and not
postcommits. Since it's not set to run on any kind of regular schedule I'm less
worried about sudden spikes in Jenkins usage. And even if the slots do all get
full, the shorter time for these precommits means that slots would be available
sooner.
So I don't think this is worth blocking on for that reason. But I'd measure
how long the tests take to check that splitting the test didn't drastically
increase the total amount of work, and I'd keep an eye on overall latency via
these two pages:
http://104.154.241.245/d/_TNndF2iz/pre-commit-test-latency?orgId=1
https://builds.apache.org/label/beam/load-statistics?type=min
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 317761)
Time Spent: 2h 10m (was: 2h)
> Run and report python tox tasks separately within Jenkins
> ---------------------------------------------------------
>
> Key: BEAM-8213
> URL: https://issues.apache.org/jira/browse/BEAM-8213
> Project: Beam
> Issue Type: Improvement
> Components: build-system
> Reporter: Chad Dombrova
> Priority: Major
> Time Spent: 2h 10m
> Remaining Estimate: 0h
>
> As a python developer, the speed and comprehensibility of the jenkins
> PreCommit job could be greatly improved.
> Here are some of the problems
> - when a lint job fails, it's not reported in the test results summary, so
> even though the job is marked as failed, I see "Test Result (no failures)"
> which is quite confusing
> - I have to wait for over an hour to discover the lint failed, which takes
> about a minute to run on its own
> - The logs are a jumbled mess of all the different tasks running on top of
> each other
> - The test results give no indication of which version of python they use. I
> click on Test results, then the test module, then the test class, then I see
> 4 tests named the same thing. I assume that the first is python 2.7, the
> second is 3.5 and so on. It takes 5 clicks and then reading the log output
> to know which version of python a single error pertains to, then I need to
> repeat for each failure. This makes it very difficult to discover problems,
> and deduce that they may have something to do with python version mismatches.
> I believe the solution to this is to split up the single monolithic python
> PreCommit job into sub-jobs (possibly using a pipeline with steps). This
> would give us the following benefits:
> - sub job results should become available as they finish, so for example,
> lint results should be available very early on
> - sub job results will be reported separately, and there will be a job for
> each py2, py35, py36 and so on, so it will be clear when an error is related
> to a particular python version
> - sub jobs without reports, like docs and lint, will have their own failure
> status and logs, so when they fail it will be more obvious what went wrong.
> I'm happy to help out once I get some feedback on the desired way forward.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)