Resolution: Won't Do
opening this as potential blocker based on conversation with Roberto:
Fetching a config property on ForkJoin common Pool thread failed.
Be aware that the behavior is not the same in dev mode and in prod mode as it's work in dev mode.
issue is caused by change in behavior from java 8 to java 11 (https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8184335)
the issue is that in JDK 8 the ForkJoin threads were using the CL of the thread loading the ForkJoin in JDK 11 it defaults to the SystemCL but this is just part of the issue
it highly depends on how the code looks like
- are you using JDk 8 or 11?
- are you using a thread pool that uses the Quarkus CL (and we also had issue where our own threads we re not setting the correct CL)
- even if all of the above verifies a Config may load correctly. When not on the correct CL, a new instance Config is created. It may work if the CL has access to the config you are trying to load
in the end it either fails or load with clone/copy rather than the right config instance.
PR on going here https://github.com/quarkusio/quarkus/pull/20178