You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Junning Liang (Jira)" <ji...@apache.org> on 2021/08/16 12:51:00 UTC

[jira] [Created] (FLINK-23813) DeleteExecutor NPE

Junning Liang created FLINK-23813:
-------------------------------------

             Summary: DeleteExecutor NPE
                 Key: FLINK-23813
                 URL: https://issues.apache.org/jira/browse/FLINK-23813
             Project: Flink
          Issue Type: Bug
          Components: Connectors / JDBC
    Affects Versions: 1.13.2, 1.13.0, 1.12.2, 1.12.1, 1.12.0
            Reporter: Junning Liang
             Fix For: 1.14.0


Encountered a situation where I get an NPE from JDBCUpsertOutputFormat.

This occurs when jdbc disconnected and try to reconnect.

I need to write data to mysql in upsert way in sql, So it must group by unique key and the JdbcBatchingOutputFormat of Jdbc sink would use TableJdbcUpsertOutputFormat.

 

Jdbc would disconnected when The data interval exceeds the set connection time.I see that when jdbc reconnect , only JdbcBatchingOutputFormat#jdbcStatementExecutor(insert) would prepareStatements but TableJdbcUpsertOutputFormat#deleteExecutor would not prepareStatements so that come up NPE.

if in JdbcBatchingOutputFormat have a protected function to reset PrepareStatement and TableJdbcUpsertOutputFormat override this function to reset deleteExecutor, it would work well.

prepareStatements 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)