Browse Source

Close connection after use in LiquibaseEndpoint

Update LiquibaseEndpoint so that connections are closed and returned to
the pool after use.

Fixes gh-6118
pull/6184/head
Johannes Edmeier 10 years ago committed by Phillip Webb
parent
commit
e89063cc07
  1. 9
      spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/LiquibaseEndpoint.java

9
spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/LiquibaseEndpoint.java

@ -54,8 +54,13 @@ public class LiquibaseEndpoint extends AbstractEndpoint<List<Map<String, ?>>> {
DatabaseFactory factory = DatabaseFactory.getInstance(); DatabaseFactory factory = DatabaseFactory.getInstance();
DataSource dataSource = this.liquibase.getDataSource(); DataSource dataSource = this.liquibase.getDataSource();
JdbcConnection connection = new JdbcConnection(dataSource.getConnection()); JdbcConnection connection = new JdbcConnection(dataSource.getConnection());
Database database = factory.findCorrectDatabaseImplementation(connection); try {
return service.queryDatabaseChangeLogTable(database); Database database = factory.findCorrectDatabaseImplementation(connection);
return service.queryDatabaseChangeLogTable(database);
}
finally {
connection.close();
}
} }
catch (Exception ex) { catch (Exception ex) {
throw new IllegalStateException("Unable to get Liquibase changelog", ex); throw new IllegalStateException("Unable to get Liquibase changelog", ex);

Loading…
Cancel
Save