[
https://issues.apache.org/jira/browse/HDFS-8233?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jing Zhao resolved HDFS-8233.
-----------------------------
Resolution: Fixed
Fix Version/s: HDFS-7285
Thanks for the review, Nicholas! I've committed this.
> Fix DFSStripedOutputStream#getCurrentBlockGroupBytes when the last stripe is
> at the block group boundary
> --------------------------------------------------------------------------------------------------------
>
> Key: HDFS-8233
> URL: https://issues.apache.org/jira/browse/HDFS-8233
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Reporter: Jing Zhao
> Assignee: Jing Zhao
> Fix For: HDFS-7285
>
> Attachments: hdfs8233-HDFS-7285.000.patch
>
>
> 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)