[ 
https://issues.apache.org/jira/browse/FLINK-23813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17400471#comment-17400471
 ] 

Roman Khachatryan commented on FLINK-23813:
-------------------------------------------

Sure [~xtsong].

 

[~Akihito Liang],

> if in JdbcBatchingOutputFormat have a protected function to reset 
>PrepareStatement 

I think that function is JdbcOutputFormat.updateExecutor. It is called if 
attemptFlush() fails; the latter is already overriden in 
TableJdbcUpsertOutputFormat. It can also override updateExecutor to update its 
own deleteExecutor.

WDYT?

 

However, could you please provide the stacktrace (or a test case), just to be 
sure we are fixing the right problem? 

 

cc: [~jark], [~arvid]

> 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.14.0, 1.12.5, 1.13.2
>            Reporter: Junning Liang
>            Priority: Critical
>             Fix For: 1.14.0, 1.12.6, 1.13.3
>
>
> 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)

Reply via email to