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

Flavio Junqueira commented on ZOOKEEPER-2080:
---------------------------------------------

[~hanm] [~shralex] [~phunt]

I gave it a look and had a look at the patch, and I'm wondering the following:

# Is it the case that the {{synchronized(self) }} block only needs to cover up 
to {{self.processReconfig}}? If so, perhaps we should end the block there and 
process the following outside. I'm saying this because of a couple of things. 
First, it is in general better to keep such synchronized blocks as short as 
possible. Second, {{shuttingDownLE}} is being used without synchronization in 
other parts of the code, so either that is broken or we don't need it in the 
block.
# Should we invert the order between {{shuttingDownLE}} and {{shutdown()}} to 
avoid a new election being created concurrently? I'd really rather avoid having 
multiple concurrent election objects to avoid confusion about connections and 
such.


> ReconfigRecoveryTest fails intermittently
> -----------------------------------------
>
>                 Key: ZOOKEEPER-2080
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2080
>             Project: ZooKeeper
>          Issue Type: Sub-task
>            Reporter: Ted Yu
>            Assignee: Michael Han
>             Fix For: 3.5.3, 3.6.0
>
>         Attachments: ZOOKEEPER-2080.patch, ZOOKEEPER-2080.patch, 
> ZOOKEEPER-2080.patch, ZOOKEEPER-2080.patch, 
> jacoco-ZOOKEEPER-2080.unzip-grows-to-70MB.7z, repro-20150816.log, 
> threaddump.log
>
>
> I got the following test failure on MacBook with trunk code:
> {code}
> Testcase: testCurrentObserverIsParticipantInNewConfig took 93.628 sec
>   FAILED
> waiting for server 2 being up
> junit.framework.AssertionFailedError: waiting for server 2 being up
>   at 
> org.apache.zookeeper.server.quorum.ReconfigRecoveryTest.testCurrentObserverIsParticipantInNewConfig(ReconfigRecoveryTest.java:529)
>   at 
> org.apache.zookeeper.JUnit4ZKTestRunner$LoggedInvokeMethod.evaluate(JUnit4ZKTestRunner.java:52)
> {code}



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

Reply via email to