-
Notifications
You must be signed in to change notification settings - Fork 20
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
Replace usage of KubernetesServerTestResource with WithKubernetesTestServer annotation #452
Conversation
@shawkins for some reason when I replaced QuakusTestResoruce with WithKubernetesTestServer annotation, unit tests triggered by maven surefire failed after some time with OOM |
@kornys looks like we'll need to reach out to the quarkus team. That doesn't look like an error on our part. An incremental change to try would be to use: @QuarkusTestResource(value=KubernetesServerTestResource.class, restrictToAnnotatedClass = true) and see if it produces the same error. |
ok I will try it |
@shawkins I have just tried suggested annotation with same results (OOM) |
@kornys a quarkus issue is definitely needed. |
ok I will open issue in quarkus |
@kornys pretty sure you were going to do so but just as reminder please link the Quarkus issue to this one ;-) |
I'm trying to reproduce the issue locally but looking at the stack trace, I suspect an infinite loop in the CRD generation process… I might be wrong, though, hopefully I should know more soon. |
…Server annotation
dec33cb
to
1c64089
Compare
@kornys @ppatierno still has problems after the 2.2.2 upgrade. |
@kornys was there already a quarkus issue captured for this? |
Captured upstream as quarkusio/quarkus#18973 |
It looking at alternatives, there's not a simple way for us to supply a different KubernetesClient. If you try creating a Mock bean, a Provider in the test src, etc. Quarkus will still initially attempt to use test support that is baked into the quarkus kubernetes extension - which will occur before normal beans are inited. This appears to be a problem even if we tried to inject something other KubernetesClient that provided a client - the extension/platform support would still initially be used and cause a failure. I think we need to push to get the root issue resolved. @metacosm this OOM does appear related to the operator SDK. If I change just the sync module to using the new annotation, it works fine. Some oddities about what is happening - it requires more than 1 class with restrictToAnnotatedClass = true, but then the actually OOM can occur in any other test. For example if I change both ManagedKafka* tests then do a "mvn clean install -Dtest=ManagedKafka*" - it's fine. If I do "mvn clean install" - it fails. If I run the test whole test suite through the IDE, it's fine. I'll poke around a bit more with some debugging to see if anything jumps out. |
No description provided.