chendaping created FLINK-35063: ---------------------------------- Summary: Flink sql connector pulsar/hive com.fasterxml.jackson.annotation.JsonFormat$Value conflict Key: FLINK-35063 URL: https://issues.apache.org/jira/browse/FLINK-35063 Project: Flink Issue Type: Bug Components: Connectors / Hive, Connectors / Pulsar Affects Versions: 1.16.1 Reporter: chendaping
When I compile and package {{flink-sql-connector-pulsar}} & {{{}flink-sql-connector-hive{}}}, and then put these two jar files into the Flink lib directory, I execute the following SQL statement through {{{}bin/sql-client.sh{}}}: {code:java} // code placeholder CREATE TABLE pulsar_table ( content string, proc_time AS PROCTIME () ) WITH ( 'connector' = 'pulsar', 'topics' = 'persistent://xxx', 'service-url' = 'pulsar://xxx', 'source.subscription-name' = 'xxx', 'source.start.message-id' = 'latest', 'format' = 'csv', 'pulsar.client.authPluginClassName' = 'org.apache.pulsar.client.impl.auth.AuthenticationToken', 'pulsar.client.authParams' = 'token:xxx' ); select * from pulsar_table; {code} The task error exception stack is as follows: {code:java} Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.annotation.JsonFormat$Value.empty()Lcom/fasterxml/jackson/annotation/JsonFormat$Value; at org.apache.pulsar.shade.com.fasterxml.jackson.databind.cfg.MapperConfig.<clinit>(MapperConfig.java:56) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.pulsar.shade.com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:660) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.pulsar.shade.com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:576) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.pulsar.common.util.ObjectMapperFactory.createObjectMapperInstance(ObjectMapperFactory.java:151) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.pulsar.common.util.ObjectMapperFactory.<clinit>(ObjectMapperFactory.java:142) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.pulsar.client.impl.conf.ConfigurationDataUtils.create(ConfigurationDataUtils.java:35) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.pulsar.client.impl.conf.ConfigurationDataUtils.<clinit>(ConfigurationDataUtils.java:43) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.pulsar.client.impl.ClientBuilderImpl.loadConf(ClientBuilderImpl.java:77) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.flink.connector.pulsar.common.config.PulsarClientFactory.createClient(PulsarClientFactory.java:105) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.flink.connector.pulsar.source.enumerator.PulsarSourceEnumerator.<init>(PulsarSourceEnumerator.java:95) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.flink.connector.pulsar.source.enumerator.PulsarSourceEnumerator.<init>(PulsarSourceEnumerator.java:76) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.flink.connector.pulsar.source.PulsarSource.createEnumerator(PulsarSource.java:144) ~[flink-sql-connector-pulsar-4.0-SNAPSHOT.jar:4.0-SNAPSHOT] at org.apache.flink.runtime.source.coordinator.SourceCoordinator.start(SourceCoordinator.java:213) ~[flink-dist_2.12-1.16.1.jar:1.16.1] {code} The exception shows a conflict with {{{}com.fasterxml.jackson.annotation.JsonFormat$Value{}}}. I investigated and found that {{flink-sql-connector-pulsar}} and {{flink-sql-connector-hive}} depend on different versions, leading to this conflict. {code:java} // flink-sql-connector-pulsar pom.xml <dependency> <groupId>com.fasterxml.jackson</groupId> <artifactId>jackson-bom</artifactId> <type>pom</type> <scope>import</scope> <version>2.13.4.20221013</version> </dependency> // flink-sql-connector-hive pom.xml <dependency> <groupId>com.fasterxml.jackson</groupId> <artifactId>jackson-bom</artifactId> <type>pom</type> <scope>import</scope> <version>2.15.3</version> </dependency>{code} -- This message was sent by Atlassian Jira (v8.20.10#820010)