[ 
https://issues.apache.org/jira/browse/CARBONDATA-2169?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

PandaMonkey updated CARBONDATA-2169:
------------------------------------
    Description: 
Hi, when we using org.apache.carbondata:carbondata-hive:1.3.0, we got 
*NoSuchMethodError*. And by analyzing the source code, we found the root cause 
is conflicting classes in different JARs. It means that duplicate classes exist 
in different JARs, but they have different features, which leads to the really 
loaded classes are not the actually required ones of our project. (As JVM only 
load the classes present first on the classpath and shadow the other duplicate 
ones with the same name.) And such conflictiing problems exist in several JAR 
pairs dependent by carbondata-hive:1.3.0. The detailed conflicting info is 
listed in the attachment.

Conflicting Jar-pairs:

jar-pair:<org.objenesis:objenesis:2.1:><org.spark-project.hive:hive-exec:1.2.1.spark2:>
 
jar-pair:<org.apache.geronimo.specs:geronimo-annotation_1.0_spec:1.1.1:><javax.annotation:javax.annotation-api:1.2:>
 
jar-pair:<org.codehaus.jackson:jackson-core-asl:1.9.13:><org.apache.hive:hive-exec:1.2.1:>
 
jar-pair:<org.apache.avro:avro-mapred:1.7.7:hadoop2><org.apache.hive:hive-exec:1.2.1:>
 jar-pair:<com.sun.jersey:jersey-core:1.9:><javax.ws.rs:javax.ws.rs-api:2.0.1:>
 
jar-pair:<commons-beanutils:commons-beanutils-core:1.8.0:><commons-beanutils:commons-beanutils:1.7.0:>
 jar-pair:<log4j:log4j:1.2.16:><log4j:apache-log4j-extras:1.2.17:>
 
jar-pair:<org.spark-project.hive:hive-exec:1.2.1.spark2:><org.apache.hive:hive-exec:1.2.1:>
 
jar-pair:<org.apache.spark:spark-hive-thriftserver_2.11:2.2.1:><org.apache.hive:hive-service:1.2.1:>
 jar-pair:<xml-apis:xml-apis:1.3.04:><stax:stax-api:1.0.1:>
 
jar-pair:<org.codehaus.jackson:jackson-mapper-asl:1.9.13:><org.apache.hive:hive-exec:1.2.1:>
 
jar-pair:<javax.servlet:javax.servlet-api:3.1.0:><javax.servlet:servlet-api:2.5:>
 
jar-pair:<org.apache.commons:commons-lang3:3.5:><org.apache.hive:hive-exec:1.2.1:>
 
jar-pair:<commons-logging:commons-logging:1.1.3:><org.slf4j:jcl-over-slf4j:1.7.16:>
 jar-pair:<org.apache.hive:hive-exec:1.2.1:><com.google.guava:guava:16.0.1:>
 jar-pair:<javax.xml.stream:stax-api:1.0-2:><stax:stax-api:1.0.1:>

  was:
Hi, when we using org.apache.carbondata:carbondata-hive:1.3.0, we got 
NoSuchMethodError. And by analyzing the source code, we found the root cause is 
conflicting classes in different JARs. It means that duplicate classes exist in 
different JARs, but they have different features, which leads to the really 
loaded classes are not the actually required ones of our project. (As JVM only 
load the classes present first on the classpath and shadow the other duplicate 
ones with the same name.) And such conflictiing problems exist in several JAR 
pairs dependent by carbondata-hive:1.3.0. The detailed conflicting info is 
listed in the attachment.

Conflicting Jar-pairs:

jar-pair:<org.objenesis:objenesis:2.1:><org.spark-project.hive:hive-exec:1.2.1.spark2:>
jar-pair:<org.apache.geronimo.specs:geronimo-annotation_1.0_spec:1.1.1:><javax.annotation:javax.annotation-api:1.2:>
jar-pair:<org.codehaus.jackson:jackson-core-asl:1.9.13:><org.apache.hive:hive-exec:1.2.1:>
jar-pair:<org.apache.avro:avro-mapred:1.7.7:hadoop2><org.apache.hive:hive-exec:1.2.1:>
jar-pair:<com.sun.jersey:jersey-core:1.9:><javax.ws.rs:javax.ws.rs-api:2.0.1:>
jar-pair:<commons-beanutils:commons-beanutils-core:1.8.0:><commons-beanutils:commons-beanutils:1.7.0:>
jar-pair:<log4j:log4j:1.2.16:><log4j:apache-log4j-extras:1.2.17:>
jar-pair:<org.spark-project.hive:hive-exec:1.2.1.spark2:><org.apache.hive:hive-exec:1.2.1:>
jar-pair:<org.apache.spark:spark-hive-thriftserver_2.11:2.2.1:><org.apache.hive:hive-service:1.2.1:>
jar-pair:<xml-apis:xml-apis:1.3.04:><stax:stax-api:1.0.1:>
jar-pair:<org.codehaus.jackson:jackson-mapper-asl:1.9.13:><org.apache.hive:hive-exec:1.2.1:>
jar-pair:<javax.servlet:javax.servlet-api:3.1.0:><javax.servlet:servlet-api:2.5:>
jar-pair:<org.apache.commons:commons-lang3:3.5:><org.apache.hive:hive-exec:1.2.1:>
jar-pair:<commons-logging:commons-logging:1.1.3:><org.slf4j:jcl-over-slf4j:1.7.16:>
jar-pair:<org.apache.hive:hive-exec:1.2.1:><com.google.guava:guava:16.0.1:>
jar-pair:<javax.xml.stream:stax-api:1.0-2:><stax:stax-api:1.0.1:>


> Conflicting classes cause NoSuchMethodError, when our project using 
> org.apache.carbondata:carbondata-hive:1.3.0
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: CARBONDATA-2169
>                 URL: https://issues.apache.org/jira/browse/CARBONDATA-2169
>             Project: CarbonData
>          Issue Type: Bug
>          Components: hive-integration
>    Affects Versions: 1.3.0
>            Reporter: PandaMonkey
>            Priority: Major
>             Fix For: 1.3.1
>
>         Attachments: carbondata conflicts.txt
>
>
> Hi, when we using org.apache.carbondata:carbondata-hive:1.3.0, we got 
> *NoSuchMethodError*. And by analyzing the source code, we found the root 
> cause is conflicting classes in different JARs. It means that duplicate 
> classes exist in different JARs, but they have different features, which 
> leads to the really loaded classes are not the actually required ones of our 
> project. (As JVM only load the classes present first on the classpath and 
> shadow the other duplicate ones with the same name.) And such conflictiing 
> problems exist in several JAR pairs dependent by carbondata-hive:1.3.0. The 
> detailed conflicting info is listed in the attachment.
> Conflicting Jar-pairs:
> jar-pair:<org.objenesis:objenesis:2.1:><org.spark-project.hive:hive-exec:1.2.1.spark2:>
>  
> jar-pair:<org.apache.geronimo.specs:geronimo-annotation_1.0_spec:1.1.1:><javax.annotation:javax.annotation-api:1.2:>
>  
> jar-pair:<org.codehaus.jackson:jackson-core-asl:1.9.13:><org.apache.hive:hive-exec:1.2.1:>
>  
> jar-pair:<org.apache.avro:avro-mapred:1.7.7:hadoop2><org.apache.hive:hive-exec:1.2.1:>
>  
> jar-pair:<com.sun.jersey:jersey-core:1.9:><javax.ws.rs:javax.ws.rs-api:2.0.1:>
>  
> jar-pair:<commons-beanutils:commons-beanutils-core:1.8.0:><commons-beanutils:commons-beanutils:1.7.0:>
>  jar-pair:<log4j:log4j:1.2.16:><log4j:apache-log4j-extras:1.2.17:>
>  
> jar-pair:<org.spark-project.hive:hive-exec:1.2.1.spark2:><org.apache.hive:hive-exec:1.2.1:>
>  
> jar-pair:<org.apache.spark:spark-hive-thriftserver_2.11:2.2.1:><org.apache.hive:hive-service:1.2.1:>
>  jar-pair:<xml-apis:xml-apis:1.3.04:><stax:stax-api:1.0.1:>
>  
> jar-pair:<org.codehaus.jackson:jackson-mapper-asl:1.9.13:><org.apache.hive:hive-exec:1.2.1:>
>  
> jar-pair:<javax.servlet:javax.servlet-api:3.1.0:><javax.servlet:servlet-api:2.5:>
>  
> jar-pair:<org.apache.commons:commons-lang3:3.5:><org.apache.hive:hive-exec:1.2.1:>
>  
> jar-pair:<commons-logging:commons-logging:1.1.3:><org.slf4j:jcl-over-slf4j:1.7.16:>
>  jar-pair:<org.apache.hive:hive-exec:1.2.1:><com.google.guava:guava:16.0.1:>
>  jar-pair:<javax.xml.stream:stax-api:1.0-2:><stax:stax-api:1.0.1:>



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to