@Override public void onEvent(GridEvent evt) { assert evt instanceof GridDiscoveryEvent; synchronized (qryMux) { uids.remove(((GridDiscoveryEvent)evt).eventNode().id()); if (uids.isEmpty()) qryMux.notifyAll(); } } };
@Override public void onEvent(GridEvent evt) { GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; for (GridStreamerStageExecutionFuture fut : stageFuts.values()) fut.onNodeLeft(discoEvt.eventNode().id()); } }, EVT_NODE_LEFT, EVT_NODE_FAILED);
@Override public void onEvent(GridEvent evt) { GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; for (GridCacheDistributedQueryFuture fut : futs.values()) fut.onNodeLeft(discoEvt.eventNode().id()); } }, EVT_NODE_LEFT, EVT_NODE_FAILED);
@Override public void onEvent(GridEvent evt) { assert evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT; GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; for (EvictionFuture fut : futs.values()) fut.onNodeLeft(discoEvt.eventNode().id()); } },
@Override public void onEvent(GridEvent evt) { assert evt instanceof GridDiscoveryEvent; UUID nodeId = ((GridDiscoveryEvent)evt).eventNode().id(); if (evt.type() == EVT_NODE_LEFT || evt.type() == EVT_NODE_FAILED) { Collection<IsolatedDeployment> rmv = new LinkedList<>(); synchronized (mux) { for (Iterator<IsolatedDeployment> iter = cache.values().iterator(); iter.hasNext();) { IsolatedDeployment dep = iter.next(); if (dep.senderNodeId().equals(nodeId)) { dep.undeploy(); iter.remove(); rmv.add(dep); } } } for (IsolatedDeployment dep : rmv) dep.recordUndeployed(nodeId); } } };
@Override public void onEvent(GridEvent evt) { assert evt instanceof GridDiscoveryEvent && (evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT) : "Unexpected event: " + evt; GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; if (resHolderId.equals(discoEvt.eventNode().id())) { lock.lock(); try { if (t.isEmpty()) { t.set("Node that originated task execution has left grid: " + resHolderId, null); cond.signalAll(); } } finally { lock.unlock(); } } } };
@Override public void onEvent(GridEvent evt) { assert evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT; GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; if (ggfsCtx.ggfsNode(discoEvt.eventNode())) { for (WriteCompletionFuture future : pendingWrites.values()) { future.onError(discoEvt.eventNode().id(), new GridTopologyException("Node left grid before write completed: " + evt.node().id())); } } } }, EVT_NODE_LEFT, EVT_NODE_FAILED);
@Override public void onEvent(GridEvent evt) { assert evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT; GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; if (ggfsCtx.ggfsNode(discoEvt.eventNode())) { for (WriteCompletionFuture future : pendingWrites.values()) { future.onError(discoEvt.eventNode().id(), new GridTopologyException("Node left grid before write completed: " + evt.node().id())); } } } }, EVT_NODE_LEFT, EVT_NODE_FAILED);
@Override public void onEvent(GridEvent evt) { assert evt instanceof GridDiscoveryEvent && (evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT) : "Unexpected event: " + evt; GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; if (taskNodeId.equals(discoEvt.eventNode().id())) { lock.lock(); try { if (t.isEmpty()) { t.set("Node that originated task execution has left grid: " + taskNodeId, null); cond.signalAll(); } } finally { lock.unlock(); } } } };
/** * @param part Partition. * @param type Type. * @param discoEvt Discovery event. */ private void preloadEvent(int part, int type, GridDiscoveryEvent discoEvt) { assert discoEvt != null; cctx.events().addPreloadEvent(part, type, discoEvt.eventNode(), discoEvt.type(), discoEvt.timestamp()); }
@Override public void onEvent(GridEvent evt) { assert evt instanceof GridDiscoveryEvent; assert evt.type() == EVT_NODE_LEFT || evt.type() == EVT_NODE_FAILED; onNodeLeft(((GridDiscoveryEvent)evt).eventNode().id()); } };
@Override public void onEvent(GridEvent evt) { assert evt instanceof GridDiscoveryEvent; assert evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT; GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; cctx.time().addTimeoutObject(new NodeFailureTimeoutObject(discoEvt.eventNode().id())); if (txFinishSync != null) txFinishSync.onNodeLeft(discoEvt.eventNode().id()); } },
@Override public void onEvent(GridEvent evt) { assert evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT : "Unexpected event: " + evt; UUID id = ((GridDiscoveryEvent)evt).eventNode().id(); if (log.isDebugEnabled()) log.debug("Processing node departure: " + id); for (Map.Entry<GridUuid, CachedDeploymentInfo<K, V>> entry : deps.entrySet()) { CachedDeploymentInfo<K, V> d = entry.getValue(); if (log.isDebugEnabled()) log.debug("Examining cached info: " + d); if (d.senderId().equals(id) || d.removeParticipant(id)) { deps.remove(entry.getKey(), d); if (log.isDebugEnabled()) log.debug("Removed cached info [d=" + d + ", deps=" + deps + ']'); } } allParticipants.remove(id); } };
/** * @param evt Discovery event. */ @SuppressWarnings( {"unchecked"}) public void onDiscoveryEvent(GridDiscoveryEvent evt) { topCntr.incrementAndGet(); int type = evt.type(); for (GridFuture<?> f : futures()) { if (isMini(f)) { MiniFuture mini = (MiniFuture)f; mini.onDiscoveryEvent(); if (type == EVT_NODE_LEFT || type == EVT_NODE_FAILED) { if (mini.node().id().equals(evt.eventNode().id())) { mini.onResult(new GridTopologyException("Node left grid (will retry): " + evt.eventNode().id())); break; } } } } }
@Override public void onEvent(GridEvent evt) { assert evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT || evt.type() == EVT_NODE_JOINED; GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; // Notify backup worker on each topology change. if (CU.affinityNode(cctx, discoEvt.eventNode())) backupWorker.addEvent(discoEvt); } },
/** {@inheritDoc} */ @Override public void onEvent(GridEvent evt) { assert evt.type() == EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT; final UUID nodeId = ((GridDiscoveryEvent)evt).eventNode().id(); ctx.closure().runLocalSafe(new Runnable() { @Override public void run() { if (!lock.tryReadLock()) return; try { for (GridTaskWorker<?, ?> task : tasks.values()) task.onNodeLeft(nodeId); } finally { lock.readUnlock(); } } }, false); } }
/** * @param evt Discovery event. */ public void onDiscoveryEvent(GridDiscoveryEvent evt) { if (log.isDebugEnabled()) log.debug("Processing discovery event: " + evt); if (evt.type() == GridEventType.EVT_NODE_FAILED || evt.type() == EVT_NODE_LEFT) onNodeLeft(evt.eventNode().id()); synchronized (this) { lastSnapshot = new GridDiscoveryTopologySnapshot(evt.topologyVersion(), evt.topologyNodes()); notifyAll(); } }
@Override public void onEvent(GridEvent evt) { GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; for (String cacheName : nearOrClientCaches) { if (ctx.discovery().cacheAffinityNodes(cacheName, discoEvt.topologyVersion()).isEmpty()) { if (ctx.event().isRecordable(GridEventType.EVT_CACHE_DATA_LOST)) { ctx.event().record(new GridCacheEvent(cacheName, ctx.discovery().localNode(), discoEvt.eventNode(), "All data nodes left", GridEventType.EVT_CACHE_DATA_LOST, 0, false, null, null, null, null, false, null, false, null, null, null)); } } } } }, GridEventType.EVT_NODE_LEFT, GridEventType.EVT_NODE_FAILED);
@Override public void onEvent(GridEvent evt) { assert evt.type() == EVT_NODE_METRICS_UPDATED; GridDiscoveryEvent discoEvt = (GridDiscoveryEvent)evt; GridNode node = cctx.discovery().node(discoEvt.node().id()); if (node != null && !node.id().equals(cctx.nodeId())) onReceived(discoEvt.eventNode().id(), node.metrics().getLastDataVersion()); } };
@Override public void onEvent(GridEvent evt) { assert evt instanceof GridDiscoveryEvent : "Invalid event [expected=" + EVT_NODE_JOINED + ", actual=" + evt.type() + ", evt=" + evt + ']'; GridNode node = spiCtx.node(((GridDiscoveryEvent)evt).eventNode().id()); if (node != null) try { checkConfigurationConsistency(spiCtx, node, false, !secSpi); checkConfigurationConsistency0(spiCtx, node, false); } catch (GridSpiException e) { U.error(log, "Spi consistency check failed [node=" + node.id() + ", spi=" + getName() + ']', e); } } }, EVT_NODE_JOINED);