/** * Returns the id of the associated QuorumPeer, which will do for a unique * id of this server. */ @Override public long getServerId() { return self.getId(); }
/** * Returns the id of the associated QuorumPeer, which will do for a unique * id of this server. */ @Override public long getServerId() { return self.getId(); }
/** * Returns the id of the associated QuorumPeer, which will do for a unique * id of this server. */ @Override public long getServerId() { return self.getId(); }
public QuorumBean(QuorumPeer peer){ this.peer = peer; name = "ReplicatedServer_id" + peer.getId(); }
@Override public boolean isLeader() { return peer.isLeader(peer.getId()); } }
/** * Forward the request as an ACK to the leader */ public void processRequest(Request request) { QuorumPeer self = leader.self; if(self != null) leader.processAck(self.getId(), request.zxid, null); else LOG.error("Null QuorumPeer"); }
@Override public boolean isPartOfEnsemble() { return peer.getView().containsKey(peer.getId()); }
private boolean needEraseClientInfoFromStaticConfig() { QuorumServer server = quorumVerifier.getAllMembers().get(getId()); return (server != null && server.clientAddr != null && !server.isClientAddrFromStatic); }
private void connectNewPeers(QuorumCnxManager qcm){ if (quorumVerifier != null && lastSeenQuorumVerifier != null) { Map<Long, QuorumServer> committedView = quorumVerifier.getAllMembers(); for (Entry<Long, QuorumServer> e : lastSeenQuorumVerifier.getAllMembers().entrySet()) { if (e.getKey() != getId() && !committedView.containsKey(e.getKey())) qcm.connectOne(e.getKey()); } } }
/** * Update the peer state based on the given proposedLeader. Also update * the leadingVoteSet if it becomes the leader. */ private void setPeerState(long proposedLeader, SyncedLearnerTracker voteSet) { ServerState ss = (proposedLeader == self.getId()) ? ServerState.LEADING: learningState(); self.setPeerState(ss); if (ss == ServerState.LEADING) { leadingVoteSet = voteSet; } }
private void leaveInstance(Vote v) { if(LOG.isDebugEnabled()){ LOG.debug("About to leave FLE instance: leader={}, zxid=0x{}, my id={}, my state={}", v.getId(), Long.toHexString(v.getZxid()), self.getId(), self.getPeerState()); } recvqueue.clear(); }
public QuorumCnxManager createCnxnManager() { return new QuorumCnxManager(this, this.getId(), this.getView(), this.authServer, this.authLearner, this.tickTime * this.syncLimit, this.getQuorumListenOnAllIPs(), this.quorumCnxnThreadsSize, this.isQuorumSaslAuthEnabled()); }
@Test public void testGetNameProperty() { QuorumPeer qpMock = mock(QuorumPeer.class); when(qpMock.getId()).thenReturn(1L); QuorumBean qb = new QuorumBean(qpMock); assertThat("getName property should return Bean name in the right format", qb.getName(), equalTo("ReplicatedServer_id1")); }
private void updateThreadName() { String plain = cnxnFactory != null ? cnxnFactory.getLocalAddress() != null ? formatInetAddr(cnxnFactory.getLocalAddress()) : "disabled" : "disabled"; String secure = secureCnxnFactory != null ? formatInetAddr(secureCnxnFactory.getLocalAddress()) : "disabled"; setName(String.format("QuorumPeer[myid=%d](plain=%s)(secure=%s)", getId(), plain, secure)); }
@Override public void createSessionTracker() { sessionTracker = new LeaderSessionTracker( this, getZKDatabase().getSessionWithTimeOuts(), tickTime, self.getId(), self.areLocalSessionsEnabled(), getZooKeeperServerListener()); }
@Test public void testLocalPeerIsLeader() throws Exception { long localPeerId = 7; QuorumPeer peer = mock(QuorumPeer.class); when(peer.getId()).thenReturn(localPeerId); when(peer.isLeader(eq(localPeerId))).thenReturn(true); LocalPeerBean localPeerBean = new LocalPeerBean(peer); assertTrue(localPeerBean.isLeader()); }
@Test public void testLocalPeerIsNotLeader() throws Exception { long localPeerId = 7; QuorumPeer peer = mock(QuorumPeer.class); when(peer.getId()).thenReturn(localPeerId); when(peer.isLeader(eq(localPeerId))).thenReturn(false); LocalPeerBean localPeerBean = new LocalPeerBean(peer); assertFalse(localPeerBean.isLeader()); }
@Override public void createSessionTracker() { sessionTracker = new LearnerSessionTracker( this, getZKDatabase().getSessionWithTimeOuts(), this.tickTime, self.getId(), self.areLocalSessionsEnabled(), getZooKeeperServerListener()); }
@Test public void testViewContains() { // Test view contains self Assert.assertTrue(qb.s1.viewContains(qb.s1.getId())); // Test view contains other servers Assert.assertTrue(qb.s1.viewContains(qb.s2.getId())); // Test view does not contain non-existant servers Assert.assertFalse(qb.s1.viewContains(-1L)); }