You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@oozie.apache.org by "Satish Mittal (JIRA)" <ji...@apache.org> on 2014/04/10 14:07:15 UTC

[jira] [Commented] (OOZIE-1243) libtools dir should not include hadoop JARs

    [ https://issues.apache.org/jira/browse/OOZIE-1243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13965281#comment-13965281 ] 

Satish Mittal commented on OOZIE-1243:
--------------------------------------

Ran into this issue with current trunk while running 'oozie-setup.sh sharelib create' command:

{noformat}
satish@dev2:~/install/oozie-4.1.0-SNAPSHOT$ sudo -u oozie bin/oozie-setup.sh sharelib create -fs hdfs://dev2:9000 -locallib /home/satish/install/oozie-4.1.0-SNAPSHOT/share
  setting CATALINA_OPTS="$CATALINA_OPTS -Xmx4096m -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:${OOZIE_HOME}/logs/gc.log -Dsun.net.client.defaultConnectTimeout=30000 -Dsun.net.client.defaultReadTimeout=120000"
the destination path for sharelib is: /user/oozie/share/lib/lib_20140410101217

Error: E0902: Exception occured: [Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 61, server = 63)]

Stack trace for the error was (for debug purposes):
--------------------------------------
org.apache.oozie.service.HadoopAccessorException: E0902: Exception occured: [Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 61, server = 63)]
	at org.apache.oozie.service.HadoopAccessorService.createFileSystem(HadoopAccessorService.java:430)
	at org.apache.oozie.tools.OozieSharelibCLI.run(OozieSharelibCLI.java:156)
	at org.apache.oozie.tools.OozieSharelibCLI.main(OozieSharelibCLI.java:56)
Caused by: org.apache.hadoop.ipc.RPC$VersionMismatch: Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 61, server = 63)
	at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:416)
	at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode(DFSClient.java:135)
	at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:276)
	at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:241)
	at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:100)
	at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1411)
	at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:66)
	at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1429)
	at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:254)
	at org.apache.oozie.service.HadoopAccessorService$2.run(HadoopAccessorService.java:422)
	at org.apache.oozie.service.HadoopAccessorService$2.run(HadoopAccessorService.java:420)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:416)
	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1136)
	at org.apache.oozie.service.HadoopAccessorService.createFileSystem(HadoopAccessorService.java:420)
	... 2 more
--------------------------------------
{noformat}

The reason for this error is that oozie-setup.sh includes all jars within libtools directory, which also contains hadoop jars and clashes with hadoop jars added explicitly by me within libext.

The workaround was to remove hadoop-core.jar from libtools directory. The clean fix should be to not bundle any hadoop jar within libtools directory.

> libtools dir should not include hadoop JARs
> -------------------------------------------
>
>                 Key: OOZIE-1243
>                 URL: https://issues.apache.org/jira/browse/OOZIE-1243
>             Project: Oozie
>          Issue Type: Bug
>          Components: build
>    Affects Versions: 3.3.1, 4.1.0
>            Reporter: Alejandro Abdelnur
>            Priority: Blocker
>
> All the setup tools should consume the hadoop JARs from the libext/ directory, having them in the libtools/ dir make things fail when using different hadoop versions other than the one used to compile Oozie.



--
This message was sent by Atlassian JIRA
(v6.2#6252)