I'm changing my vote to -1 for disallowing merge until precheck passes.

The reason is that it's rare for me to see a 100% clean precheckin for any
of my PRs. There seems to always be some failure unrelated to my PR. For
example PR #3042 just hit GEODE-6008. If we make the change to disable the
merge button, then my PR could potentially be blocked indefinitely.

After we get it more consistently GREEN, I would be willing to change my
vote to +1.

On Fri, Dec 21, 2018 at 10:36 AM Kirk Lund <kl...@apache.org> wrote:

> I was responding to Udo's comment:
>
> "Could one not configure the button that the owner of the PR cannot merge
> the PR?"
>
> I'm +1 for disallowing merge until precheck passes.
> I'm -1 for disallowing the owner of the PR to merge it.
>
> On Fri, Dec 21, 2018 at 9:28 AM Helena Bales <hba...@pivotal.io> wrote:
>
>> Kirk, this change would not require you to get someone to merge it. It
>> would just require that your PR pass CI before it can be merged.
>>
>> On Thu, Dec 20, 2018 at 2:38 PM Kirk Lund <kl...@apache.org> wrote:
>>
>> > I have enough trouble just getting other developers to review my PR. I
>> > don't want to have to struggle to find someone to merge it for me, too.
>> >
>> > On Mon, Nov 19, 2018 at 4:09 PM Udo Kohlmeyer <u...@apache.org> wrote:
>> >
>> > > I don't believe "name and shame" is a hammer we should wield, but if
>> we
>> > > have use it... use it wisely
>> > >
>> > > Could one not configure the button that the owner of the PR cannot
>> merge
>> > > the PR?
>> > >
>> > > --Udo
>> > >
>> > >
>> > > On 11/19/18 16:03, Dan Smith wrote:
>> > > > Closing the loop on this thread - I don't feel like there was enough
>> > > > agreement to go forwards with disabling the merge button, so I'm
>> going
>> > to
>> > > > drop this for now.
>> > > >
>> > > > I would like to see everyone make sure that they only merge green
>> PRs.
>> > > > Maybe we can go with a name and shame approach? As in, we shouldn't
>> see
>> > > any
>> > > > new PRs show up in this query:
>> > > >
>> > > >
>> > >
>> >
>> https://github.com/apache/geode/pulls?utf8=%E2%9C%93&q=is%3Apr+is%3Amerged+status%3Afailure
>> > > >
>> > > > -Dan
>> > > >
>> > > > On Tue, Nov 13, 2018 at 10:19 AM Ryan McMahon <rmcma...@pivotal.io>
>> > > wrote:
>> > > >
>> > > >> +1 I like this idea, but I recognize that it will be a challenge
>> when
>> > > there
>> > > >> is still some flakiness to the pipeline.  I think we'd need clear
>> > > >> guidelines on what to do if your PR fails due to something
>> seemingly
>> > > >> unrelated.  For instance, we ran into GEODE-5943 (flaky
>> > > EvictionDUnitTest)
>> > > >> in our last PR, and saw that there was already an open ticket for
>> the
>> > > >> flakiness (we even reverted our change and reproduced to be
>> sure).  So
>> > > we
>> > > >> triggered another PR pipeline and it passed the second time.  Is
>> > > rerunning
>> > > >> the pipeline again sufficient in this case?  Or should we have
>> stopped
>> > > what
>> > > >> we were doing and took up GEODE-5943, assuming it wasn't assigned
>> to
>> > > >> someone?  If it was already assigned to someone, do we wait until
>> that
>> > > bug
>> > > >> is fixed before we run through the PR pipeline again?
>> > > >>
>> > > >> I think if anything this will help us treat bugs that are causing a
>> > red
>> > > >> pipeline as critical, and I think that is a good thing.  So I'm
>> still
>> > +1
>> > > >> despite the flakiness.  Just curious what people think about how we
>> > > should
>> > > >> handle cases where there is a known failure and it is indeed
>> unrelated
>> > > to
>> > > >> our PR.
>> > > >>
>> > > >> Ryan
>> > > >>
>> > > >>
>> > > >> On Mon, Nov 12, 2018 at 2:49 PM Jinmei Liao <jil...@pivotal.io>
>> > wrote:
>> > > >>
>> > > >>> Just to clarify, that flaky EvictionDUnitTest is old flaky. The
>> PR to
>> > > >>> refactor the test passed all checks, even the repeatTest as well.
>> I
>> > > had a
>> > > >>> closed PR that just touched the "un-refactored"
>> EvictionDUnitTest, it
>> > > >>> wouldn't even pass the repeatTest at all.
>> > > >>>
>> > > >>> On Mon, Nov 12, 2018 at 2:04 PM Dan Smith <dsm...@pivotal.io>
>> wrote:
>> > > >>>
>> > > >>>> To be clear, I don't think we have an issue of untrustworthy
>> > > committers
>> > > >>>> pushing code they know is broken to develop.
>> > > >>>>
>> > > >>>> The problem is that it is all to easy to look at a PR with some
>> > > >> failures
>> > > >>>> and *assume* your code didn't cause the failures and merge it
>> > anyway.
>> > > I
>> > > >>>> think we should all be at least rerunning the tests and not
>> merging
>> > > the
>> > > >>> PR
>> > > >>>> until everything passes. If the merge button is greyed out, that
>> > might
>> > > >>> help
>> > > >>>> communicate that standard to everyone.
>> > > >>>>
>> > > >>>> Looking at the OpenJDK 8 metrics, it looks to me like most of the
>> > > >> issues
>> > > >>>> are recently introduced (builds 81-84 and the EvictionDUnitTest),
>> > not
>> > > >> old
>> > > >>>> flaky tests. So I think we were a little more disciplined always
>> > > >>> listening
>> > > >>>> to what the checks are telling us we would have less noise in the
>> > long
>> > > >>> run.
>> > > >>>>
>> > > >>>>
>> > > >>
>> > >
>> >
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__concourse.apachegeode-2Dci.info_teams_main_pipelines_apache-2Ddevelop-2Dmetrics_jobs_GeodeDistributedTestOpenJDK8Metrics_builds_23&d=DwIBaQ&c=lnl9vOaLMzsy2niBC8-h_K-7QJuNJEsFrzdndhuJ3Sw&r=s8zALi1UpxiUlTfCkFIvTI7Yi4EtlpqAZ68hQ4JDyaI&m=EBW_QlDSlKgshy50KztUi566idyTMguNUkj6wc1jLXo&s=tgtdFeHVZtk1hlNfH-VTlrV9-WkUt_tWv_yx7MjSUdo&e=
>> > > >>>> -Dan
>> > > >>>>
>> > > >>>> On Mon, Nov 12, 2018 at 11:21 AM Udo Kohlmeyer <u...@apache.org>
>> > > wrote:
>> > > >>>>
>> > > >>>>> 0
>> > > >>>>>
>> > > >>>>> Patrick does make a point. The committers on the project have
>> been
>> > > >>> voted
>> > > >>>>> in as "responsible, trustworthy and best of breed" and rights
>> and
>> > > >>>>> privileges according to those beliefs have been bestowed.
>> > > >>>>>
>> > > >>>>> We should live those words and trust our committers. In the
>> end..
>> > If
>> > > >>>>> there is a "rotten" apple in the mix this should be addressed,
>> > maybe
>> > > >>> not
>> > > >>>>> as public flogging, but with stern communications.
>> > > >>>>>
>> > > >>>>> On the other side, I've also seen the model where the submitter
>> of
>> > PR
>> > > >>> is
>> > > >>>>> not allowed to merge + commit their own PR's. That befalls to
>> > another
>> > > >>>>> committer to complete this task, avoiding the whole, "I'll just
>> > > >> quickly
>> > > >>>>> commit without due diligence".
>> > > >>>>>
>> > > >>>>> --Udo
>> > > >>>>>
>> > > >>>>>
>> > > >>>>> On 11/12/18 10:23, Patrick Rhomberg wrote:
>> > > >>>>>> -1
>> > > >>>>>>
>> > > >>>>>> I really don't think this needs to be codified.  If people are
>> > > >>> merging
>> > > >>>>> red
>> > > >>>>>> PRs, that is a failing as a responsible developer.  Defensive
>> > > >>>> programming
>> > > >>>>>> is all well and good, but this seems like it's a bit beyond the
>> > > >> pale
>> > > >>> in
>> > > >>>>>> that regard.  I foresee it making the correction of a red main
>> > > >>> pipeline
>> > > >>>>>> must more difficult that it needs to be.  And while it's much
>> > > >> better
>> > > >>>> than
>> > > >>>>>> it had been, I am (anecdotally) still seeing plenty of
>> flakiness
>> > in
>> > > >>> my
>> > > >>>>> PRs,
>> > > >>>>>> either resulting from infra failures or test classes that need
>> to
>> > > >> be
>> > > >>>>>> refactored or reevaluated.
>> > > >>>>>>
>> > > >>>>>> If someone is merging truly broken code that has failed
>> > precheckin,
>> > > >>>> that
>> > > >>>>>> seems to me to be a discussion to have with that person.  <s>
>> If
>> > it
>> > > >>>>>> persists, perhaps a public flogging would be in order. </s>
>> But at
>> > > >>> the
>> > > >>>>> end
>> > > >>>>>> of the day, the onus is on us to be responsible developers,
>> and no
>> > > >>>> amount
>> > > >>>>>> of gatekeeping is going to be a substitute for that.
>> > > >>>>>>
>> > > >>>>>> On Mon, Nov 12, 2018 at 9:38 AM, Galen O'Sullivan <
>> > > >>>> gosulli...@pivotal.io
>> > > >>>>>> wrote:
>> > > >>>>>>
>> > > >>>>>>> I'm in favor of this change, but only if we have a way to
>> restart
>> > > >>>>> failing
>> > > >>>>>>> PR builds without being the PR submitter. Any committer
>> should be
>> > > >>> able
>> > > >>>>> to
>> > > >>>>>>> restart the build. The pipeline is still flaky enough and I
>> want
>> > > >> to
>> > > >>>>> avoid
>> > > >>>>>>> the situation where a new contributor is asked repeatedly to
>> push
>> > > >>>> empty
>> > > >>>>>>> commits to trigger a PR build (in between actual PR review)
>> and
>> > > >>> their
>> > > >>>> PR
>> > > >>>>>>> gets delayed by days if not weeks. That's a real bad
>> experience
>> > > >> for
>> > > >>>> the
>> > > >>>>>>> people we want to be inviting in.
>> > > >>>>>>>
>> > > >>>>>>> On Mon, Nov 12, 2018 at 9:23 AM Alexander Murmann <
>> > > >>>> amurm...@pivotal.io>
>> > > >>>>>>> wrote:
>> > > >>>>>>>
>> > > >>>>>>>> What's the general consensus on flakiness of the pipeline for
>> > > >> this
>> > > >>>>>>> purpose?
>> > > >>>>>>>> If there is consensus that it's still too flaky to disable
>> the
>> > > >>> merge
>> > > >>>>>>> button
>> > > >>>>>>>> on failure, we should probably consider doubling down on that
>> > > >> issue
>> > > >>>>>>> again.
>> > > >>>>>>>> It's hard to tell from just looking at the dev pipeline
>> because
>> > > >> you
>> > > >>>>>>> cannot
>> > > >>>>>>>> see easily what failures were legitimate.
>> > > >>>>>>>>
>> > > >>>>>>>> On Mon, Nov 12, 2018 at 8:47 AM Bruce Schuchardt <
>> > > >>>>> bschucha...@pivotal.io
>> > > >>>>>>>> wrote:
>> > > >>>>>>>>
>> > > >>>>>>>>> I'm in favor of this.
>> > > >>>>>>>>>
>> > > >>>>>>>>> Several times over the years we've made a big push to get
>> > > >>> precheckin
>> > > >>>>> to
>> > > >>>>>>>>> reliably only to see rapid degradation due to crappy code
>> being
>> > > >>>> pushed
>> > > >>>>>>>>> in the face of precheckin failures.  We've just invested
>> > another
>> > > >>>> half
>> > > >>>>>>>>> year doing it again.  Are we going to do things differently
>> > now?
>> > > >>>>>>>>> Disabling the Merge button on test failure might be a good
>> > > >> start.
>> > > >>>>>>>>> On 11/9/18 12:55 PM, Dan Smith wrote:
>> > > >>>>>>>>>
>> > > >>>>>>>>>> Hi all,
>> > > >>>>>>>>>>
>> > > >>>>>>>>>> Kirks emails reminded me - I think we are at the point now
>> > with
>> > > >>> our
>> > > >>>>>>> PR
>> > > >>>>>>>>>> checks where we should not be merging anything to develop
>> that
>> > > >>>>>>> doesn't
>> > > >>>>>>>>> pass
>> > > >>>>>>>>>> all of the PR checks.
>> > > >>>>>>>>>>
>> > > >>>>>>>>>> I propose we disable the merge button unless a PR is
>> passing
>> > > >> all
>> > > >>> of
>> > > >>>>>>> the
>> > > >>>>>>>>>> checks. If we are in agreement I'll follow up with infra to
>> > see
>> > > >>> how
>> > > >>>>>>> to
>> > > >>>>>>>>> make
>> > > >>>>>>>>>> that happen.
>> > > >>>>>>>>>>
>> > > >>>>>>>>>> This would not completely prevent pushing directly to
>> develop
>> > > >>> from
>> > > >>>>>>> the
>> > > >>>>>>>>>> command line, but since most developers seem to be using
>> the
>> > > >>> github
>> > > >>>>>>>> UI, I
>> > > >>>>>>>>>> hope that it will steer people towards getting the PRs
>> passing
>> > > >>>>>>> instead
>> > > >>>>>>>> of
>> > > >>>>>>>>>> using the command line.
>> > > >>>>>>>>>>
>> > > >>>>>>>>>> Thoughts?
>> > > >>>>>>>>>> -Dan
>> > > >>>>>>>>>>
>> > > >>>>>
>> > > >>>
>> > > >>> --
>> > > >>> Cheers
>> > > >>>
>> > > >>> Jinmei
>> > > >>>
>> > >
>> > >
>> >
>>
>

Reply via email to