I'm not sure if this is the right place to log this issue, but thought I would start here.
When @EnableRetry
is added to a Boot application also using spring-boot-actuator
, the following occurs:
trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.retry.annotation.RetryConfiguration' of type [org.springframework.retry.annotation.RetryConfiguration$$EnhancerBySpringCGLIB$$2cf7388d] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
The same is also true when adding spring-boot-starter-jdbc
along with spring-boot-actuator
.
trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
It appears that the MeterRegistryPostProcessor
is causing some Advisors and other beans to be initialized early.
This initializr generated application shows the ProxyTransactionmanagementConfiguration
message during startup.
Adding @EnableRetry
and the following will cause the RetryConfiguration
message during startup.
<dependency>
<groupId>org.springframework.retry</groupId>
<artifactId>spring-retry</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</dependency>
Comment From: mbhave
It does appear to be that MeterRegistryPostProcessor
is causing early initialization of some advisor beans. I wonder if MeterRegistryPostProcessor
should be ordered to avoid that or if it should be marked as synthentic
like we do for dataSourceInitializerPostProcessor. Flagging for team-attention to see if that is indeed the issue.
Comment From: snicoll
Discussing with @jhoeller we trace it down to a regression in Spring Framework. Moving to the Spring Framework issue tracker.
Comment From: jhoeller
This should effectively be covered by the consistency measures in #24508. Kept around as a separate ticket since it constitutes a regression in the 5.2 line, to be reopened if these measures turn out to be insufficient.
Comment From: UditMishraMoodys
It does appear to be that
MeterRegistryPostProcessor
is causing early initialization of some advisor beans. I wonder ifMeterRegistryPostProcessor
should be ordered to avoid that or if it should be marked assynthentic
like we do for dataSourceInitializerPostProcessor. Flagging for team-attention to see if that is indeed the issue.
Guys, I am facing the exact issue with Spring boot 3.2.5 , not sure how to fix this. Sharing the exact stack_trace
@mbhave how did you solve this one?