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

Hadoop QA commented on HADOOP-7888:
-----------------------------------

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12506379/hadoop-7888.patch
  against trunk revision .

    +1 @author.  The patch does not contain any @author tags.

    +1 tests included.  The patch appears to include 3 new or modified tests.

    -1 javadoc.  The javadoc tool appears to have generated 9 warning messages.

    +1 javac.  The applied patch does not increase the total number of javac 
compiler warnings.

    +1 findbugs.  The patch does not introduce any new Findbugs (version 1.3.9) 
warnings.

    +1 release audit.  The applied patch does not increase the total number of 
release audit warnings.

    +1 core tests.  The patch passed unit tests in .

    +1 contrib tests.  The patch passed contrib unit tests.

Test results: 
https://builds.apache.org/job/PreCommit-HADOOP-Build/441//testReport/
Console output: 
https://builds.apache.org/job/PreCommit-HADOOP-Build/441//console

This message is automatically generated.
                
> TestFailoverProxy fails intermittently on trunk
> -----------------------------------------------
>
>                 Key: HADOOP-7888
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7888
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 0.24.0
>            Reporter: Jason Lowe
>         Attachments: hadoop-7888.patch
>
>
> TestFailoverProxy can fail intermittently with the failures occurring in 
> testConcurrentMethodFailures().  The test has a race condition where the two 
> threads may be sequentially invoking the unreliable interface rather than 
> concurrently.  Currently the proxy provider's getProxy() method contains the 
> thread synchronization to enforce a concurrent invocation, but examining the 
> source to RetryInvocationHandler.invoke() shows that the call to getProxy() 
> during failover is too late to enforce a truly concurrent invocation.
> For this particular test, one thread could race ahead and block on the 
> CountDownLatch in getProxy() before the other thread even enters 
> RetryInvocationHandler.invoke().  If that happens the second thread will 
> cache the newly updated value for proxyProviderFailoverCount, since the 
> failover has mostly been processed by the original thread.  Therefore the 
> second thread ends up assuming no other thread is present, performs a 
> failover, and the test fails because two failovers occurred instead of one.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to