<%@ page contentType="text/html;charset=UTF-8" import="java.util.List" import="java.util.regex.*" import="java.net.URLEncoder" import="org.apache.hadoop.hbase.RegionHistorian" import="org.apache.hadoop.hbase.master.HMaster" import="org.apache.hadoop.hbase.RegionHistorian.RegionHistoryInformation" import="org.apache.hadoop.hbase.HConstants"%> <%@ page import="org.apache.hadoop.hbase.util.Bytes" %> <% String regionName = request.getParameter("regionname"); HMaster master = (HMaster)getServletContext().getAttribute(HMaster.MASTER); List informations = RegionHistorian.getInstance().getRegionHistory(Bytes.toBytesBinary(regionName)); // Pattern used so we can wrap a regionname in an href. Pattern pattern = Pattern.compile(RegionHistorian.SPLIT_PREFIX + "(.*)$"); %> Region in <%= regionName %>

Region <%= regionName %>


<%if(informations != null && informations.size() > 0) { %> <% for( RegionHistoryInformation information : informations) { String description = information.getDescription(); Matcher m = pattern.matcher(description); if (m.matches()) { // Wrap the region name in an href so user can click on it. description = RegionHistorian.SPLIT_PREFIX + "" + m.group(1) + ""; } %> <% } %>
TimestampEventDescription
<%= information.getTimestampAsString() %><%= information.getEvent() %><%= description %>

Master is the source of following events: creation, open, and assignment. Regions are the source of following events: split, compaction, and flush.

<%} else {%>

This region is no longer available. It may be due to a split, a merge or the name changed.

<%} %>