osdir.com

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Flink 1.7 doesn't work with Kafka Table Source Descriptors


Hi Cheng,

Thanks for your reply will try out and update you on this.

Cheers,
Dhanuka


On Sat, 22 Dec 2018, 20:41 Hequn Cheng <chenghequn@xxxxxxxxx wrote:
Hi dhanuka,

I failed to reproduce your error with release-1.7.0. It seems Kafka.toConnectorProperties() should be called instead of ConnectorDescriptor.toConnectorProperties(), the latter one is an abstract class, which lead to the AbstractMethodError.

From the picture uploaded, it is strange that the jar of 1.6.1 is mixed with the jar of 1.7.0. It may result in class conflict problem. 
Furthermore, set flink dependency scope to provided, so that classes of flink will not be packaged into the user jar. It will also cause class conflict problem.

Best, 
Hequn


On Fri, Dec 21, 2018 at 6:24 PM dhanuka ranasinghe <dhanuka.priyanath@xxxxxxxxx> wrote:
Add Dev Group

On Fri, Dec 21, 2018 at 6:21 PM dhanuka ranasinghe <dhanuka.priyanath@xxxxxxxxx> wrote:
Hi All,

I have tried to read data from Kafka from Flink using Table API. It's working fine with Flink 1.4 but when upgrade to 1.7 given me below error. I have attached the libraries added to Flink.

Could you please help me on this.

bin/flink run stream-analytics-0.0.1-SNAPSHOT.jar --read-topic testin --write-topic testout --bootstrap.servers localhost --group.id analytics
Starting execution of program
java.lang.AbstractMethodError: org.apache.flink.table.descriptors.ConnectorDescriptor.toConnectorProperties()Ljava/util/Map;
    at org.apache.flink.table.descriptors.ConnectorDescriptor.toProperties(ConnectorDescriptor.java:58)
    at org.apache.flink.table.descriptors.ConnectTableDescriptor.toProperties(ConnectTableDescriptor.scala:107)
    at org.apache.flink.table.descriptors.StreamTableDescriptor.toProperties(StreamTableDescriptor.scala:95)
    at org.apache.flink.table.factories.TableFactoryUtil$.findAndCreateTableSource(TableFactoryUtil.scala:39)
    at org.apache.flink.table.descriptors.ConnectTableDescriptor.registerTableSource(ConnectTableDescriptor.scala:46)
    at org.monitoring.stream.analytics.FlinkTableSourceLatest.main(FlinkTableSourceLatest.java:82)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:529)
    at org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:421)
    at org.apache.flink.client.program.ClusterClient.run(ClusterClient.java:427)
    at org.apache.flink.client.cli.CliFrontend.executeProgram(CliFrontend.java:813)
    at org.apache.flink.client.cli.CliFrontend.runProgram(CliFrontend.java:287)
    at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:213)
    at org.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:1050)
    at org.apache.flink.client.cli.CliFrontend.lambda$main$11(CliFrontend.java:1126)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:422)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1754)
    at org.apache.flink.runtime.security.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41)
    at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:1126)

Cheers,
Dhanuka

--
Nothing Impossible,Creativity is more important than knowledge.


--
Nothing Impossible,Creativity is more important than knowledge.