本文整理了Java中org.apache.zookeeper.server.quorum.flexible.QuorumVerifier.getVotingMembers
方法的一些代码示例,展示了QuorumVerifier.getVotingMembers
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QuorumVerifier.getVotingMembers
方法的具体详情如下:
包路径:org.apache.zookeeper.server.quorum.flexible.QuorumVerifier
类名称:QuorumVerifier
方法名:getVotingMembers
暂无
代码示例来源:origin: apache/zookeeper
public boolean isDistributed() {
return quorumVerifier!=null && (!standaloneEnabled || quorumVerifier.getVotingMembers().size() > 1);
}
代码示例来源:origin: apache/zookeeper
public boolean hasSid(long sid) {
for (QuorumVerifierAcksetPair qvAckset : qvAcksetPairs) {
if (!qvAckset.getQuorumVerifier().getVotingMembers().containsKey(sid)) {
return false;
}
}
return true;
}
代码示例来源:origin: apache/zookeeper
/**
* Observers are not contained in this view, only nodes with
* PeerType=PARTICIPANT.
*/
public Map<Long,QuorumPeer.QuorumServer> getVotingView() {
return getQuorumVerifier().getVotingMembers();
}
代码示例来源:origin: apache/zookeeper
public void addQuorumVerifier(QuorumVerifier qv) {
qvAcksetPairs.add(new QuorumVerifierAcksetPair(qv,
new HashSet<Long>(qv.getVotingMembers().size())));
}
代码示例来源:origin: apache/zookeeper
private boolean isParticipant(long sid) {
return self.getQuorumVerifier().getVotingMembers().containsKey(sid);
}
代码示例来源:origin: apache/zookeeper
private void updateObserverMasterList() {
if (observerMasterPort <= 0) {
return; // observer masters not enabled
}
observerMasters.clear();
StringBuilder sb = new StringBuilder();
for (QuorumServer server : quorumVerifier.getVotingMembers().values()) {
InetSocketAddress addr = new InetSocketAddress(server.addr.getAddress(), observerMasterPort);
observerMasters.add(new QuorumServer(server.id, addr));
sb.append(addr).append(",");
}
LOG.info("Updated learner master list to be {}", sb.toString());
Collections.shuffle(observerMasters);
}
代码示例来源:origin: apache/zookeeper
public synchronized Set<Long> getCurrentAndNextConfigVoters() {
Set<Long> voterIds = new HashSet<Long>(getQuorumVerifier()
.getVotingMembers().keySet());
if (getLastSeenQuorumVerifier() != null) {
voterIds.addAll(getLastSeenQuorumVerifier().getVotingMembers()
.keySet());
}
return voterIds;
}
代码示例来源:origin: apache/zookeeper
public boolean addAck(Long sid) {
boolean change = false;
for (QuorumVerifierAcksetPair qvAckset : qvAcksetPairs) {
if (qvAckset.getQuorumVerifier().getVotingMembers().containsKey(sid)) {
qvAckset.getAckset().add(sid);
change = true;
}
}
return change;
}
代码示例来源:origin: apache/zookeeper
/**
* Returns the initial vote value of server identifier.
*
* @return long
*/
private long getInitId(){
if(self.getQuorumVerifier().getVotingMembers().containsKey(self.getId()))
return self.getId();
else return Long.MIN_VALUE;
}
代码示例来源:origin: apache/zookeeper
int numParticipators = qv.getVotingMembers().size();
int numObservers = qv.getObservingMembers().size();
if (numParticipators == 0) {
for (QuorumServer s : qv.getVotingMembers().values()) {
if (s.electionAddr == null)
throw new IllegalArgumentException(
代码示例来源:origin: apache/zookeeper
/**
* Returns true if a quorum in qv is connected and synced with the leader
* and false otherwise
*
* @param qv, a QuorumVerifier
*/
public boolean isQuorumSynced(QuorumVerifier qv) {
HashSet<Long> ids = new HashSet<Long>();
if (qv.getVotingMembers().containsKey(self.getId()))
ids.add(self.getId());
synchronized (forwardingFollowers) {
for (LearnerHandler learnerHandler: forwardingFollowers){
if (learnerHandler.synced() && qv.getVotingMembers().containsKey(learnerHandler.getSid())){
ids.add(learnerHandler.getSid());
}
}
}
return qv.containsQuorum(ids);
}
代码示例来源:origin: apache/zookeeper
if (newQVAcksetPair.getQuorumVerifier().getVotingMembers().containsKey(self.getId()) &&
newQVAcksetPair.getQuorumVerifier().getVotingMembers().get(self.getId()).addr.equals(self.getQuorumAddress())){
return self.getId();
代码示例来源:origin: apache/zookeeper
private boolean updateLearnerType(QuorumVerifier newQV) {
//check if I'm an observer in new config
if (newQV.getObservingMembers().containsKey(getId())) {
if (getLearnerType()!=LearnerType.OBSERVER){
setLearnerType(LearnerType.OBSERVER);
LOG.info("Becoming an observer");
reconfigFlagSet();
return true;
} else {
return false;
}
} else if (newQV.getVotingMembers().containsKey(getId())) {
if (getLearnerType()!=LearnerType.PARTICIPANT){
setLearnerType(LearnerType.PARTICIPANT);
LOG.info("Becoming a voting participant");
reconfigFlagSet();
return true;
} else {
return false;
}
}
// I'm not in the view
if (getLearnerType()!=LearnerType.PARTICIPANT){
setLearnerType(LearnerType.PARTICIPANT);
LOG.info("Becoming a non-voting participant");
reconfigFlagSet();
return true;
}
return false;
}
代码示例来源:origin: apache/zookeeper
} else {
long currentLeaderId = getCurrentVote().getId();
QuorumServer myleaderInCurQV = prevQV.getVotingMembers().get(currentLeaderId);
QuorumServer myleaderInNewQV = qv.getVotingMembers().get(currentLeaderId);
leaderChange = (myleaderInCurQV == null || myleaderInCurQV.addr == null ||
myleaderInNewQV == null || !myleaderInCurQV.addr.equals(myleaderInNewQV.addr));
代码示例来源:origin: apache/zookeeper
votingMembers.put(2L, null);
votingMembers.put(3L, null);
when(quorumVerifierMock.getVotingMembers()).thenReturn(votingMembers);
代码示例来源:origin: apache/zookeeper
qp.getQuorumVerifier().getVotingMembers().get(j));
代码示例来源:origin: apache/zookeeper
request.qv.setVersion(request.getHdr().getZxid());
if (QuorumPeerConfig.isStandaloneEnabled() && request.qv.getVotingMembers().size() < 2) {
String msg = "Reconfig failed - new configuration must include at least 2 followers";
LOG.warn(msg);
throw new KeeperException.BadArgumentsException(msg);
} else if (request.qv.getVotingMembers().size() < 1) {
String msg = "Reconfig failed - new configuration must include at least 1 follower";
LOG.warn(msg);
代码示例来源:origin: apache/zookeeper
if (self.getQuorumVerifier().getVotingMembers().containsKey(f.getSid())){
followerSet.add(f.getSid());
内容来源于网络,如有侵权,请联系作者删除!