Hongshun Wang created FLINK-35349: ------------------------------------- Summary: Use connection in openJdbcConnection of SqlServerDialect/Db2Dialect/OracleDialect Key: FLINK-35349 URL: https://issues.apache.org/jira/browse/FLINK-35349 Project: Flink Issue Type: Improvement Components: Flink CDC Affects Versions: cdc-3.1.0 Reporter: Hongshun Wang Fix For: cdc-3.2.0
Current, some dialect's `openJdbcConnection` create connection without connection pool. It means that will create a new connection each time. Howver , openJdbcConnection is used in generateSplits now, which means that enumerator will create a new connection for once split. A big table will create connection again and again. {code:java} public Collection<SnapshotSplit> generateSplits(TableId tableId) { try (JdbcConnection jdbc = dialect.openJdbcConnection(sourceConfig)) { LOG.info("Start splitting table {} into chunks...", tableId); long start = System.currentTimeMillis(); Table table = Objects.requireNonNull(dialect.queryTableSchema(jdbc, tableId)).getTable(); Column splitColumn = getSplitColumn(table, sourceConfig.getChunkKeyColumn()); final List<ChunkRange> chunks; {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)