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 "dragon (JIRA)" <ji...@apache.org> on 2016/03/15 09:15:37 UTC

[jira] [Created] (HDFS-10049) CLONE - Fix DFSStripedOutputStream#getCurrentBlockGroupBytes when the last stripe is at the block group boundary

dragon created HDFS-10049:
-----------------------------

             Summary: CLONE - Fix DFSStripedOutputStream#getCurrentBlockGroupBytes when the last stripe is at the block group boundary
                 Key: HDFS-10049
                 URL: https://issues.apache.org/jira/browse/HDFS-10049
             Project: Hadoop HDFS
          Issue Type: Sub-task
            Reporter: dragon
            Assignee: Jing Zhao
             Fix For: HDFS-7285


Currently {{DFSStripedOutputStream#getCurrentBlockGroupBytes}} simply uses {{getBytesCurBlock}} of each streamer to calculate the block group size. This is wrong when the last stripe is at the block group boundary, since the {{bytesCurBlock}} is set to 0 if an internal block is finished.

For example, when the real block size is {{blockGroupSize - cellSize * (numDataBlocks - 1)}}, i.e., the first internal block is full while the others are not, the {{getCurrentBlockGroupBytes}} returns wrong result and cause the write to fail.



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