public void waitForServerOnline(){ while (!isStopped() && !isOnline()) { synchronized (online) { try { online.wait(msgInterval); } catch (InterruptedException ie) { Thread.currentThread().interrupt(); break; } } } }
public Map<String, ReplicationStatus> getWalGroupsReplicationStatus(){ Map<String, ReplicationStatus> walGroupsReplicationStatus = new TreeMap<>(); if(!this.isOnline()){ return walGroupsReplicationStatus; } List<ReplicationSourceInterface> allSources = new ArrayList<>(); allSources.addAll(replicationSourceHandler.getReplicationManager().getSources()); allSources.addAll(replicationSourceHandler.getReplicationManager().getOldSources()); for(ReplicationSourceInterface source: allSources){ walGroupsReplicationStatus.putAll(source.getWalGroupStatus()); } return walGroupsReplicationStatus; }
@Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { HRegionServer hrs = (HRegionServer)getServletContext().getAttribute(HRegionServer.REGIONSERVER); assert hrs != null : "No RS in context!"; resp.setContentType("text/html"); if (!hrs.isOnline()) { resp.getWriter().write("The RegionServer is initializing!"); resp.getWriter().close(); return; } RSStatusTmpl tmpl = new RSStatusTmpl(); if (req.getParameter("format") != null) tmpl.setFormat(req.getParameter("format")); if (req.getParameter("filter") != null) tmpl.setFilter(req.getParameter("filter")); if (req.getParameter("bcn") != null) tmpl.setBcn(req.getParameter("bcn")); if (req.getParameter("bcv") != null) tmpl.setBcv(req.getParameter("bcv")); tmpl.render(resp.getWriter(), hrs); } }
protected void waitForLabelsRegionAvailability(HRegionServer regionServer) { while (!regionServer.isOnline()) { try { Thread.sleep(10); } catch (InterruptedException e) { } } while (regionServer.getRegions(LABELS_TABLE_NAME).isEmpty()) { try { Thread.sleep(10); } catch (InterruptedException e) { } } }
if (!hrs.isOnline()) { response.getWriter().write("The RegionServer is initializing!"); response.getWriter().close();
private List<HRegionServer> getOnlineRegionServers() { List<HRegionServer> list = new ArrayList<>(); for (JVMClusterUtil.RegionServerThread rst : cluster.getRegionServerThreads()) { if (rst.getRegionServer().isOnline()) { list.add(rst.getRegionServer()); } } return list; }
private List<HRegionServer> getOnlineRegionServers() { List<HRegionServer> list = new ArrayList<>(); for (JVMClusterUtil.RegionServerThread rst : UTIL.getHBaseCluster().getRegionServerThreads()) { if (rst.getRegionServer().isOnline()) { list.add(rst.getRegionServer()); } } return list; }
/** * Called to verify that this server is up and running. */ // TODO : Rename this and HMaster#checkInitialized to isRunning() (or a better name). protected void checkOpen() throws IOException { if (regionServer.isAborted()) { throw new RegionServerAbortedException("Server " + regionServer.serverName + " aborting"); } if (regionServer.isStopped()) { throw new RegionServerStoppedException("Server " + regionServer.serverName + " stopping"); } if (!regionServer.fsOk) { throw new RegionServerStoppedException("File system not available"); } if (!regionServer.isOnline()) { throw new ServerNotRunningYetException("Server " + regionServer.serverName + " is not running yet"); } }
/** * Starts a region server thread and waits until its processed by master. Throws an exception * when it can't start a region server or when the region server is not processed by master * within the timeout. * * @return New RegionServerThread */ public JVMClusterUtil.RegionServerThread startRegionServerAndWait(long timeout) throws IOException { JVMClusterUtil.RegionServerThread t = startRegionServer(); ServerName rsServerName = t.getRegionServer().getServerName(); long start = System.currentTimeMillis(); ClusterStatus clusterStatus = getClusterStatus(); while ((System.currentTimeMillis() - start) < timeout) { if (clusterStatus != null && clusterStatus.getServers().contains(rsServerName)) { return t; } Threads.sleep(100); } if (t.getRegionServer().isOnline()) { throw new IOException("RS: " + rsServerName + " online, but not processed by master"); } else { throw new IOException("RS: " + rsServerName + " is offline"); } }
try { while (System.currentTimeMillis() <= endTime && !regionServer.isStopped() && !regionServer.isOnline()) { regionServer.online.wait(regionServer.msgInterval);
while (rst.isAlive() && !hrs.isOnline()) { Thread.sleep(100);
public void waitForServerOnline(){ while (!isStopped() && !isOnline()) { synchronized (online) { try { online.wait(msgInterval); } catch (InterruptedException ie) { Thread.currentThread().interrupt(); break; } } } }
public void waitForServerOnline(){ while (!isOnline() && !isStopped()){ sleeper.sleep(); } }
@Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { HRegionServer hrs = (HRegionServer)getServletContext().getAttribute(HRegionServer.REGIONSERVER); assert hrs != null : "No RS in context!"; resp.setContentType("text/html"); if (!hrs.isOnline()) { resp.getWriter().write("The RegionServer is initializing!"); resp.getWriter().close(); return; } RSStatusTmpl tmpl = new RSStatusTmpl(); if (req.getParameter("format") != null) tmpl.setFormat(req.getParameter("format")); if (req.getParameter("filter") != null) tmpl.setFilter(req.getParameter("filter")); if (req.getParameter("bcn") != null) tmpl.setBcn(req.getParameter("bcn")); if (req.getParameter("bcv") != null) tmpl.setBcv(req.getParameter("bcv")); tmpl.render(resp.getWriter(), hrs); } }
protected void waitForLabelsRegionAvailability(HRegionServer regionServer) { while (!regionServer.isOnline()) { try { Thread.sleep(10); } catch (InterruptedException e) { } } while (regionServer.getRegions(LABELS_TABLE_NAME).isEmpty()) { try { Thread.sleep(10); } catch (InterruptedException e) { } } }
if (!hrs.isOnline()) { response.getWriter().write("The RegionServer is initializing!"); response.getWriter().close();
private List<HRegionServer> getOnlineRegionServers() { List<HRegionServer> list = new ArrayList<>(); for (JVMClusterUtil.RegionServerThread rst : cluster.getRegionServerThreads()) { if (rst.getRegionServer().isOnline()) { list.add(rst.getRegionServer()); } } return list; }
private List<HRegionServer> getOnlineRegionServers() { List<HRegionServer> list = new ArrayList<>(); for (JVMClusterUtil.RegionServerThread rst : UTIL.getHBaseCluster().getRegionServerThreads()) { if (rst.getRegionServer().isOnline()) { list.add(rst.getRegionServer()); } } return list; }
/** * Called to verify that this server is up and running. * * @throws IOException */ protected void checkOpen() throws IOException { if (regionServer.isAborted()) { throw new RegionServerAbortedException("Server " + regionServer.serverName + " aborting"); } if (regionServer.isStopped()) { throw new RegionServerStoppedException("Server " + regionServer.serverName + " stopping"); } if (!regionServer.fsOk) { throw new RegionServerStoppedException("File system not available"); } if (!regionServer.isOnline()) { throw new ServerNotRunningYetException("Server is not running yet"); } }
/** * Starts a region server thread and waits until its processed by master. Throws an exception * when it can't start a region server or when the region server is not processed by master * within the timeout. * * @return New RegionServerThread */ public JVMClusterUtil.RegionServerThread startRegionServerAndWait(long timeout) throws IOException { JVMClusterUtil.RegionServerThread t = startRegionServer(); ServerName rsServerName = t.getRegionServer().getServerName(); long start = System.currentTimeMillis(); ClusterStatus clusterStatus = getClusterStatus(); while ((System.currentTimeMillis() - start) < timeout) { if (clusterStatus != null && clusterStatus.getServers().contains(rsServerName)) { return t; } Threads.sleep(100); } if (t.getRegionServer().isOnline()) { throw new IOException("RS: " + rsServerName + " online, but not processed by master"); } else { throw new IOException("RS: " + rsServerName + " is offline"); } }