saintstack commented on a change in pull request #373: HBASE-22527 [hbck2] Add a master web ui to show the problematic regions URL: https://github.com/apache/hbase/pull/373#discussion_r304687345
########## File path: hbase-server/src/main/jamon/org/apache/hadoop/hbase/tmpl/master/AssignmentManagerStatusTmpl.jamon ########## @@ -17,27 +17,98 @@ See the License for the specific language governing permissions and limitations under the License. </%doc> <%import> -org.apache.hadoop.hbase.master.assignment.AssignmentManager; -org.apache.hadoop.hbase.master.assignment.AssignmentManager.RegionInTransitionStat; -org.apache.hadoop.hbase.master.assignment.RegionStates.RegionFailedOpen; -org.apache.hadoop.hbase.master.RegionState; +java.util.Map; +java.util.Set; +java.util.SortedSet; +java.util.concurrent.atomic.AtomicInteger; +java.util.stream.Collectors; org.apache.hadoop.conf.Configuration; org.apache.hadoop.hbase.HBaseConfiguration; org.apache.hadoop.hbase.HConstants; +org.apache.hadoop.hbase.ServerName; +org.apache.hadoop.hbase.client.RegionInfo; org.apache.hadoop.hbase.client.RegionInfoDisplay; -java.util.HashSet; -java.util.SortedSet; -java.util.Map; -java.util.concurrent.atomic.AtomicInteger; +org.apache.hadoop.hbase.master.RegionState; +org.apache.hadoop.hbase.master.assignment.AssignmentManager; +org.apache.hadoop.hbase.master.assignment.AssignmentManager.RegionInTransitionStat; +org.apache.hadoop.hbase.master.assignment.RegionStates.RegionFailedOpen; +org.apache.hadoop.hbase.util.Pair; </%import> <%args> AssignmentManager assignmentManager; int limit = 100; </%args> -<%java SortedSet<RegionState> rit = assignmentManager - .getRegionStates().getRegionsInTransitionOrderedByTimestamp(); -%> +<%java> +SortedSet<RegionState> rit = assignmentManager.getRegionStates() + .getRegionsInTransitionOrderedByTimestamp(); +Map<String, Pair<ServerName, Set<ServerName>>> problematicRegions = assignmentManager + .getProblematicRegions(); +</%java> + +<%if !problematicRegions.isEmpty() %> +<%java> +int totalSize = problematicRegions.size(); +int sizePerPage = Math.min(10, totalSize); +int numOfPages = (int) Math.ceil(totalSize * 1.0 / sizePerPage); +</%java> + <section> + <h2><a name="rit">Problematic Regions</a></h2> Review comment: On commit, add a sentence that says what a problematic region is. It seems like its one that has a meta entry that does not agree w/ where it is actually deployed? ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services