[ 
https://issues.apache.org/jira/browse/FLINK-39403?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated FLINK-39403:
-----------------------------------
    Labels: pull-request-available  (was: )

> Postgres snapshotting phase might cause transaction leak
> --------------------------------------------------------
>
>                 Key: FLINK-39403
>                 URL: https://issues.apache.org/jira/browse/FLINK-39403
>             Project: Flink
>          Issue Type: Bug
>          Components: Flink CDC
>            Reporter: Levani Kokhreidze
>            Priority: Major
>              Labels: pull-request-available
>         Attachments: Screenshot 2026-04-03 at 14.07.58.png
>
>
> We observe increase in "idle in transaction" times when using Flink CDC 
> (3.4.0 version) with Postgres database. One possible cause might be
>  
> {code:java}
> PostgresSnapshotSplitReadTask ->
> PostgresQueryUtils.readTableSplitDataStatement -> 
> PostgresQueryUtils.initStatement
> {code}
> initStatement in return disables auto commit for the connection due to 
> setting the fetchSize on the statement:
> {code:java}
> private static PreparedStatement initStatement(JdbcConnection jdbc, String 
> sql, int fetchSize)
>         throws SQLException {
>     final Connection connection = jdbc.connection();
>     connection.setAutoCommit(false);
>     final PreparedStatement statement = connection.prepareStatement(sql);
>     statement.setFetchSize(fetchSize);
>     return statement;
> } {code}
> There's no explicit commit/rollback calls which might cause the transaction 
> leak.
> Attached screenshot shows one of the replica databases showing increase in 
> the idle in transaction metric. Table in question had evenly split chunks and 
> there was no other process connecting to that database but Flink CDC.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to