DBZ-7275 Close connection registerd with bean registry
New connection created for bean registry is never closed. Close it during when stopping the task.
This commit is contained in:
parent
67260f8286
commit
37ebb8ecae
@ -61,6 +61,7 @@ public class MySqlConnectorTask extends BaseSourceTask<MySqlPartition, MySqlOffs
|
||||
private volatile MySqlTaskContext taskContext;
|
||||
private volatile ChangeEventQueue<DataChangeEvent> queue;
|
||||
private volatile AbstractConnectorConnection connection;
|
||||
private volatile AbstractConnectorConnection beanRegistryJdbcConnection;
|
||||
private volatile ErrorHandler errorHandler;
|
||||
private volatile MySqlDatabaseSchema schema;
|
||||
|
||||
@ -126,10 +127,11 @@ public ChangeEventSourceCoordinator<MySqlPartition, MySqlOffsetContext> start(Co
|
||||
}
|
||||
|
||||
// Manual Bean Registration
|
||||
beanRegistryJdbcConnection = connectionFactory.newConnection();
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.CONFIGURATION, config);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.CONNECTOR_CONFIG, connectorConfig);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.DATABASE_SCHEMA, schema);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.JDBC_CONNECTION, connectionFactory.newConnection());
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.JDBC_CONNECTION, beanRegistryJdbcConnection);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.VALUE_CONVERTER, valueConverters);
|
||||
|
||||
// Service providers
|
||||
@ -267,6 +269,15 @@ protected void doStop() {
|
||||
LOGGER.error("Exception while closing JDBC connection", e);
|
||||
}
|
||||
|
||||
try {
|
||||
if (beanRegistryJdbcConnection != null) {
|
||||
beanRegistryJdbcConnection.close();
|
||||
}
|
||||
}
|
||||
catch (SQLException e) {
|
||||
LOGGER.error("Exception while closing JDBC bean registry connection", e);
|
||||
}
|
||||
|
||||
if (schema != null) {
|
||||
schema.close();
|
||||
}
|
||||
|
@ -48,6 +48,7 @@ public class OracleConnectorTask extends BaseSourceTask<OraclePartition, OracleO
|
||||
private volatile OracleTaskContext taskContext;
|
||||
private volatile ChangeEventQueue<DataChangeEvent> queue;
|
||||
private volatile OracleConnection jdbcConnection;
|
||||
private volatile OracleConnection beanRegistryJdbcConnection;
|
||||
private volatile ErrorHandler errorHandler;
|
||||
private volatile OracleDatabaseSchema schema;
|
||||
|
||||
@ -76,10 +77,11 @@ public ChangeEventSourceCoordinator<OraclePartition, OracleOffsetContext> start(
|
||||
topicNamingStrategy, tableNameCaseSensitivity);
|
||||
|
||||
// Manual Bean Registration
|
||||
beanRegistryJdbcConnection = connectionFactory.newConnection();
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.CONFIGURATION, config);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.CONNECTOR_CONFIG, connectorConfig);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.DATABASE_SCHEMA, schema);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.JDBC_CONNECTION, connectionFactory.newConnection());
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.JDBC_CONNECTION, beanRegistryJdbcConnection);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.VALUE_CONVERTER, valueConverters);
|
||||
|
||||
// Service providers
|
||||
@ -188,6 +190,15 @@ public void doStop() {
|
||||
LOGGER.error("Exception while closing JDBC connection", e);
|
||||
}
|
||||
|
||||
try {
|
||||
if (beanRegistryJdbcConnection != null) {
|
||||
beanRegistryJdbcConnection.close();
|
||||
}
|
||||
}
|
||||
catch (SQLException e) {
|
||||
LOGGER.error("Exception while closing JDBC bean registry connection", e);
|
||||
}
|
||||
|
||||
if (schema != null) {
|
||||
schema.close();
|
||||
}
|
||||
|
@ -64,6 +64,7 @@ public class PostgresConnectorTask extends BaseSourceTask<PostgresPartition, Pos
|
||||
private volatile PostgresTaskContext taskContext;
|
||||
private volatile ChangeEventQueue<DataChangeEvent> queue;
|
||||
private volatile PostgresConnection jdbcConnection;
|
||||
private volatile PostgresConnection beanRegistryJdbcConnection;
|
||||
private volatile ReplicationConnection replicationConnection = null;
|
||||
|
||||
private volatile ErrorHandler errorHandler;
|
||||
@ -114,10 +115,11 @@ public ChangeEventSourceCoordinator<PostgresPartition, PostgresOffsetContext> st
|
||||
final PostgresOffsetContext previousOffset = previousOffsets.getTheOnlyOffset();
|
||||
|
||||
// Manual Bean Registration
|
||||
beanRegistryJdbcConnection = connectionFactory.newConnection();
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.CONFIGURATION, config);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.CONNECTOR_CONFIG, connectorConfig);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.DATABASE_SCHEMA, schema);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.JDBC_CONNECTION, connectionFactory.newConnection());
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.JDBC_CONNECTION, beanRegistryJdbcConnection);
|
||||
connectorConfig.getBeanRegistry().add(StandardBeanNames.VALUE_CONVERTER, valueConverter);
|
||||
|
||||
// Service providers
|
||||
@ -318,6 +320,15 @@ protected void doStop() {
|
||||
LOGGER.trace("Error while closing replication connection", e);
|
||||
}
|
||||
|
||||
try {
|
||||
if (beanRegistryJdbcConnection != null) {
|
||||
beanRegistryJdbcConnection.close();
|
||||
}
|
||||
}
|
||||
catch (Exception e) {
|
||||
LOGGER.trace("Error while closing JDBC bean registry connection", e);
|
||||
}
|
||||
|
||||
if (jdbcConnection != null) {
|
||||
jdbcConnection.close();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user