public void memberDeparted(final InternalDistributedMember id, final boolean crashed) { synchronized (membersLock) { pendingResponders.remove(id); } synchronized (this) { if (id.equals(selectedNode) && (this.requestInProgress) && (this.remoteGetInProgress)) { selectedNode = null; selectedNodeDead = true; computeRemainingTimeout(); if (logger.isDebugEnabled()) { logger.debug("{}: processing loss of member {}", this, id); } this.lastNotifySpot = 3; notifyAll(); // signal the waiter; we are not done; but we need the waiter to call sendNetSearchRequest } if(responseQueue != null) responseQueue.remove(id); checkIfDone(); } }
public void memberDeparted(final InternalDistributedMember id, final boolean crashed) { synchronized (membersLock) { pendingResponders.remove(id); } synchronized (this) { if (id.equals(selectedNode) && (this.requestInProgress) && (this.remoteGetInProgress)) { selectedNode = null; selectedNodeDead = true; computeRemainingTimeout(); logFine(this + ": processing loss of member ", id); this.lastNotifySpot = 3; notifyAll(); // signal the waiter; we are not done; but we need the waiter to call sendNetSearchRequest } if(responseQueue != null) responseQueue.remove(id); checkIfDone(); } // this.advisor.getLogWriter().info( // "DEBUG: netsearch id " + this.processorId + " received memberDeparted event for " + id); }
private synchronized void sendNetSearchRequest() { InternalDistributedMember nextResponder = nextAppropriateResponder(); if (nextResponder != null) { // Make a request to the next responder in the queue RegionAttributes attrs = this.region.getAttributes(); setSelectedNode(nextResponder); this.requestInProgress = true; this.remoteGetInProgress = true; NetSearchRequestMessage.sendMessage(this, this.regionName, this.key, nextResponder,this.remainingTimeout, attrs.getEntryTimeToLive().getTimeout(), attrs.getEntryIdleTimeout().getTimeout() ); } else { this.remoteGetInProgress = false; checkIfDone(); } } /**
private synchronized void sendNetSearchRequest() { InternalDistributedMember nextResponder = nextAppropriateResponder(); if (nextResponder != null) { // Make a request to the next responder in the queue RegionAttributes attrs = this.region.getAttributes(); setSelectedNode(nextResponder); this.requestInProgress = true; this.remoteGetInProgress = true; NetSearchRequestMessage.sendMessage(this, this.regionName, this.key, nextResponder,this.remainingTimeout, attrs.getEntryTimeToLive().getTimeout(), attrs.getEntryIdleTimeout().getTimeout() ); } else { this.remoteGetInProgress = false; checkIfDone(); } } /**