??????????
????????????????????????????connector????????????jdbc????????????????????????????????????????????????????????????????????????
??????????????????????????????

statement.clearParameters();
statement = lookupKeyRowConverter.toExternal(keyRow, statement);
try (ResultSet resultSet = statement.executeQuery())
??????statement.executeQuery()??????????????????????????????????????????????????????????????????????????????


------------------ ???????? ------------------
??????:                                                                         
                                               "user-zh"                        
                                                            
<[email protected]&gt;;
????????:&nbsp;2020??12??1??(??????) ????11:17
??????:&nbsp;"user-zh"<[email protected]&gt;;

????:&nbsp;Re:Flinksql????phoenix????????????Caused by: 
org.apache.calcite.avatica.NoSuchStatementException



Hi,
&nbsp;&nbsp; ???????????????????????? 
??com.custom.jdbc.table.JdbcRowDataLookupFunction?? ?????????? 
PreparedStatement ????????
&nbsp;&nbsp; 
??????????????????https://github.com/apache/flink/blob/master/flink-connectors/flink-connector-jdbc/src/main/java/org/apache/flink/connector/jdbc/table/JdbcRowDataLookupFunction.java
?????????? phoenix ?????????? SQL ?????????????????????? 
JDBCRowDataLookupFunction ????????


Best ??
Hailong
?? 2020-12-01 16:40:48??"hoose" <[email protected]&gt; ??????
&gt;flinksql????kafka,???????? connector phoenix ????????
&gt;????????????????????????????????????????????????????????
&gt;2020-11-24 00:52:38,534 ERROR 
com.custom.jdbc.table.JdbcRowDataLookupFunction&amp;nbsp;[] - JDBC executeBatch 
error, retry times = 2
&gt;java.sql.SQLException: null
&gt;    at org.apache.calcite.avatica.Helper.createException(Helper.java:56) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at org.apache.calcite.avatica.Helper.createException(Helper.java:41) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.AvaticaConnection.executeQueryInternal(AvaticaConnection.java:557)
 ~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.AvaticaPreparedStatement.executeQuery(AvaticaPreparedStatement.java:137)
 ~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
com.custom.jdbc.table.JdbcRowDataLookupFunction.eval(JdbcRowDataLookupFunction.java:145)
 [sql-client-1.0-SNAPSHOT.jar:?]
&gt;    at LookupFunction$2.flatMap(Unknown Source) 
[flink-table-blink_2.11-1.11.1.jar:?]
&gt;    at 
org.apache.flink.table.runtime.operators.join.lookup.LookupJoinRunner.processElement(LookupJoinRunner.java:82)
 [flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.table.runtime.operators.join.lookup.LookupJoinRunner.processElement(LookupJoinRunner.java:36)
 [flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.ProcessOperator.processElement(ProcessOperator.java:66)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.pushToOperator(OperatorChain.java:717)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.collect(OperatorChain.java:692)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.collect(OperatorChain.java:672)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.CountingOutput.collect(CountingOutput.java:52)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.CountingOutput.collect(CountingOutput.java:30)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.StreamSourceContexts$NonTimestampContext.collect(StreamSourceContexts.java:104)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.StreamSourceContexts$NonTimestampContext.collectWithTimestamp(StreamSourceContexts.java:111)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.connectors.kafka.internals.AbstractFetcher.emitRecordsWithTimestamps(AbstractFetcher.java:352)
 [flink-sql-connector-kafka_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.connectors.kafka.internal.KafkaFetcher.partitionConsumerRecordsHandler(KafkaFetcher.java:185)
 [flink-sql-connector-kafka_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.connectors.kafka.internal.KafkaFetcher.runFetchLoop(KafkaFetcher.java:141)
 [flink-sql-connector-kafka_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.connectors.kafka.FlinkKafkaConsumerBase.run(FlinkKafkaConsumerBase.java:755)
 [flink-sql-connector-kafka_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:100)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:63) 
[flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.runtime.tasks.SourceStreamTask$LegacySourceFunctionThread.run(SourceStreamTask.java:201)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;Caused by: org.apache.calcite.avatica.NoSuchStatementException
&gt;    at 
org.apache.calcite.avatica.remote.RemoteMeta$15.call(RemoteMeta.java:349) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.remote.RemoteMeta$15.call(RemoteMeta.java:343) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.AvaticaConnection.invokeWithRetries(AvaticaConnection.java:793)
 ~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.remote.RemoteMeta.execute(RemoteMeta.java:342) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.AvaticaConnection.executeQueryInternal(AvaticaConnection.java:548)
 ~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    ... 20 more
&gt;2020-11-24 00:52:40,539 ERROR 
org.apache.flink.connector.jdbc.table.JdbcRowDataLookupFunction [] - JDBC 
executeBatch error, retry times = 3
&gt;java.sql.SQLException: null
&gt;    at org.apache.calcite.avatica.Helper.createException(Helper.java:56) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at org.apache.calcite.avatica.Helper.createException(Helper.java:41) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.AvaticaConnection.executeQueryInternal(AvaticaConnection.java:557)
 ~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.AvaticaPreparedStatement.executeQuery(AvaticaPreparedStatement.java:137)
 ~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
com.custom.phoenix.jdbc.table.JdbcRowDataLookupFunction.eval(JdbcRowDataLookupFunction.java:145)
 [sql-client-1.0-SNAPSHOT.jar:?]
&gt;    at LookupFunction$2.flatMap(Unknown Source) 
[flink-table-blink_2.11-1.11.1.jar:?]
&gt;    at 
org.apache.flink.table.runtime.operators.join.lookup.LookupJoinRunner.processElement(LookupJoinRunner.java:82)
 [flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.table.runtime.operators.join.lookup.LookupJoinRunner.processElement(LookupJoinRunner.java:36)
 [flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.ProcessOperator.processElement(ProcessOperator.java:66)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.pushToOperator(OperatorChain.java:717)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.collect(OperatorChain.java:692)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.collect(OperatorChain.java:672)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.CountingOutput.collect(CountingOutput.java:52)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.CountingOutput.collect(CountingOutput.java:30)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.StreamSourceContexts$NonTimestampContext.collect(StreamSourceContexts.java:104)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.StreamSourceContexts$NonTimestampContext.collectWithTimestamp(StreamSourceContexts.java:111)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.connectors.kafka.internals.AbstractFetcher.emitRecordsWithTimestamps(AbstractFetcher.java:352)
 [flink-sql-connector-kafka_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.connectors.kafka.internal.KafkaFetcher.partitionConsumerRecordsHandler(KafkaFetcher.java:185)
 [flink-sql-connector-kafka_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.connectors.kafka.internal.KafkaFetcher.runFetchLoop(KafkaFetcher.java:141)
 [flink-sql-connector-kafka_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.connectors.kafka.FlinkKafkaConsumerBase.run(FlinkKafkaConsumerBase.java:755)
 [flink-sql-connector-kafka_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:100)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:63) 
[flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.flink.streaming.runtime.tasks.SourceStreamTask$LegacySourceFunctionThread.run(SourceStreamTask.java:201)
 [flink-dist_2.11-1.11.1.jar:1.11.1]
&gt;Caused by: org.apache.calcite.avatica.NoSuchStatementException
&gt;    at 
org.apache.calcite.avatica.remote.RemoteMeta$15.call(RemoteMeta.java:349) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.remote.RemoteMeta$15.call(RemoteMeta.java:343) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.AvaticaConnection.invokeWithRetries(AvaticaConnection.java:793)
 ~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.remote.RemoteMeta.execute(RemoteMeta.java:342) 
~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    at 
org.apache.calcite.avatica.AvaticaConnection.executeQueryInternal(AvaticaConnection.java:548)
 ~[flink-table-blink_2.11-1.11.1.jar:1.11.1]
&gt;    ... 20 more
&gt;2020-11-24 00:52:40,635 WARN&amp;nbsp; 
org.apache.flink.runtime.taskmanager.Task&amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; switched from RUNNING to 
FAILED.
&gt;java.lang.RuntimeException: Execution of JDBC statement failed.
&gt;
&gt;
&gt;
&gt;??????????????????????????
&gt;????

回复