/** * Add to the in-memory copy of regions in transition and then call close * handler on passed region <code>hri</code> * @param hri * @param state * @param oldData */ private void addToRITandCallClose(final HRegionInfo hri, final RegionState.State state, final RegionTransitionData oldData) { this.regionsInTransition.put(hri.getEncodedName(), new RegionState(hri, state, oldData.getStamp(), oldData.getOrigin())); new ClosedRegionHandler(this.master, this, hri).process(); }
(data.getOrigin() == null || !serverManager.isServerOnline(data.getOrigin()))) { data.getStamp(), data.getOrigin())); (data.getOrigin() == null || !serverManager.isServerOnline(data.getOrigin()))) { } else if (data.getOrigin() != null && !serverManager.isServerOnline(data.getOrigin())) { regionsInTransition.put(encodedRegionName, new RegionState( regionInfo, RegionState.State.PENDING_OPEN, data.getStamp(), data .getOrigin())); regionsInTransition.put(encodedRegionName, new RegionState( regionInfo, RegionState.State.OPENING, data.getStamp(), data .getOrigin())); RegionState.State.OPENING, data.getStamp(), data.getOrigin())); failoverProcessedRegions.put(encodedRegionName, regionInfo); break; data.getStamp(), data.getOrigin())); ServerName sn = data.getOrigin() == null? null: data.getOrigin();
synchronized(regionsInTransition) { HRegionInfo hri = null; if (data == null || data.getOrigin() == null) { LOG.warn("Unexpected NULL input " + data); return; ServerName sn = data.getOrigin(); (System.currentTimeMillis() - 15000); LOG.debug("Handling transition=" + data.getEventType() + ", server=" + data.getOrigin() + ", region=" + (prettyPrintedRegionName == null? "null": prettyPrintedRegionName) + (lateEvent? ", which is more than 15 seconds late" : "")); if (hri != null) { regionState = new RegionState(hri, RegionState.State.CLOSING, data .getStamp(), data.getOrigin()); regionsInTransition.put(encodedName, regionState); failoverProcessedRegions.put(encodedName, hri); (!regionState.isPendingClose() && !regionState.isClosing())) { LOG.warn("Received CLOSING for region " + prettyPrintedRegionName + " from server " + data.getOrigin() + " but region was in " + " the state " + regionState + " and not " + "in expected PENDING_CLOSE or CLOSING states"); data.getStamp(), data.getOrigin()); break;
String encodedName = HRegionInfo.encodeRegionName(data.getRegionName()); LOG.info("Handling HBCK triggered transition=" + data.getEventType() + ", server=" + data.getOrigin() + ", region=" + HRegionInfo.prettyPrint(encodedName)); RegionState regionState = regionsInTransition.get(encodedName);