public MasterMonitorInfo getMasterMonitorInfo() { final MasterMonitorInfo result = new MasterMonitorInfo(); result.tServerInfo = new ArrayList<>(); result.tableMap = new DefaultMap<>(new TableInfo()); for (Entry<TServerInstance,TabletServerStatus> serverEntry : tserverStatus.entrySet()) { final TabletServerStatus status = serverEntry.getValue(); result.tServerInfo.add(status); for (Entry<String,TableInfo> entry : status.tableMap.entrySet()) { TableInfoUtil.add(result.tableMap.get(entry.getKey()), entry.getValue()); } } result.badTServers = new HashMap<>(); synchronized (badServers) { for (TServerInstance bad : badServers.keySet()) { result.badTServers.put(bad.hostPort(), TabletServerState.UNRESPONSIVE.getId()); } } result.state = getMasterState(); result.goalState = getMasterGoalState(); result.unassignedTablets = displayUnassigned(); result.serversShuttingDown = new HashSet<>(); synchronized (serversToShutdown) { for (TServerInstance server : serversToShutdown) result.serversShuttingDown.add(server.hostPort()); } DeadServerList obit = new DeadServerList(context, getZooKeeperRoot() + Constants.ZDEADTSERVERS); result.deadTabletServers = obit.getList(); result.bulkImports = bulkImportStatus.getBulkLoadStatus(); return result; }
@SuppressWarnings("unchecked") @Override public V get(Object key) { K k = (K) key; // fail early that key is correct type, rather than during put V result = super.get(k); if (result == null) { try { super.put(k, result = construct()); } catch (Exception ex) { throw new RuntimeException(ex); } } return result; }
@SuppressWarnings("unchecked") @Override public V get(Object key) { V result = super.get(key); if (result == null) { try { super.put((K) key, result = construct()); } catch (Exception ex) { throw new RuntimeException(ex); } } return result; }
result.tableMap = new DefaultMap<String,TableInfo>(new TableInfo()); for (Entry<TServerInstance,TabletServerStatus> serverEntry : tserverStatus.entrySet()) { final TabletServerStatus status = serverEntry.getValue();
@SuppressWarnings("unchecked") @Override public V get(Object key) { K k = (K) key; // fail early that key is correct type, rather than during put V result = super.get(k); if (result == null) { try { super.put(k, result = construct()); } catch (Exception ex) { throw new RuntimeException(ex); } } return result; }
result.tableMap = new DefaultMap<>(new TableInfo()); for (Entry<TServerInstance,TabletServerStatus> serverEntry : tserverStatus.entrySet()) { final TabletServerStatus status = serverEntry.getValue();