[
https://issues.apache.org/jira/browse/ZOOKEEPER-2000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14353997#comment-14353997
]
Hongchao Deng commented on ZOOKEEPER-2000:
------------------------------------------
Hi [~shralex].
I've figured out the root cause of the problem.
When the leader changed the port and renounced the leadership, it should also
change to user FollowerZooKeeperServer, whose CommitProcessor#matchSyncs =
true. But in the case it still used LeaderZooKeeperServer, whose
CommitProcessor#matchSyncs = false.
So the sync isn't ack-ed by a quorum. And the reader gets old data. Can you
help fix it or give some advice how to fix it on this?
> Fix ReconfigTest.testPortChange
> -------------------------------
>
> Key: ZOOKEEPER-2000
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2000
> Project: ZooKeeper
> Issue Type: Sub-task
> Components: tests
> Affects Versions: 3.5.0
> Reporter: Alexander Shraer
> Assignee: Alexander Shraer
> Priority: Minor
> Fix For: 3.5.1, 3.6.0
>
> Attachments: ZOOKEEPER-2000.patch, ZOOKEEPER-2000.patch
>
>
> testPortChange changes all ports and role of the server and thus
> causes existing clients to disconnect, while this wouldn't happen if only the
> client port changes. Need to fix it to only change client port and not all
> the other parameters and make sure that the clients don't disconnect, while
> new clients shouldn't be able to connect to the old port.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)