Skip to content

Commit 9da3b65

Browse files
committed
Merge branch '2.3.x' into 2.4.x
Closes gh-25174
2 parents 46bc551 + 708cbd7 commit 9da3b65

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/orm/jpa/DataSourceInitializedPublisher.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import org.springframework.boot.autoconfigure.jdbc.DataSourceSchemaCreatedEvent;
3737
import org.springframework.boot.jdbc.EmbeddedDatabaseConnection;
3838
import org.springframework.context.ApplicationContext;
39+
import org.springframework.context.ApplicationContextAware;
3940
import org.springframework.context.ApplicationListener;
4041
import org.springframework.context.annotation.ImportBeanDefinitionRegistrar;
4142
import org.springframework.context.event.ContextRefreshedEvent;
@@ -136,12 +137,17 @@ private boolean isInitializingDatabase(DataSource dataSource) {
136137
* blocks until any asynchronous DataSource initialization has completed.
137138
*/
138139
static class DataSourceInitializationCompletionListener
139-
implements ApplicationListener<ContextRefreshedEvent>, Ordered {
140+
implements ApplicationListener<ContextRefreshedEvent>, Ordered, ApplicationContextAware {
141+
142+
private volatile ApplicationContext applicationContext;
140143

141144
private volatile Future<?> dataSourceInitialization;
142145

143146
@Override
144147
public void onApplicationEvent(ContextRefreshedEvent event) {
148+
if (!event.getApplicationContext().equals(this.applicationContext)) {
149+
return;
150+
}
145151
Future<?> dataSourceInitialization = this.dataSourceInitialization;
146152
if (dataSourceInitialization != null) {
147153
try {
@@ -158,6 +164,11 @@ public int getOrder() {
158164
return Ordered.HIGHEST_PRECEDENCE;
159165
}
160166

167+
@Override
168+
public void setApplicationContext(ApplicationContext applicationContext) {
169+
this.applicationContext = applicationContext;
170+
}
171+
161172
}
162173

163174
/**

0 commit comments

Comments
 (0)