Thanks David! This is awesome, really glad to see this effort to reduce
test flakiness.

One question -- are tests automatically sorted into these buckets or do we
have to manually move them? And if so, how does that work (eg a test in
"main" becomes flaky)

On Tue, Feb 25, 2025 at 3:20 PM David Arthur <mum...@gmail.com> wrote:

> > Can we merge the PR if only flaky or new tests fail?
>
> I agree with Ismael that new tests must be solid -- no flakiness should be
> expected when adding a test. Obviously, we will miss things, so we have to
> tolerate them on trunk (along with environmental flaky factors).
>
> If there are existing *unrelated* tests that are flaky on a PR, that is
> fine. Ideally, each failing test or flaky tests on a PR should be
> investigated.
>
> For PRs:
> "new" tests -- no flakiness
> "flaky" tests -- expect some flakiness, still look at these failures to
> make sure the PR didn't make it worse
> "main" tests -- normal amounts of flakiness, still look at these failures
> to make sure the PR didn't make it worse (and file a Jira to report flaky,
> if applicable)
>
> ---
>
>
> BTW If your PRs have failed build scans, try merging in trunk.
>
> [image: image.png]
>
> -David A
>
>
> On Mon, Feb 24, 2025 at 7:16 PM Ismael Juma <m...@ismaeljuma.com> wrote:
>
>> >
>> > Can we merge the PR if only flaky or new tests fail?
>>
>>
>> We certainly cannot merge if new tests fail - the goal is to ensure new
>> tests are solid.
>>
>> For the flaky ones, I'm not sure how we intend to use these. I would
>> prefer
>> if we only merge when the PR status is green. Otherwise, we often end up
>> merging things we shouldn't (by accident).
>>
>> Ismael
>>
>> On Mon, Feb 24, 2025 at 2:50 PM Chia-Ping Tsai <chia7...@gmail.com>
>> wrote:
>>
>> > hi David
>> >
>> > Thanks for all your improvement. I do love the new test suites!
>> >
>> > one small question:
>> > Can we merge the PR if only flaky or new tests fail? Sometimes, I list
>> > tickets for flaky (or unrelated) tests before merging. However, since we
>> > now have a separate test suite for stable tests (non-flaky, non-new), I
>> > assume the new condition is that "stable tests must pass"?
>> >
>> > Best,
>> > Chia-Ping
>> >
>> >
>> >
>> >
>> > Ismael Juma <m...@ismaeljuma.com> 於 2025年2月25日 週二 上午6:24寫道:
>> >
>> > > Thanks David - this is another important improvement to our CI
>> pipeline
>> > and
>> > > is super helpful for the project and community.
>> > >
>> > > Ismael
>> > >
>> > > On Mon, Feb 24, 2025 at 2:15 PM David Arthur <mum...@gmail.com>
>> wrote:
>> > >
>> > > > Hey everyone, just wanted to inform you all that we just merged
>> > > KAFKA-18748
>> > > >
>> > > > https://github.com/apache/kafka/pull/18770
>> > > >
>> > > > This splits our CI workflow into more parallel jobs which run
>> subsets
>> > of
>> > > > the tests with different settings. The JUnit tests are now split
>> into
>> > > > "new", "flaky", and the remainder.
>> > > >
>> > > > "New" tests are what we previously called auto-quarantined tests.
>> > > >
>> > > > On PR builds, "new" tests are anything that do not exist on trunk.
>> They
>> > > are
>> > > > run with zero tolerance for flakiness.
>> > > >
>> > > > On trunk builds, "new" tests are anything added in the last 7 days.
>> > They
>> > > > are run with some tolerance for flakiness.
>> > > >
>> > > > The point of this is to discourage flaky tests from being added to
>> > trunk.
>> > > >
>> > > > Please update your PRs with trunk and let me know if you see any
>> > > weirdness.
>> > > > Feel free to tag me in the PR, reply to this thread, or email me
>> > directly
>> > > > with questions.
>> > > >
>> > > > Thanks!
>> > > > David A
>> > > >
>> > >
>> >
>>
>
>
> --
> David Arthur
>

Reply via email to