分享

win7+eclipse+ubuntu 向hadoop 2.5上传文件报什么数组异常

silvasong 发表于 2014-9-10 19:20:50 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 8 13041
[pool-1-thread-1] (DataFilterApi.java:110) 2014-09-10 18:51:07 - Accela directory created.
[pool-1-thread-1] (DataFilterApi.java:120) 2014-09-10 18:51:07 - create file china_shenzhen_education_primary_senior_university_1410346267025 and write data
[pool-1-thread-1] (ExcuteFecthThread.java:86) 2014-09-10 18:51:20 - Save data to hdfs.
[pool-1-thread-1] (DataFilterApi.java:45) 2014-09-10 18:51:20 - instanceof object types:Map or List,recommend to use List
[pool-1-thread-1] (DataFilterApi.java:86) 2014-09-10 18:51:20 - transfrom data to byte[]
[pool-1-thread-1] (DataFilterApi.java:88) 2014-09-10 18:51:20 - get file name from xml configuration
[pool-1-thread-1] (DataFilterApi.java:110) 2014-09-10 18:51:20 - Accela directory created.
hdfs://192.168.10.115:8020/Accela/china_shenzhen_education_primary_senior_university_1410346267025
[pool-1-thread-1] (DataFilterApi.java:126) 2014-09-10 18:51:20 - append data to exist file hdfs://192.168.10.115:8020/Accela/china_shenzhen_education_primary_senior_university_1410346267025
[Thread-11] (DFSOutputStream.java:613) 2014-09-10 18:51:20 - DataStreamer Exception
org.apache.hadoop.ipc.RemoteException(java.lang.ArrayIndexOutOfBoundsException): 0
        at org.apache.hadoop.hdfs.server.blockmanagement.DatanodeManager.getDatanodeStorageInfos(DatanodeManager.java:493)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.updatePipelineInternal(FSNamesystem.java:6425)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.updatePipeline(FSNamesystem.java:6386)
        at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.updatePipeline(NameNodeRpcServer.java:690)
        at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.updatePipeline(ClientNamenodeProtocolServerSideTranslatorPB.java:905)
        at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:585)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:928)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2013)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2009)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2007)

        at org.apache.hadoop.ipc.Client.call(Client.java:1347)
        at org.apache.hadoop.ipc.Client.call(Client.java:1300)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206)
        at com.sun.proxy.$Proxy11.updatePipeline(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:186)
        at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
        at com.sun.proxy.$Proxy11.updatePipeline(Unknown Source)
        at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.updatePipeline(ClientNamenodeProtocolTranslatorPB.java:791)
        at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.setupPipelineForAppendOrRecovery(DFSOutputStream.java:1047)
        at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:520)
[pool-1-thread-1] (HadoopFileUtil.java:302) 2014-09-10 18:51:20 - 0
        at org.apache.hadoop.hdfs.server.blockmanagement.DatanodeManager.getDatanodeStorageInfos(DatanodeManager.java:493)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.updatePipelineInternal(FSNamesystem.java:6425)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.updatePipeline(FSNamesystem.java:6386)
        at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.updatePipeline(NameNodeRpcServer.java:690)
        at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.updatePipeline(ClientNamenodeProtocolServerSideTranslatorPB.java:905)
        at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:585)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:928)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2013)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2009)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2007)

org.apache.hadoop.ipc.RemoteException(java.lang.ArrayIndexOutOfBoundsException): 0
        at org.apache.hadoop.hdfs.server.blockmanagement.DatanodeManager.getDatanodeStorageInfos(DatanodeManager.java:493)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.updatePipelineInternal(FSNamesystem.java:6425)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.updatePipeline(FSNamesystem.java:6386)
        at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.updatePipeline(NameNodeRpcServer.java:690)
        at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.updatePipeline(ClientNamenodeProtocolServerSideTranslatorPB.java:905)
        at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:585)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:928)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2013)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2009)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2007)

        at org.apache.hadoop.ipc.Client.call(Client.java:1347)
        at org.apache.hadoop.ipc.Client.call(Client.java:1300)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206)
        at com.sun.proxy.$Proxy11.updatePipeline(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:186)
        at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
        at com.sun.proxy.$Proxy11.updatePipeline(Unknown Source)
        at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.updatePipeline(ClientNamenodeProtocolTranslatorPB.java:791)
        at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.setupPipelineForAppendOrRecovery(DFSOutputStream.java:1047)
        at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:520)

已有(8)人评论

跳转到指定楼层
howtodown 发表于 2014-9-10 20:42:43
本帖最后由 howtodown 于 2014-9-10 21:17 编辑
1.先看进程是否都在。
2.然后自己试一下put命令是否好使。
3.hdfs是否允许win7用户访问。
4.防火墙是否关闭。


回复

使用道具 举报

silvasong 发表于 2014-9-10 20:50:51
howtodown 发表于 2014-9-10 20:42
本帖最后由 howtodown 于 2014-9-10 20:43 编辑
1.先看进程是否都在。
2.然后自己试一下put命令是否好使 ...

一切都正常,,防火墙我也关了的,我在hadoop里面也看到上传的东西了
回复

使用道具 举报

howtodown 发表于 2014-9-10 21:21:03
silvasong 发表于 2014-9-10 20:50
一切都正常,,防火墙我也关了的,我在hadoop里面也看到上传的东西了
首先最可能的原因是你的window用户跟Linux交互的时候产生的问题。看看下面是否配置

如果这里配置了,那就是你的代码问题了
回复

使用道具 举报

sstutu 发表于 2014-9-10 21:30:13
你采用的什么开发方式建议,提供更多的信息,否则很难判断。最大的可能是你的win7与Linux连接出问题。
回复

使用道具 举报

silvasong 发表于 2014-9-10 21:36:11
sstutu 发表于 2014-9-10 21:30
你采用的什么开发方式建议,提供更多的信息,否则很难判断。最大的可能是你的win7与Linux连接出问题。

代码是公司以前同事写的,,我今天才拿到,,主要目的是把json数据转换格式后存入hadoop中,,详细信息明早回公司给出,,谢谢
回复

使用道具 举报

silvasong 发表于 2014-9-11 09:07:29
howtodown 发表于 2014-9-10 21:21
首先最可能的原因是你的window用户跟Linux交互的时候产生的问题。看看下面是否配置

如果这里配置了,那 ...

权限我给了的
回复

使用道具 举报

sstutu 发表于 2014-9-14 16:01:45
问题是不是解决了,没有看到你贴出代码
回复

使用道具 举报

silvasong 发表于 2014-9-14 16:19:48
sstutu 发表于 2014-9-14 16:01
问题是不是解决了,没有看到你贴出代码

解决了 代码以前的jar是2.2版本的 我升级到2.5后没有问题了 非常感谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条