chendaping created FLINK-35064:
----------------------------------

             Summary: Flink sql connector pulsar/hive 
com.fasterxml.jackson.annotation.JsonFormat$Value conflict
                 Key: FLINK-35064
                 URL: https://issues.apache.org/jira/browse/FLINK-35064
             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)

Reply via email to