quarkus icon indicating copy to clipboard operation
quarkus copied to clipboard

Fix and reenable SimpleContextPropagationTest.testArcMEContextPropagationDisabled

Open gsmet opened this issue 2 years ago • 3 comments

It has been disabled here because it was flaky: https://github.com/quarkusio/quarkus/pull/28127 .

/cc @mkouba @FroMage

gsmet avatar Sep 21 '22 13:09 gsmet

/cc @FroMage, @manovotn

quarkus-bot[bot] avatar Sep 21 '22 13:09 quarkus-bot[bot]

@gsmet got link to some PRs that failed this? I have been trying to reproduce this with a loop execution locally but so far not a single failure.

BTW this is the same test that we tried to fix in https://github.com/quarkusio/quarkus/pull/27284 Although back then I think I saw at least some failures locally...

manovotn avatar Sep 21 '22 15:09 manovotn

Yes, here for instance: https://github.com/quarkusio/quarkus/pull/28121

gsmet avatar Sep 21 '22 15:09 gsmet

I spent some fair tome debugging this yesterday. From my findings, I was never able to reproduce the failure when running the whole test class. However, if you run this one test directly, you can (at least mostly) get the failure.

I could see that in case of failure the CP actually behaves correctly but the problem is with the original req. context inside plain @Get method - this one doesn't get terminated at all. Now, these test use old RE Classic with undertow beneath; I am not sure if it is intended or if we could just rewrite them to use RE reactive. Note that some of the tests make use of io.reactivex.Single and io.smallrye.mutiny.Multi as the endpoint method's return value and I have no clue if this is legit in RE reactive.

Maybe @geoand would know if rewriting this to RE reactive makes sense? It'd probably be more fruitful than trying to pinpoint the failure for RE classic and undertow which are (as far as I know) deprecated anyway?

manovotn avatar Sep 22 '22 08:09 manovotn

Yes, it makes total sense. The combination of using reactive types with RESTEasy Classic is just too problematic (and is one of the reasons why we did RR in the first place).

geoand avatar Sep 22 '22 09:09 geoand

BTW, I'm wondering if we could get rid of io.reactivex.Single now? @cescoffier WDYT?

gsmet avatar Sep 22 '22 09:09 gsmet

@gsmet yes, probably time to remove the RX java 2 support

cescoffier avatar Sep 22 '22 09:09 cescoffier

Definitely +1 for that

geoand avatar Sep 22 '22 09:09 geoand