[jira] [Commented] (ZOOKEEPER-1360) QuorumTest.testNoLogBeforeLeaderEstablishment has several problems

2017-08-14 Thread Henry Robinson (JIRA)

[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16126316#comment-16126316
 ] 

Henry Robinson commented on ZOOKEEPER-1360:
---

Not at all - haven't looked at this in years!

> QuorumTest.testNoLogBeforeLeaderEstablishment has several problems
> --
>
> Key: ZOOKEEPER-1360
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1360
> Project: ZooKeeper
>  Issue Type: Bug
>  Components: tests
>Affects Versions: 3.4.2
>Reporter: Henry Robinson
>Assignee: Henry Robinson
> Fix For: 3.5.4, 3.6.0
>
>
> After the apparently valid fix to ZOOKEEPER-1294, 
> testNoLogBeforeLeaderEstablishment is failing for me about one time in four. 
> While I'll investigate whether the patch is 1294 is ultimately to blame, 
> reading the test brought to light a number of issues that appear to be bugs 
> or in need of improvement:
> * As part of QuorumTest, an ensemble is already established by the fixture 
> setup code, but apparently unused by the test which uses QuorumUtil. 
> * The test reads QuorumPeer.leader and QuorumPeer.follower without 
> synchronization, which means that writes to those fields may not be published 
> when we come to read them. 
> * The return value of sem.tryAcquire is never checked.
> * The progress of the test is based on ad-hoc timings (25 * 500ms sleeps) and 
> inscrutable numbers of iterations through the main loop (e.g. the semaphore 
> blocking the final asserts is released only after the 2th of 5 
> callbacks)
> * The test as a whole takes ~30s to run
> The first three are easy to fix (as part of fixing the second, I intend to 
> hide all members of QuorumPeer behind getters and setters), the fourth and 
> fifth need a slightly deeper understanding of what the test is trying to 
> achieve.



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


[jira] [Commented] (ZOOKEEPER-1360) QuorumTest.testNoLogBeforeLeaderEstablishment has several problems

2017-08-14 Thread Abraham Fine (JIRA)

[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16126314#comment-16126314
 ] 

Abraham Fine commented on ZOOKEEPER-1360:
-

[~henryr] do you mind if I take a look at this?

> QuorumTest.testNoLogBeforeLeaderEstablishment has several problems
> --
>
> Key: ZOOKEEPER-1360
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1360
> Project: ZooKeeper
>  Issue Type: Bug
>  Components: tests
>Affects Versions: 3.4.2
>Reporter: Henry Robinson
>Assignee: Henry Robinson
> Fix For: 3.5.4, 3.6.0
>
>
> After the apparently valid fix to ZOOKEEPER-1294, 
> testNoLogBeforeLeaderEstablishment is failing for me about one time in four. 
> While I'll investigate whether the patch is 1294 is ultimately to blame, 
> reading the test brought to light a number of issues that appear to be bugs 
> or in need of improvement:
> * As part of QuorumTest, an ensemble is already established by the fixture 
> setup code, but apparently unused by the test which uses QuorumUtil. 
> * The test reads QuorumPeer.leader and QuorumPeer.follower without 
> synchronization, which means that writes to those fields may not be published 
> when we come to read them. 
> * The return value of sem.tryAcquire is never checked.
> * The progress of the test is based on ad-hoc timings (25 * 500ms sleeps) and 
> inscrutable numbers of iterations through the main loop (e.g. the semaphore 
> blocking the final asserts is released only after the 2th of 5 
> callbacks)
> * The test as a whole takes ~30s to run
> The first three are easy to fix (as part of fixing the second, I intend to 
> hide all members of QuorumPeer behind getters and setters), the fourth and 
> fifth need a slightly deeper understanding of what the test is trying to 
> achieve.



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


[jira] [Commented] (ZOOKEEPER-1360) QuorumTest.testNoLogBeforeLeaderEstablishment has several problems

2014-05-19 Thread Michi Mutsuzaki (JIRA)

[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14002508#comment-14002508
 ] 

Michi Mutsuzaki commented on ZOOKEEPER-1360:


Is this still a problem?

 QuorumTest.testNoLogBeforeLeaderEstablishment has several problems
 --

 Key: ZOOKEEPER-1360
 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1360
 Project: ZooKeeper
  Issue Type: Bug
  Components: tests
Affects Versions: 3.4.2
Reporter: Henry Robinson
Assignee: Henry Robinson
 Fix For: 3.5.0


 After the apparently valid fix to ZOOKEEPER-1294, 
 testNoLogBeforeLeaderEstablishment is failing for me about one time in four. 
 While I'll investigate whether the patch is 1294 is ultimately to blame, 
 reading the test brought to light a number of issues that appear to be bugs 
 or in need of improvement:
 * As part of QuorumTest, an ensemble is already established by the fixture 
 setup code, but apparently unused by the test which uses QuorumUtil. 
 * The test reads QuorumPeer.leader and QuorumPeer.follower without 
 synchronization, which means that writes to those fields may not be published 
 when we come to read them. 
 * The return value of sem.tryAcquire is never checked.
 * The progress of the test is based on ad-hoc timings (25 * 500ms sleeps) and 
 inscrutable numbers of iterations through the main loop (e.g. the semaphore 
 blocking the final asserts is released only after the 2th of 5 
 callbacks)
 * The test as a whole takes ~30s to run
 The first three are easy to fix (as part of fixing the second, I intend to 
 hide all members of QuorumPeer behind getters and setters), the fourth and 
 fifth need a slightly deeper understanding of what the test is trying to 
 achieve.



--
This message was sent by Atlassian JIRA
(v6.2#6252)