[ https://issues.apache.org/jira/browse/HDFS-4723?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ahmed Hussein resolved HDFS-4723. --------------------------------- Release Note: I cannot reproduce the same stack trace. HDFS-15461 investigates addresses the same unit test with a different stack trace. Resolution: Cannot Reproduce > Occasional failure in TestDFSClientRetries#testGetFileChecksum because the > number of available xcievers is set too low > ---------------------------------------------------------------------------------------------------------------------- > > Key: HDFS-4723 > URL: https://issues.apache.org/jira/browse/HDFS-4723 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: test > Affects Versions: 2.0.4-alpha, 3.0.0-alpha1 > Reporter: Andrew Kyle Purtell > Priority: Minor > Attachments: 4723-branch-2.patch, 4723.patch > > > Occasional failure in TestDFSClientRetries#testGetFileChecksum because the > number of available xcievers is set too low. > {noformat} > 2013-04-21 18:48:28,273 WARN datanode.DataNode > (DataXceiverServer.java:run(161)) - 127.0.0.1:37608:DataXceiverServer: > java.io.IOException: Xceiver count 3 exceeds the limit of concurrent > xcievers: 2 > at > org.apache.hadoop.hdfs.server.datanode.DataXceiverServer.run(DataXceiverServer.java:143) > at java.lang.Thread.run(Thread.java:662) > 2013-04-21 18:48:28,274 INFO datanode.DataNode > (DataXceiver.java:writeBlock(453)) - Datanode 2 got response for connect ack > from downstream datanode with firstbadlink as 127.0.0.1:37608 > 2013-04-21 18:48:28,276 INFO datanode.DataNode > (DataXceiver.java:writeBlock(491)) - Datanode 2 forwarding connect ack to > upstream firstbadlink is 127.0.0.1:37608 > 2013-04-21 18:48:28,276 ERROR datanode.DataNode > (DataXceiver.java:writeBlock(477)) - > DataNode{data=FSDataset{dirpath='[/home/ec2-user/jenkins/workspace/hadoop/hadoop-hdfs-project/hadoop-hdfs/target/test/data/dfs/data/data3/current, > > /home/ec2-user/jenkins/workspace/hadoop/hadoop-hdfs-project/hadoop-hdfs/target/test/data/dfs/data/data4/current]'}, > localName='127.0.0.1:33298', > storageID='DS-1506063529-10.174.86.97-33298-1366570107286', > xmitsInProgress=0}:Exception transfering block > BP-2121022065-10.174.86.97-1366570107029:blk_6876843860808656778_1071 to > mirror 127.0.0.1:37608: java.io.EOFException: Premature EOF: no length prefix > available > 2013-04-21 18:48:28,276 INFO hdfs.DFSClient > (DFSOutputStream.java:createBlockOutputStream(1105)) - Exception in > createBlockOutputStream > java.io.IOException: Bad connect ack with firstBadLink as 127.0.0.1:37608 > at > org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.createBlockOutputStream(DFSOutputStream.java:1096) > at > org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.nextBlockOutputStream(DFSOutputStream.java:1019) > at > org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:464) > 2013-04-21 18:48:28,276 INFO datanode.DataNode > (DataXceiver.java:writeBlock(537)) - opWriteBlock > BP-2121022065-10.174.86.97-1366570107029:blk_6876843860808656778_1071 > received exception java.io.EOFException: Premature EOF: no length prefix > available > 2013-04-21 18:48:28,277 INFO datanode.DataNode > (BlockReceiver.java:receiveBlock(674)) - Exception for > BP-2121022065-10.174.86.97-1366570107029:blk_6876843860808656778_1071 > java.io.IOException: Premature EOF from inputStream > at org.apache.hadoop.io.IOUtils.readFully(IOUtils.java:194) > at > org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.doReadFully(PacketReceiver.java:213) > at > org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.doRead(PacketReceiver.java:134) > at > org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.receiveNextPacket(PacketReceiver.java:109) > at > org.apache.hadoop.hdfs.server.datanode.BlockReceiver.receivePacket(BlockReceiver.java:414) > at > org.apache.hadoop.hdfs.server.datanode.BlockReceiver.receiveBlock(BlockReceiver.java:644) > at > org.apache.hadoop.hdfs.server.datanode.DataXceiver.writeBlock(DataXceiver.java:506) > at > org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.opWriteBlock(Receiver.java:98) > at > org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.processOp(Receiver.java:65) > at > org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:219) > at java.lang.Thread.run(Thread.java:662) > 2013-04-21 18:48:28,277 INFO hdfs.DFSClient > (DFSOutputStream.java:nextBlockOutputStream(1022)) - Abandoning > BP-2121022065-10.174.86.97-1366570107029:blk_6876843860808656778_1071 > 2013-04-21 18:48:28,277 ERROR datanode.DataNode (DataXceiver.java:run(223)) - > 127.0.0.1:33298:DataXceiver error processing WRITE_BLOCK operation src: > /127.0.0.1:55182 dest: /127.0.0.1:33298 > java.io.EOFException: Premature EOF: no length prefix available > at > org.apache.hadoop.hdfs.protocolPB.PBHelper.vintPrefixed(PBHelper.java:1340) > at > org.apache.hadoop.hdfs.server.datanode.DataXceiver.writeBlock(DataXceiver.java:448) > at > org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.opWriteBlock(Receiver.java:98) > at > org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.processOp(Receiver.java:65) > at > org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:219) > at java.lang.Thread.run(Thread.java:662) > 2013-04-21 18:48:28,277 INFO datanode.DataNode (BlockReceiver.java:run(950)) > - PacketResponder: > BP-2121022065-10.174.86.97-1366570107029:blk_6876843860808656778_1071, > type=HAS_DOWNSTREAM_IN_PIPELINE > java.io.EOFException: Premature EOF: no length prefix available > at > org.apache.hadoop.hdfs.protocolPB.PBHelper.vintPrefixed(PBHelper.java:1340) > at > org.apache.hadoop.hdfs.protocol.datatransfer.PipelineAck.readFields(PipelineAck.java:116) > at > org.apache.hadoop.hdfs.server.datanode.BlockReceiver$PacketResponder.run(BlockReceiver.java:894) > at java.lang.Thread.run(Thread.java:662) > 2013-04-21 18:48:28,278 INFO datanode.DataNode (BlockReceiver.java:run(962)) > - PacketResponder: > BP-2121022065-10.174.86.97-1366570107029:blk_6876843860808656778_1071, > type=HAS_DOWNSTREAM_IN_PIPELINE: Thread is interrupted. > 2013-04-21 18:48:28,278 INFO datanode.DataNode > (BlockReceiver.java:run(1043)) - PacketResponder: > BP-2121022065-10.174.86.97-1366570107029:blk_6876843860808656778_1071, > type=HAS_DOWNSTREAM_IN_PIPELINE terminating > 2013-04-21 18:48:28,278 INFO datanode.DataNode > (DataXceiver.java:writeBlock(537)) - opWriteBlock > BP-2121022065-10.174.86.97-1366570107029:blk_6876843860808656778_1071 > received exception java.io.IOException: Premature EOF from inputStream > 2013-04-21 18:48:28,278 ERROR datanode.DataNode (DataXceiver.java:run(223)) - > 127.0.0.1:58102:DataXceiver error processing WRITE_BLOCK operation src: > /127.0.0.1:47124 dest: /127.0.0.1:58102 > java.io.IOException: Premature EOF from inputStream > at org.apache.hadoop.io.IOUtils.readFully(IOUtils.java:194) > at > org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.doReadFully(PacketReceiver.java:213) > at > org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.doRead(PacketReceiver.java:134) > at > org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.receiveNextPacket(PacketReceiver.java:109) > at > org.apache.hadoop.hdfs.server.datanode.BlockReceiver.receivePacket(BlockReceiver.java:414) > at > org.apache.hadoop.hdfs.server.datanode.BlockReceiver.receiveBlock(BlockReceiver.java:644) > at > org.apache.hadoop.hdfs.server.datanode.DataXceiver.writeBlock(DataXceiver.java:506) > at > org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.opWriteBlock(Receiver.java:98) > at > org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.processOp(Receiver.java:65) > at > org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:219) > at java.lang.Thread.run(Thread.java:662) > 2013-04-21 18:48:28,279 INFO hdfs.DFSClient > (DFSOutputStream.java:nextBlockOutputStream(1025)) - Excluding datanode > 127.0.0.1:37608 > {noformat} > As a consequence of this failure one datanode has been excluded and from this > point there are insufficient datanodes to place replicas: > {noformat} > 2013-04-21 18:48:54,288 WARN blockmanagement.BlockPlacementPolicy > (BlockPlacementPolicyDefault.java:chooseTarget(232)) - Not able to place > enough replicas, still in need of 1 to reach 3 > ... > {noformat} > and the test eventually times out. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org