-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
quarkus.test.flat-class-path=true required to run Avro tests #16804
Comments
I guess this is something for @stuartwdouglas |
The same kind of issue seems to be happening in Camel Quarkus AtlasMap test. AtlasMap has a compound classloader which allows for passing our preferred class loader, but there is no way to override the ordering of its delegate classloaders. (Actually their compound class loader is using a HashSet for storing the delegates, so the ordering is even not reproducible.) So when a bad ordering happens, is not possible to cast a The compound class loader of AtlasMap (and perhaps also of Avro) apparently assumes that the class loaders do not overlap. The setup in Quarkus JVM test does not meet that assumption. https://quarkus.io/guides/class-loading-reference seems to suggest that it is by design. Could you @stuartwdouglas please confirm that my undestanding is correct? I wonder how should issues like this and the above be addressed? In case of AtlasMap I can propose changes in how they chain the classloaders. I'll perhaps succeed there, but which other options do I have for projects not ready to accept this kind of changes? The |
This prevents the base runtime CL from loading deployment classes. Fixes quarkusio#16810 Fixes quarkusio#16804
This prevents the base runtime CL from loading deployment classes. Fixes quarkusio#16810 Fixes quarkusio#16804
This prevents the base runtime CL from loading deployment classes. Fixes quarkusio#16810 Fixes quarkusio#16804
This prevents the base runtime CL from loading deployment classes. Fixes quarkusio#16810 Fixes quarkusio#16804
This prevents the base runtime CL from loading deployment classes. Fixes quarkusio#16810 Fixes quarkusio#16804
This prevents the base runtime CL from loading deployment classes. Fixes quarkusio#16810 Fixes quarkusio#16804
7ca3307 added
quarkus.test.flat-class-path=true
to various Avro related test modules see e.g. 7ca3307#diff-6d16e1bd2cec46a1c2d8f00ec4f3476b7554df6379ac769a0492f8aad9f69911R10 Not sure what particular failure symptoms were observed there.After upgrading to Quarkus 2.0.0.Alpha1, adding
quarkus.test.flat-class-path=true
is also required in Camel Quarkus avro and avro-rpc tests.Expected behavior
Avro related tests should pass without
quarkus.test.flat-class-path=true
Actual behavior
Here is the exception from Camel Quarkus Avro test:
To Reproduce
Reproducing with Camel Quarkus is currently only possible in camel-main branch of Camel Quarkus, which requires a Camel SNAPSHOT. I assume removing
quarkus.test.flat-class-path=true
from the tests in Quarkus source tree can serve as a reproducer too.The text was updated successfully, but these errors were encountered: