@Override public long getClusterTime() { return clusterClock.getClusterTime(); }
long currentClusterTimeDiff = clusterClock.getClusterTimeDiff(); if (Math.abs(lastClusterTimeDiff - currentClusterTimeDiff) < CLOCK_JUMP_THRESHOLD) { clusterClock.setClusterTimeDiff(currentClusterTimeDiff - clockJump); lastClusterTimeDiff = clusterClock.getClusterTimeDiff(); lastHeartbeat = now;
long time = clusterClock.getClusterTime(); long startTime = clusterClock.getClusterStartTime(); Operation op = new FinalizeJoinOp(member.getUuid(), newMembersView, preJoinOp, postJoinOp, time, clusterService.getClusterId(), startTime, clusterStateManager.getState(),
return; long clusterTime = clusterClock.getClusterTime(); if (logger.isFineEnabled()) { logger.fine(format("Received heartbeat from %s (now: %s, timestamp: %s)", clusterClock.setMasterTime(timestamp); heartbeatFailureDetector.heartbeat(member, clusterClock.getClusterTime());
clusterClock.setClusterStartTime(clusterStartTime); clusterClock.setMasterTime(masterTime);
/** * Calculate and set the cluster clock diff. * * @param masterTime the cluster clock timestamp sent by the master node */ public void setMasterTime(long masterTime) { long diff = masterTime - Clock.currentTimeMillis(); setClusterTimeDiff(diff); }
public ClusterServiceImpl(Node node, MemberImpl localMember) { this.node = node; this.localMember = localMember; nodeEngine = node.nodeEngine; logger = node.getLogger(ClusterService.class.getName()); clusterClock = new ClusterClockImpl(logger); useLegacyMemberListFormat = node.getProperties().getBoolean(GroupProperty.USE_LEGACY_MEMBER_LIST_FORMAT); membershipManager = new MembershipManager(node, this, lock); clusterStateManager = new ClusterStateManager(node, lock); clusterJoinManager = new ClusterJoinManager(node, this, lock); clusterHeartbeatManager = new ClusterHeartbeatManager(node, this, lock); node.connectionManager.addConnectionListener(this); //MEMBERSHIP_EVENT_EXECUTOR is a single threaded executor to ensure that events are executed in correct order. nodeEngine.getExecutionService().register(MEMBERSHIP_EVENT_EXECUTOR_NAME, 1, Integer.MAX_VALUE, ExecutorType.CACHED); registerMetrics(); }
public boolean setThisMemberAsMaster() { clusterServiceLock.lock(); try { if (clusterService.isJoined()) { logger.warning("Cannot set as master because node is already joined!"); return false; } logger.finest("This node is being set as the master"); Address thisAddress = node.getThisAddress(); MemberVersion version = node.getVersion(); clusterService.setMasterAddress(thisAddress); if (clusterService.getClusterVersion().isUnknown()) { clusterService.getClusterStateManager().setClusterVersion(version.asVersion()); } clusterService.getClusterClock().setClusterStartTime(Clock.currentTimeMillis()); clusterService.setClusterId(UuidUtil.createClusterUuid()); clusterService.getMembershipManager().setLocalMemberListJoinVersion(SINGLETON_MEMBER_LIST_VERSION); clusterService.setJoined(true); return true; } finally { clusterServiceLock.unlock(); } }
public PhoneHomeParameterCreator createParameters(Node hazelcastNode) { ClusterServiceImpl clusterService = hazelcastNode.getClusterService(); int clusterSize = clusterService.getMembers().size(); Long clusterUpTime = clusterService.getClusterClock().getClusterUpTime(); RuntimeMXBean runtimeMxBean = ManagementFactory.getRuntimeMXBean(); JetBuildInfo jetBuildInfo = hazelcastNode.getBuildInfo().getJetBuildInfo(); PhoneHomeParameterCreator parameterCreator = new PhoneHomeParameterCreator() .addParam("version", buildInfo.getVersion()) .addParam("m", hazelcastNode.getThisUuid()) .addParam("p", getDownloadId()) .addParam("c", clusterService.getClusterId()) .addParam("crsz", convertToLetter(clusterSize)) .addParam("cssz", convertToLetter(hazelcastNode.clientEngine.getClientEndpointCount())) .addParam("cuptm", Long.toString(clusterUpTime)) .addParam("nuptm", Long.toString(runtimeMxBean.getUptime())) .addParam("jvmn", runtimeMxBean.getVmName()) .addParam("jvmv", System.getProperty("java.version")) .addParam("jetv", jetBuildInfo == null ? "" : jetBuildInfo.getVersion()); addClientInfo(hazelcastNode, parameterCreator); addOSInfo(parameterCreator); boolean isManagementCenterConfigEnabled = hazelcastNode.config.getManagementCenterConfig().isEnabled(); if (isManagementCenterConfigEnabled) { addManCenterInfo(hazelcastNode, clusterSize, parameterCreator); } else { parameterCreator.addParam("mclicense", "MC_NOT_CONFIGURED"); parameterCreator.addParam("mcver", "MC_NOT_CONFIGURED"); } return parameterCreator; }
long time = clusterClock.getClusterTime(); long startTime = clusterClock.getClusterStartTime(); Operation op = new FinalizeJoinOp(member.getUuid(), newMembersView, preJoinOp, postJoinOp, time, clusterService.getClusterId(), startTime, clusterStateManager.getState(),
return; long clusterTime = clusterClock.getClusterTime(); if (logger.isFineEnabled()) { logger.fine(format("Received heartbeat from %s (now: %s, timestamp: %s)", clusterClock.setMasterTime(timestamp); heartbeatFailureDetector.heartbeat(member, clusterClock.getClusterTime());
clusterClock.setClusterStartTime(clusterStartTime); clusterClock.setMasterTime(masterTime);
/** * Calculate and set the cluster clock diff. * * @param masterTime the cluster clock timestamp sent by the master node */ public void setMasterTime(long masterTime) { long diff = masterTime - Clock.currentTimeMillis(); setClusterTimeDiff(diff); }
public ClusterServiceImpl(Node node, MemberImpl localMember) { this.node = node; this.localMember = localMember; nodeEngine = node.nodeEngine; logger = node.getLogger(ClusterService.class.getName()); clusterClock = new ClusterClockImpl(logger); useLegacyMemberListFormat = node.getProperties().getBoolean(GroupProperty.USE_LEGACY_MEMBER_LIST_FORMAT); membershipManager = new MembershipManager(node, this, lock); clusterStateManager = new ClusterStateManager(node, lock); clusterJoinManager = new ClusterJoinManager(node, this, lock); clusterHeartbeatManager = new ClusterHeartbeatManager(node, this, lock); node.connectionManager.addConnectionListener(this); //MEMBERSHIP_EVENT_EXECUTOR is a single threaded executor to ensure that events are executed in correct order. nodeEngine.getExecutionService().register(MEMBERSHIP_EVENT_EXECUTOR_NAME, 1, Integer.MAX_VALUE, ExecutorType.CACHED); nodeEngine.getExecutionService().register(VERSION_AUTO_UPGRADE_EXECUTOR_NAME, 1, Integer.MAX_VALUE, ExecutorType.CACHED); registerMetrics(); }
public boolean setThisMemberAsMaster() { clusterServiceLock.lock(); try { if (clusterService.isJoined()) { logger.warning("Cannot set as master because node is already joined!"); return false; } logger.finest("This node is being set as the master"); Address thisAddress = node.getThisAddress(); MemberVersion version = node.getVersion(); clusterService.setMasterAddress(thisAddress); if (clusterService.getClusterVersion().isUnknown()) { clusterService.getClusterStateManager().setClusterVersion(version.asVersion()); } clusterService.getClusterClock().setClusterStartTime(Clock.currentTimeMillis()); clusterService.setClusterId(UuidUtil.createClusterUuid()); clusterService.getMembershipManager().setLocalMemberListJoinVersion(SINGLETON_MEMBER_LIST_VERSION); clusterService.setJoined(true); return true; } finally { clusterServiceLock.unlock(); } }
public PhoneHomeParameterCreator createParameters(Node hazelcastNode) { ClusterServiceImpl clusterService = hazelcastNode.getClusterService(); int clusterSize = clusterService.getMembers().size(); Long clusterUpTime = clusterService.getClusterClock().getClusterUpTime(); RuntimeMXBean runtimeMxBean = ManagementFactory.getRuntimeMXBean(); JetBuildInfo jetBuildInfo = hazelcastNode.getBuildInfo().getJetBuildInfo(); PhoneHomeParameterCreator parameterCreator = new PhoneHomeParameterCreator() .addParam("version", buildInfo.getVersion()) .addParam("m", hazelcastNode.getThisUuid()) .addParam("p", getDownloadId()) .addParam("c", clusterService.getClusterId()) .addParam("crsz", convertToLetter(clusterSize)) .addParam("cssz", convertToLetter(hazelcastNode.clientEngine.getClientEndpointCount())) .addParam("cuptm", Long.toString(clusterUpTime)) .addParam("nuptm", Long.toString(runtimeMxBean.getUptime())) .addParam("jvmn", runtimeMxBean.getVmName()) .addParam("jvmv", System.getProperty("java.version")) .addParam("jetv", jetBuildInfo == null ? "" : jetBuildInfo.getVersion()); addClientInfo(hazelcastNode, parameterCreator); addOSInfo(parameterCreator); boolean isManagementCenterConfigEnabled = hazelcastNode.config.getManagementCenterConfig().isEnabled(); if (isManagementCenterConfigEnabled) { addManCenterInfo(hazelcastNode, clusterSize, parameterCreator); } else { parameterCreator.addParam("mclicense", "MC_NOT_CONFIGURED"); parameterCreator.addParam("mcver", "MC_NOT_CONFIGURED"); } return parameterCreator; }
clusterClock.getClusterTime(), clusterService.getClusterId(), clusterClock.getClusterStartTime(), clusterStateManager.getState(), clusterService.getClusterVersion(), partitionRuntimeState); op.setCallerUuid(clusterService.getThisUuid());
@Override public long getClusterTime() { return clusterClock.getClusterTime(); }
long currentClusterTimeDiff = clusterClock.getClusterTimeDiff(); if (Math.abs(lastClusterTimeDiff - currentClusterTimeDiff) < CLOCK_JUMP_THRESHOLD) { clusterClock.setClusterTimeDiff(currentClusterTimeDiff - clockJump); lastClusterTimeDiff = clusterClock.getClusterTimeDiff(); lastHeartbeat = now;
clusterClock.getClusterTime(), clusterService.getClusterId(), clusterClock.getClusterStartTime(), clusterStateManager.getState(), clusterService.getClusterVersion(), partitionRuntimeState); op.setCallerUuid(clusterService.getThisUuid());