You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "James Clampffer (JIRA)" <ji...@apache.org> on 2016/04/19 15:03:25 UTC
[jira] [Updated] (HDFS-9890) libhdfs++: Add test suite to simulate
network issues
[ https://issues.apache.org/jira/browse/HDFS-9890?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James Clampffer updated HDFS-9890:
----------------------------------
Attachment: HDFS-9890.HDFS-8707.001.patch
New patch to get rid of merge conflicts and trailing whitespace. Still need failure injection in the DN read pipeline.
> libhdfs++: Add test suite to simulate network issues
> ----------------------------------------------------
>
> Key: HDFS-9890
> URL: https://issues.apache.org/jira/browse/HDFS-9890
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: hdfs-client
> Reporter: James Clampffer
> Assignee: Stephen
> Attachments: HDFS-9890.HDFS-8707.000.patch, HDFS-9890.HDFS-8707.001.patch
>
>
> I propose adding a test suite to simulate various network issues/failures in order to get good test coverage on some of the retry paths that aren't easy to hit in mock unit tests.
> At the moment the only things that hit the retry paths are the gmock unit tests. The gmock are only as good as their mock implementations which do a great job of simulating protocol correctness but not more complex interactions. They also can't really simulate the types of lock contention and subtle memory stomps that show up while doing hundreds or thousands of concurrent reads. We should add a new minidfscluster test that focuses on heavy read/seek load and then randomly convert error codes returned by network functions into errors.
> List of things to simulate(while heavily loaded), roughly in order of how badly I think they need to be tested at the moment:
> -Rpc connection disconnect
> -Rpc connection slowed down enough to cause a timeout and trigger retry
> -DN connection disconnect
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)