quarkus-qe / quarkus-test-suite

16 stars 34 forks source link

Add coverage for ArC fix when a framework bean uses the decorator #2220

Closed jedla97 closed 3 days ago

jedla97 commented 5 days ago

Summary

This adding the coverage for https://issues.redhat.com/browse/QUARKUS-5178. It's tested with Quarkiverse extension as the reproducer attached in issue and it was only scenario which I was able to reproduce.

To test this you need external lib which contains class (lib_class) implementing the interface. This interface is also aplied on class anotated as decorator in Quarkus app when the bean of lib_class is injected at the same time.

This error happen randomly in dev/test mode.

The Quarkus PR is https://github.com/quarkusio/quarkus/pull/43245

I tried to use same test which they using but wasn't able to reproduce the original issue.

Note for 3.8 backport: the relevant issue is https://issues.redhat.com/browse/QUARKUS-5292

Please select the relevant options.

Checklist:

jedla97 commented 4 days ago

I don't like that we are adding tests for quarkiverse extensions (which are AFAIK unsupported). But if that is the only way how to reproduce the issue, guess we'll go with it.

I would love it other way but I was not able to reproduce it another way (spend few days on it). It's fixing the race condition in dev/test mode, so upstream coverage can also work but at the same time it can occur once in 50 runs.

Personally think that there is small number of cases where this happen.

Maybe cc @rsvoboda for info if he agree with this coverage of the QUARKUS-5292

rsvoboda commented 4 days ago

Let's have it for 3.15 branch. I wouldn't backport it to 3.8.

If the fixed version of https://github.com/quarkiverse/quarkus-kafka-streams-processor/ makes troubles in the future, we can drop it.