-
Notifications
You must be signed in to change notification settings - Fork 40.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
NPE in OnClassCondition.resolveOutcomesThreaded following thread interruption because firstHalf is null #41709
Comments
@claussenj I am surprised the original fix did not work. Is there a way for us to reproduce the issue? Can you share a small sample with instructions? |
Hi Stephane @snicoll, |
Thanks for following-up.
Please don't, and rather add a comment here and we can reopen this one. |
Hello Team,
Here are the details:
As a temp workaround we set ThreadedOutcomesResolver.outcomes to an empty array when the InterruptedException is caught. Maythe the same should also take place when an exception is caught in the thread Here are the exceptions:
Let me know if any other details are needed. regards |
This is a follow-up of issue #41492.
We have now deployed Spring Boot 3.3.2 in the affected environment and the original problem addressed in the issue above still exists even though the code change is in place: We get the NPE "because "firstHalf" is null" and the process exits but the original exception is not logged.
When running with -XX:ActiveProcessorCount=1 I have found an InterruptedException from kafka while processing some event. The stack trace does not fit, but I take the idea: What if an InterruptedException is thrown ThreadedOutcomesResolver.resolveOutcomes()? Then line 166 is hit and still a NPE can occur because this.outcomes is not initialized.
spring-boot/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/OnClassCondition.java
Line 166 in c7e29b7
best regards
Jens
The text was updated successfully, but these errors were encountered: