[
https://issues.apache.org/jira/browse/HDFS-8287?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14901678#comment-14901678
]
Tsz Wo Nicholas Sze commented on HDFS-8287:
-------------------------------------------
> ... moving DoubleCellBuffer and CellBuffers out of DFSStripedOutputStream
> should be done with separate JIRA, ...
Sounds good. Some comments on the patch:
{code}
+ if (submittedParityGenTask) {
+ try {
+ // Wait for parity gen task for previout cell.
+ Future<ByteBuffer[]> ret = completionService.take();
+ ByteBuffer[] encoded = ret.get();
+ for (int i = numDataBlocks; i < numAllBlocks; i++) {
+ writeParity(i, encoded[i],
doubleCellBuffer.getReadyBuf().getChecksumArray(i));
+ }
+ } catch (InterruptedException e) {
+ LOG.warn("Caught InterruptedException: ", e);
+ } catch (ExecutionException e) {
+ LOG.warn("Caught ExecutionException: ", e);
+ }
{code}
- The caught exception should be re-thrown as an IOException.
- Typo: "previout" should be "previous".
> DFSStripedOutputStream.writeChunk should not wait for writing parity
> ---------------------------------------------------------------------
>
> Key: HDFS-8287
> URL: https://issues.apache.org/jira/browse/HDFS-8287
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: hdfs-client
> Reporter: Tsz Wo Nicholas Sze
> Assignee: Kai Sasaki
> Attachments: HDFS-8287-HDFS-7285.00.patch,
> HDFS-8287-HDFS-7285.01.patch, HDFS-8287-HDFS-7285.02.patch,
> HDFS-8287-HDFS-7285.03.patch, HDFS-8287-HDFS-7285.04.patch,
> HDFS-8287-HDFS-7285.05.patch, HDFS-8287-HDFS-7285.06.patch,
> HDFS-8287-HDFS-7285.07.patch, HDFS-8287-HDFS-7285.08.patch,
> HDFS-8287-HDFS-7285.09.patch, HDFS-8287-HDFS-7285.10.patch,
> HDFS-8287-HDFS-7285.WIP.patch, HDFS-8287-performance-report.pdf,
> h8287_20150911.patch, jstack-dump.txt
>
>
> When a stripping cell is full, writeChunk computes and generates parity
> packets. It sequentially calls waitAndQueuePacket so that user client cannot
> continue to write data until it finishes.
> We should allow user client to continue writing instead but not blocking it
> when writing parity.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)