Affects: 5.2.x
For bugs ,I found an invalid code from DefaultSingletonBeanRegistry#getSingleton(String, ObjectFactory<?>). There is a problem with exception handling in the above method. I need a screenshot to show this.
This block of code will not be executed:
if (recordSuppressedExceptions) {
for (Exception suppressedException : this.suppressedExceptions) {
ex.addRelatedCause(suppressedException);
}
}
As mentioned above, this is a minor problem that I discovered when I re-analyzed the Spring lifecycle source code.
Comment From: r331
Nice catch!
Comment From: snicoll
The boolean initialization works by making sure that the list is null. The list is fed by onSuppressedException. When you look at the code from top to bottom, it gives a feeling that the list is always empty but there is callback to the method above while the bean (or any of its dependency) is created.