hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-13716) Add LambdaTestUtils class for tests; fix eventual consistency problem in contract test setup
Date Thu, 20 Oct 2016 20:01:58 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-13716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15592825#comment-15592825
] 

Hudson commented on HADOOP-13716:
---------------------------------

SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10647 (See [https://builds.apache.org/job/Hadoop-trunk-Commit/10647/])
HADOOP-13716. Add LambdaTestUtils class for tests; fix eventual (aengineer: rev 3fbf4cd5da13dde68b77e581ea2d4aa564c8c8b7)
* (edit) hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/contract/ContractTestUtils.java
* (edit) hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3AFailureHandling.java
* (add) hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/test/LambdaTestUtils.java
* (add) hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/test/TestLambdaTestUtils.java
* (edit) hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/S3ATestUtils.java
* (edit) hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/contract/AbstractContractRootDirectoryTest.java


> Add LambdaTestUtils class for tests; fix eventual consistency problem in contract test
setup
> --------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-13716
>                 URL: https://issues.apache.org/jira/browse/HADOOP-13716
>             Project: Hadoop Common
>          Issue Type: New Feature
>          Components: test
>    Affects Versions: 2.8.0
>            Reporter: Steve Loughran
>            Assignee: Steve Loughran
>             Fix For: 2.8.0, 3.0.0-alpha2
>
>         Attachments: HADOOP-13716-001.patch, HADOOP-13716-002.patch, HADOOP-13716-003.patch,
HADOOP-13716-005.patch, HADOOP-13716-006.patch, HADOOP-13716-branch-2-004.patch
>
>
> To make our tests robust against timing problems and eventual consistent stores, we need
to do more spin & wait for state.
> We have some code in {{GenericTestUtils.waitFor}} to await a condition being met, but
the predicate it calls doesn't throw exceptions, there's no way for a probe to throw an exception,
and all you get is the eventual "timed out" message. 
> We can do better, and in closure-ready languages (scala & scalatest, groovy and some
slider code) we've examples to follow. Some of that work has been reimplemented slightly in
{{S3ATestUtils.eventually}}
> I propose adding a class in the test tree, {{Eventually}} to be a successor/replacement
for these.
> # has an eventually/waitfor operation taking a predicate that throws an exception
> # has an "evaluate" exception which tries to evaluate an answer until the operation stops
raising an exception. (again, from scalatest)
> # plugin backoff strategies (from Scalatest; lets you do exponential as well as linear)
> # option of adding a special handler to generate the failure exception (e.g. run more
detailed diagnostics for the exception text, etc).
> # be Java 8 lambda expression friendly
> # be testable and tested itself.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org


Mime
View raw message