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

Cody Marcel commented on PHOENIX-1963:
--------------------------------------

I have also seen this one flap occasionally. I think have something to do with 
results not being completely flushed to the file before it's read back in. The 
handler is not being flushed inside the  inside the sync block, which could be 
the issue. I can try to look into this one.

> Irregular failures in ResultTest#testMonitorResult
> --------------------------------------------------
>
>                 Key: PHOENIX-1963
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1963
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Gabriel Reid
>
> While validating the 4.4.0 release candidates, I had to run the phoenix-pherf 
> test cases a number of times to get them to pass.
> The offending test was ResultTest#testMonitorResult. I was running the test 
> via {{maven clean install}}, and getting results such as the following:
> {code}
> Tests run: 4, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 6.034 sec <<< 
> FAILURE! - in org.apache.phoenix.pherf.ResultTest
> testMonitorResult(org.apache.phoenix.pherf.ResultTest) Time elapsed: 4.363 
> sec <<< FAILURE!
> java.lang.AssertionError: Failed to get correct amount of CSV records. 
> expected:<243> but was:<261>
> at org.junit.Assert.fail(Assert.java:88)
> at org.junit.Assert.failNotEquals(Assert.java:743)
> at org.junit.Assert.assertEquals(Assert.java:118)
> at org.junit.Assert.assertEquals(Assert.java:555)
> at org.apache.phoenix.pherf.ResultTest.testMonitorResult(ResultTest.java:99)
> {code}
> An important thing to point out is that I was encountering this issue on a 
> single-CPU virtual machine, so if there are some sensitive timing issues then 
> they might be tickled by my setup.
> A quick look at the code doesn't show any directly obvious causes for this, 
> but I did notice in the MonitorManager class that the resultHandler instance 
> variable is protected via itself as a monitor in the run method, and 
> protected by the this monitor in the readResults method. I'm not sure if this 
> has anything to do with the underlying issue, but it does seem a bit 
> questionable (i.e. different monitors are being used to lock access to a 
> single variable).



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

Reply via email to