From 081e2e1f44e5c6011663153b9e616c1b59264be4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dariusz=20J=C4=99drzejczyk?= Date: Wed, 3 Jan 2024 12:31:37 +0100 Subject: [PATCH 1/2] Ignoring flaky JCStress tests FluxSwitchMap and FluxSwitchOnFirst JCStress tests are failing randomly and it needs to be investigated why. We don't want their flakiness to hide other issues when the CI fails, so they are being investigated in related issues. Related #3633 Related #3627 --- .../publisher/FluxSwitchMapStressTest.java | 3 +- ...luxSwitchOnFirstConditionalStressTest.java | 9 ++++-- .../FluxSwitchOnFirstStressTest.java | 30 ++++++++++++------- 3 files changed, 28 insertions(+), 14 deletions(-) diff --git a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchMapStressTest.java b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchMapStressTest.java index 99ee41353e..7060348dc3 100644 --- a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchMapStressTest.java +++ b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchMapStressTest.java @@ -270,7 +270,8 @@ public void arbiter(II_Result r) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3633) + //@JCStressTest @Outcome(id = {"200, 0", "200, 1"}, expect = ACCEPTABLE, desc = "Should produced exactly what was requested") @State public static class RequestAndProduceStressTest2 extends FluxSwitchMapStressTest { diff --git a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstConditionalStressTest.java b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstConditionalStressTest.java index 103aad97ca..13cbfeedad 100644 --- a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstConditionalStressTest.java +++ b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstConditionalStressTest.java @@ -56,7 +56,8 @@ public abstract class FluxSwitchOnFirstConditionalStressTest { abstract Flux switchOnFirst(Signal signal, Flux inbound); - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = {"1, 1, 1, 1, 1"}, expect = ACCEPTABLE) @State public static class OutboundOnSubscribeAndRequestStressTest @@ -95,7 +96,8 @@ public void arbiter(LLLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "1, 2, 0, 1"}, expect = ACCEPTABLE, desc = "inbound next with error happens first") @Outcome(id = { @@ -143,7 +145,8 @@ public void arbiter(LLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "1, 1, 2, 1, 1"}, expect = ACCEPTABLE, desc = "outbound cancel happened before inbound next") @Outcome(id = { diff --git a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstStressTest.java b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstStressTest.java index c4f9e5e8dc..d50c9537af 100644 --- a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstStressTest.java +++ b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstStressTest.java @@ -57,7 +57,8 @@ public abstract class FluxSwitchOnFirstStressTest { abstract Flux switchOnFirst(Signal signal, Flux inbound); - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = {"1, 1, 1, 1, 1"}, expect = ACCEPTABLE) @State public static class OutboundOnSubscribeAndRequestStressTest @@ -96,7 +97,8 @@ public void arbiter(LLLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "0, 0, 1, 2, 2, 0, 1, 1, 0"}, expect = ACCEPTABLE, desc = "Inbound got second request, delivered onNext('value') and delivered onComplete() before cancellation") @Outcome(id = { @@ -168,7 +170,8 @@ public void arbiter(LLLLLLLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "0, 0, 1, 2, 2, 0, 2, 1, 0"}, expect = ACCEPTABLE, desc = "Inbound got second request, delivered onNext('value') and delivered onError() before cancellation") @Outcome(id = { @@ -241,7 +244,8 @@ public void arbiter(LLLLLLLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "1, 2, 0, 1"}, expect = ACCEPTABLE, desc = "inbound next with error happens first") @Outcome(id = { @@ -290,7 +294,8 @@ public void arbiter(LLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "0, 2, 0, 0"}, expect = ACCEPTABLE, desc = "inbound error with transformation error happens first") @Outcome(id = { @@ -340,7 +345,8 @@ public void arbiter(LLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "0, 2, 0, 0"}, expect = ACCEPTABLE, desc = "inbound complete with transformation error happens first") @Outcome(id = { @@ -390,7 +396,8 @@ public void arbiter(LLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "0, 0, 1, 2, 2, 1, 0, 1, 0"}, expect = ACCEPTABLE, desc = "inbound request happened first. then inbound cancel. then outbound cancel") @Outcome(id = { @@ -464,7 +471,8 @@ public void arbiter(LLLLLLLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "1, 1, 2, 1, 1"}, expect = ACCEPTABLE, desc = "outbound cancel happened before inbound next") @Outcome(id = { @@ -525,7 +533,8 @@ public void arbiter(LLLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "1, 0, 1, 1, 0"}, expect = ACCEPTABLE, desc = "inbound complete happened before outbound cancel") @Outcome(id = { @@ -586,7 +595,8 @@ public void arbiter(LLLLL_Result result) { } } - @JCStressTest + // Ignore, flaky test (https://github.com/reactor/reactor-core/issues/3627) + //@JCStressTest @Outcome(id = { "1, 0, 2, 1, 0"}, expect = ACCEPTABLE, desc = "inbound error happened before outbound cancel") @Outcome(id = { From 8d0f9992a5c05cbe6d24b15bde67e40c489bf7a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dariusz=20J=C4=99drzejczyk?= Date: Wed, 10 Jan 2024 12:09:27 +0100 Subject: [PATCH 2/2] License headers --- .../java/reactor/core/publisher/FluxSwitchMapStressTest.java | 2 +- .../core/publisher/FluxSwitchOnFirstConditionalStressTest.java | 2 +- .../reactor/core/publisher/FluxSwitchOnFirstStressTest.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchMapStressTest.java b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchMapStressTest.java index 7060348dc3..a6e275870a 100644 --- a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchMapStressTest.java +++ b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchMapStressTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2022 VMware Inc. or its affiliates, All Rights Reserved. + * Copyright (c) 2021-2024 VMware Inc. or its affiliates, All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstConditionalStressTest.java b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstConditionalStressTest.java index 13cbfeedad..5812fa48a6 100644 --- a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstConditionalStressTest.java +++ b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstConditionalStressTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2022 VMware Inc. or its affiliates, All Rights Reserved. + * Copyright (c) 2021-2024 VMware Inc. or its affiliates, All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstStressTest.java b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstStressTest.java index d50c9537af..db215cad25 100644 --- a/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstStressTest.java +++ b/reactor-core/src/jcstress/java/reactor/core/publisher/FluxSwitchOnFirstStressTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2022 VMware Inc. or its affiliates, All Rights Reserved. + * Copyright (c) 2021-2024 VMware Inc. or its affiliates, All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License.