You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "J.Andreina (JIRA)" <ji...@apache.org> on 2012/05/03 06:42:13 UTC

[jira] [Created] (HDFS-3356) When dfs.block.size is configured to 0 the block which is created in rbw is never deleted

J.Andreina created HDFS-3356:
--------------------------------

             Summary: When dfs.block.size is configured to 0 the block which is created in rbw is never deleted
                 Key: HDFS-3356
                 URL: https://issues.apache.org/jira/browse/HDFS-3356
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: name-node
    Affects Versions: 2.0.0
            Reporter: J.Andreina
            Priority: Minor
             Fix For: 2.0.0, 3.0.0


dfs.block.size=0
step 1: start NN and DN
step 2: write a file "a.txt"
The block is created in rbw and since the blocksize is 0 write fails and the file is not closed. DN sents in the block report , number of blocks as 1
Even after the DN has sent the block report and directory scan has been done , the block is not invalidated for ever.

But In earlier version when the block.size is configured to 0 default value will be taken and write will be successful.
NN logs:
========
{noformat}
2012-04-24 19:54:27,089 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* processReport: from DatanodeRegistration(.18.40.117, storageID=DS-452047493-xx.xx.xx.xx-50076-1335277451277, infoPort=50075, ipcPort=50077, storageInfo=lv=-40;cid=CID-742fda5f-68f7-40a5-9d52-a2a15facc6af;nsid=797082741;c=0), blocks: 0, processing time: 0 msecs
2012-04-24 19:54:29,689 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* NameSystem.allocateBlock: /1._COPYING_. BP-1612285678-xx.xx.xx.xx-1335277427136 blk_-262107679534121671_1002{blockUCState=UNDER_CONSTRUCTION, primaryNodeIndex=-1, replicas=[ReplicaUnderConstruction[xx.xx.xx.xx:50076|RBW]]}
2012-04-24 19:54:30,113 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* processReport: from DatanodeRegistration(xx.xx.xx.xx, storageID=DS-452047493-xx.xx.xx.xx-50076-1335277451277, infoPort=50075, ipcPort=50077, storageInfo=lv=-40;cid=CID-742fda5f-68f7-40a5-9d52-a2a15facc6af;nsid=797082741;c=0), blocks: 1, processing time: 0 msecs{noformat}

Exception message while writing a file:
=======================================
{noformat}
./hdfs dfs -put hadoop /1
12/04/24 19:54:30 WARN hdfs.DFSClient: DataStreamer Exception
java.io.IOException: BlockSize 0 is smaller than data size.  Offset of packet in block 4745 Aborting file /1._COPYING_
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:467)
put: BlockSize 0 is smaller than data size.  Offset of packet in block 4745 Aborting file /1._COPYING_
12/04/24 19:54:30 ERROR hdfs.DFSClient: Failed to close file /1._COPYING_
java.io.IOException: BlockSize 0 is smaller than data size.  Offset of packet in block 4745 Aborting file /1._COPYING_
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:467){noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira