Separate history (for easy dashboarding, health stats, etc) and
notification (email to dev@ for postcommits, nothing for precommits) for
pre & post commit targets.

A post commit failure is always a problem to be triaged at high priority,
while a precommit failure is just a natural occurrence.

On Fri, Mar 9, 2018 at 11:33 AM Lukasz Cwik <lc...@google.com> wrote:

> Ken, I'm probably not seeing something but how does using the PreCommit as
> a proxy improve upon just running the post commit via the phrase it already
> supports ('Run Java PostCommit')?
>
> On Fri, Mar 9, 2018 at 11:22 AM, Kenneth Knowles <k...@google.com> wrote:
>
>> Indeed, we've already had the discussion a couple of times and I think
>> the criteria are clearly met. Incremental progress is a good thing and we
>> shouldn't block it.
>>
>> OTOH I see where Romain is coming from and I have a good example that
>> supports a slightly different action. Consider
>> https://github.com/apache/beam/pull/4740 which fixes some errors in how
>> we use dependency mechanisms.
>>
>> This PR is green except that I need to fix some Maven pom slightly more.
>> That is throwaway work. I would love to just not have to do it. But
>> removing the precommit does not actually make the PR OK to merge. It would
>> cause postcommits to fail.
>>
>> We can hope such situations are rare. I think I tend to be hit by this
>> more often than most, as I work with the project build health quite a bit.
>>
>> Here is a proposal to support these things: instead of deleting the job
>> in #4814, move it to not run automatically but only via a phrase. In fact,
>> you could migrate it to be the manually-invoked version of the postcommit
>> job as we've discussed a couple times. Then if someone is working on the
>> build in something like #4740 they can invoke it manually.
>>
>> Kenn
>>
>> On Fri, Mar 9, 2018 at 10:25 AM Lukasz Cwik <lc...@google.com> wrote:
>>
>>> Based upon the criteria that was discussed on the mailing list[1], I
>>> would agree with Kenn about merging PR/4814 (drop Java Maven precommit).
>>>
>>> 1:
>>> https://lists.apache.org/thread.html/7eba5c77bc1a77b5046d915ab59f5f6fc41536c2c84863ad2efb5e99@%3Cdev.beam.apache.org%3E
>>>
>>> On Thu, Mar 8, 2018 at 9:10 PM, Romain Manni-Bucau <
>>> rmannibu...@gmail.com> wrote:
>>>
>>>> Hi Kenneth,
>>>>
>>>> For now maven covers the full needs of beam. If we start to have this
>>>> kind of PR we become dependent of the 2 builds which is what this thread is
>>>> about avoiding so tempted to say it must be a PR drop completely maven or
>>>> nothing as mentionned before.
>>>>
>>>> Le 9 mars 2018 04:48, "Kenneth Knowles" <k...@google.com> a écrit :
>>>>
>>>>> I would like to briefly re-focus this discussion and suggest that we
>>>>> merge https://github.com/apache/beam/pull/4814.
>>>>>
>>>>> The only material objection I've heard is that it means the precommit
>>>>> no longer tests exactly what is built for release. It is a valid concern,
>>>>> but we have mvn postcommit so the coverage is not lost. The benefits of
>>>>> quicker reviews and less Jenkins congestion seem worth it to me.
>>>>>
>>>>> Kenn
>>>>>
>>>>> On Thu, Mar 8, 2018 at 12:33 PM Romain Manni-Bucau <
>>>>> rmannibu...@gmail.com> wrote:
>>>>>
>>>>>> @Luskasz: not sure Im the best to host it since I know more gradle
>>>>>> internals that user interface/ecosystem but happy to help. Will also
>>>>>> require a "sudo" merger for this day to merge fixes asap - guess we can
>>>>>> bypass reviews or have a fast cycle plan for this day to avoid it to be a
>>>>>> week?
>>>>>>
>>>>>> Le 8 mars 2018 21:08, "Kenneth Knowles" <k...@google.com> a écrit :
>>>>>>
>>>>>> @Romain - Idea/IntelliJ is great with Gradle, way better than Maven,
>>>>>> and what I mean is that I have added enough hints that it works OOTB
>>>>>> already. The rest of my instructions are just how you should override
>>>>>> IntelliJ's defaults to have a proper dev env - mostly just about storing
>>>>>> files outside the git clone.
>>>>>>
>>>>>>
>>>>>> Hmm it is always super slow here and not as integrated as maven which
>>>>>> is smooth thanks to the combination of idea build and maven plugin config
>>>>>> read. Import is also faster cause it just reads meta and doesnt run
>>>>>> anything. Hope it is a "a few times" issues at the moment but not yet 
>>>>>> sure.
>>>>>>
>>>>>>
>>>>>>
>>>>>> @Łukasz - yea I just mean the ones that I find in my email and
>>>>>> browsing https://builds.apache.org/view/A-D/view/Beam/ which are the
>>>>>> ones you classify as "totally not working". I would love to disable 
>>>>>> these.
>>>>>>
>>>>>> On the subject of running things on a pending PR - we should not run
>>>>>> postcommit jobs on PRs. We should make separate (optional) precommit jobs
>>>>>> that run the same build commands. That will give a more clear history and
>>>>>> allow trivial configuration of which jobs deserve alert emails and which
>>>>>> are not a problem. This is easy but I've been waiting to do it after 
>>>>>> Gradle
>>>>>> migration.
>>>>>>
>>>>>> On Thu, Mar 8, 2018 at 11:37 AM Lukasz Cwik <lc...@google.com> wrote:
>>>>>>
>>>>>>> Romain, would you like to host/plan/run the Gradle fixit day?
>>>>>>>
>>>>>>> On Thu, Mar 8, 2018 at 11:24 AM, Chamikara Jayalath <
>>>>>>> chamik...@google.com> wrote:
>>>>>>>
>>>>>>>> +1 for the general idea of fixit day/week for Gradle.
>>>>>>>>
>>>>>>>> Agree with what Łukasz said. Some of these performance tests are
>>>>>>>> new and are flaky due to other issues that were discovered during the
>>>>>>>> process of adding the test.
>>>>>>>>
>>>>>>>> I think the high level blocker is updating performance testing
>>>>>>>> framework to use Gradle. This will involve adding Gradle-based logic 
>>>>>>>> for
>>>>>>>> invoking PerfKitBenchmaker, for example [1], and updating
>>>>>>>> PerfKitBenchmarker to issue a Gradle command for running the benchmark 
>>>>>>>> [2].
>>>>>>>> First task will be to find the work needed here and updating the 
>>>>>>>> relevant
>>>>>>>> JIRA [3].
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Cham
>>>>>>>>
>>>>>>>> [1]
>>>>>>>> https://github.com/apache/beam/blob/master/sdks/java/io/google-cloud-platform/pom.xml#L79
>>>>>>>> [2]
>>>>>>>> https://github.com/GoogleCloudPlatform/PerfKitBenchmarker/blob/master/perfkitbenchmarker/beam_benchmark_helper.py
>>>>>>>> [3] https://issues.apache.org/jira/browse/BEAM-3251
>>>>>>>>
>>>>>>>> On Thu, Mar 8, 2018 at 3:10 AM Łukasz Gajowy <
>>>>>>>> lukasz.gaj...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> 2018-03-07 22:29 GMT+01:00 Kenneth Knowles <k...@google.com>:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Based on https://builds.apache.org/view/A-D/view/Beam/ and our
>>>>>>>>>> failure spam level the performance tests are mostly not healthy 
>>>>>>>>>> anyhow. So
>>>>>>>>>> is there any high level blocker to switching them or is it just 
>>>>>>>>>> someone
>>>>>>>>>> sitting down with each one?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> I thought I could share my point of view here as I am working on
>>>>>>>>> the Performance Test part for a while now. I wouldn't say those are 
>>>>>>>>> "mostly
>>>>>>>>> not healthy". The situation is as follows:
>>>>>>>>>
>>>>>>>>> - totally not working: Python, Spark performance tests (don't know
>>>>>>>>> why, I'm not maintaining those tests. Should we disable them?)
>>>>>>>>> - flaky: the recently re-enabled JDBC Performance Test. It's seems
>>>>>>>>> to be flaky mostly due to:
>>>>>>>>> https://issues.apache.org/jira/browse/BEAM-3798
>>>>>>>>> - working well, rarely failing: AvroIO, TextIO, Compressed Text,
>>>>>>>>> TFRecordIO
>>>>>>>>>
>>>>>>>>> Also, some test failures are caused due to pending PRs (we
>>>>>>>>> sometimes run concrete tests to check if PRs won't break them). This 
>>>>>>>>> also
>>>>>>>>> causes failures sometimes.
>>>>>>>>>
>>>>>>>>> I can help with switching the Performance tests to Gradle as this
>>>>>>>>> part seems to be free to take.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Łukasz
>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>>
>>>
>

Reply via email to