Closed
Description
Juergen Hoeller opened SPR-15069 and commented
Following up on #19633 which turned out to be a lack of bean dependency tracking for the TaskScheduler
lookup in SchedulerAnnotationBeanPostProcessor
, it turns out that we're not tracking bean dependencies for calls to other @Bean
methods within a @Configuration
class at all. Since such calls are symbolic bean references, they should have a dependent-bean relationship tracked like any other form of injection does already, allowing to shut them down in proper order. This is also nicely in line with the changes behind #12206 which introduced the resolveNamedBean
method in 4.3.3, as well as with the deterministic @Bean
registration goal in #19074 (also for 4.3.6).
Issue Links:
- findDefaultEntityManagerFactory should consider EMF bean's primary flag [SPR-7549] #12206 findDefaultEntityManagerFactory should consider EMF bean's primary flag
- Deterministic and JVM-independent @Bean registration order within Class-reflected configuration classes [SPR-14505] #19074 Deterministic and JVM-independent
@Bean
registration order within Class-reflected configuration classes - SchedulingConfigurer's ScheduledTaskRegistrar should reliably shut down before TaskScheduler [SPR-15067] #19633 SchedulingConfigurer's ScheduledTaskRegistrar should reliably shut down before TaskScheduler
- Functional bean dependencies tracking [SPR-15417] #19979 Functional bean dependencies tracking