You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@falcon.apache.org by "Ying Zheng (JIRA)" <ji...@apache.org> on 2016/05/26 02:05:12 UTC

[jira] [Updated] (FALCON-1983) Upgrade jackson core and databind versions to fix dependency incompatibility with higher-version Hive

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

Ying Zheng updated FALCON-1983:
-------------------------------
    Description: 
When compiled with higher-version Hive (e.g. 1.2.1x), Falcon generates different versions of jackson-core and jackson-databind:

[root@os-r7-wbucju-falcon-2-4 2.5.0.0-562]# ls falcon/server/webapp/falcon/WEB-INF/lib/jack*
falcon/server/webapp/falcon/WEB-INF/lib/jackson-annotations-2.4.0.jar  falcon/server/webapp/falcon/WEB-INF/lib/jackson-databind-2.4.2.jar
falcon/server/webapp/falcon/WEB-INF/lib/jackson-core-2.2.3.jar         falcon/server/webapp/falcon/WEB-INF/lib/jackson-datatype-json-org-2.2.3.jar
falcon/server/webapp/falcon/WEB-INF/lib/jackson-core-asl-1.9.2.jar     falcon/server/webapp/falcon/WEB-INF/lib/jackson-mapper-asl-1.9.2.jar

This is because Hive is using a higher version of jackson-databind while Falcon pom has older version jackson. This results in errors when calling metadata rest api (e.g. http://127.0.0.1:15000/api/metadata/lineage/edges/all). See error details below.

To fix the dependency issue, we propose to upgrade jackson version to 2.x in pom configuration, i.e. use fasterxml instead of codehaus.

java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering()Z
	at com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:458)
	at com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:389)
	at com.fasterxml.jackson.databind.MappingJsonFactory.<init>(MappingJsonFactory.java:46)
	at com.fasterxml.jackson.databind.MappingJsonFactory.<init>(MappingJsonFactory.java:39)
	at com.tinkerpop.blueprints.util.io.graphson.GraphSONUtility.<clinit>(GraphSONUtility.java:41)

  was:
When compiled with higher version Hive, Falcon generates different versions of jackson-core and jackson-databind:

[root@os-r7-wbucju-falcon-2-4 2.5.0.0-562]# ls falcon/server/webapp/falcon/WEB-INF/lib/jack*
falcon/server/webapp/falcon/WEB-INF/lib/jackson-annotations-2.4.0.jar  falcon/server/webapp/falcon/WEB-INF/lib/jackson-databind-2.4.2.jar
falcon/server/webapp/falcon/WEB-INF/lib/jackson-core-2.2.3.jar         falcon/server/webapp/falcon/WEB-INF/lib/jackson-datatype-json-org-2.2.3.jar
falcon/server/webapp/falcon/WEB-INF/lib/jackson-core-asl-1.9.2.jar     falcon/server/webapp/falcon/WEB-INF/lib/jackson-mapper-asl-1.9.2.jar

This is because Hive is using a higher version of jackson-databind while Falcon pom has older version jackson. This results in errors when calling metadata rest api (e.g. http://127.0.0.1:15000/api/metadata/lineage/edges/all). See error details below.

To fix the dependency issue, we propose to upgrade jackson version to 2.x in pom configuration, i.e. use fasterxml instead of codehaus.

java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering()Z
	at com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:458)
	at com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:389)
	at com.fasterxml.jackson.databind.MappingJsonFactory.<init>(MappingJsonFactory.java:46)
	at com.fasterxml.jackson.databind.MappingJsonFactory.<init>(MappingJsonFactory.java:39)
	at com.tinkerpop.blueprints.util.io.graphson.GraphSONUtility.<clinit>(GraphSONUtility.java:41)


> Upgrade jackson core and databind versions to fix dependency incompatibility with higher-version Hive
> -----------------------------------------------------------------------------------------------------
>
>                 Key: FALCON-1983
>                 URL: https://issues.apache.org/jira/browse/FALCON-1983
>             Project: Falcon
>          Issue Type: Bug
>            Reporter: Ying Zheng
>            Assignee: Ying Zheng
>
> When compiled with higher-version Hive (e.g. 1.2.1x), Falcon generates different versions of jackson-core and jackson-databind:
> [root@os-r7-wbucju-falcon-2-4 2.5.0.0-562]# ls falcon/server/webapp/falcon/WEB-INF/lib/jack*
> falcon/server/webapp/falcon/WEB-INF/lib/jackson-annotations-2.4.0.jar  falcon/server/webapp/falcon/WEB-INF/lib/jackson-databind-2.4.2.jar
> falcon/server/webapp/falcon/WEB-INF/lib/jackson-core-2.2.3.jar         falcon/server/webapp/falcon/WEB-INF/lib/jackson-datatype-json-org-2.2.3.jar
> falcon/server/webapp/falcon/WEB-INF/lib/jackson-core-asl-1.9.2.jar     falcon/server/webapp/falcon/WEB-INF/lib/jackson-mapper-asl-1.9.2.jar
> This is because Hive is using a higher version of jackson-databind while Falcon pom has older version jackson. This results in errors when calling metadata rest api (e.g. http://127.0.0.1:15000/api/metadata/lineage/edges/all). See error details below.
> To fix the dependency issue, we propose to upgrade jackson version to 2.x in pom configuration, i.e. use fasterxml instead of codehaus.
> java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonFactory.requiresPropertyOrdering()Z
> 	at com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:458)
> 	at com.fasterxml.jackson.databind.ObjectMapper.<init>(ObjectMapper.java:389)
> 	at com.fasterxml.jackson.databind.MappingJsonFactory.<init>(MappingJsonFactory.java:46)
> 	at com.fasterxml.jackson.databind.MappingJsonFactory.<init>(MappingJsonFactory.java:39)
> 	at com.tinkerpop.blueprints.util.io.graphson.GraphSONUtility.<clinit>(GraphSONUtility.java:41)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)