[jira] [Created] (HDFS-12906) hedged point read in DFSInputStream sends only 1 hedge read request

2017-12-06 Thread Tao Zhang (JIRA)
Tao Zhang created HDFS-12906:


 Summary: hedged point read in DFSInputStream sends only 1 hedge 
read request
 Key: HDFS-12906
 URL: https://issues.apache.org/jira/browse/HDFS-12906
 Project: Hadoop HDFS
  Issue Type: Bug
  Components: hdfs-client
Reporter: Tao Zhang
Assignee: Tao Zhang


Hedged point read is handled in DFSInputStream.hedgedFetchBlockByteRange(). It 
calls "getFirstToComplete()" to get the 1st returned result after sending out 
hedge read requests. But since "getFirstToComplete()" uses 
"CompletionService.take()" which is a endlessly blocking operation. It will 
wait for 1 result after sending only 1 hedge read request.

It could be changed to wait for a specific timeout (instead of infinite 
timeout) and starting another hedge read request. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

-
To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org



[jira] [Created] (HDFS-11719) Arrays.fill() wrong index in BlockSender.readChecksum() exception handling

2017-04-28 Thread Tao Zhang (JIRA)
Tao Zhang created HDFS-11719:


 Summary: Arrays.fill() wrong index in BlockSender.readChecksum() 
exception handling
 Key: HDFS-11719
 URL: https://issues.apache.org/jira/browse/HDFS-11719
 Project: Hadoop HDFS
  Issue Type: Bug
  Components: datanode
Reporter: Tao Zhang
Assignee: Tao Zhang


In BlockSender.readChecksum() exception handling part:
Arrays.fill(buf, checksumOffset, checksumLen, (byte) 0);

Actually the paramters should be: Arrays.fill(buf, , , 
value);
So it should be changed to:
Arrays.fill(buf, checksumOffset, checksumOffset + checksumLen, (byte) 0);



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

-
To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org