<% /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ %> <%@ page contentType="text/html; charset=UTF-8" import="org.apache.hadoop.util.ServletUtil" import="org.apache.hadoop.fs.FileStatus" import="org.apache.hadoop.fs.FileUtil" import="org.apache.hadoop.fs.Path" import="org.apache.hadoop.ha.HAServiceProtocol.HAServiceState" import="java.util.Collection" import="java.util.Arrays" %> <%!//for java.io.Serializable private static final long serialVersionUID = 1L;%> <% NameNode nn = NameNodeHttpServer.getNameNodeFromContext(application); FSNamesystem fsn = nn.getNamesystem(); HAServiceState nnHAState = nn.getServiceState(); boolean isActive = (nnHAState == HAServiceState.ACTIVE); String namenodeRole = nn.getRole().toString(); String namenodeLabel = nn.getNameNodeAddressHostPortString(); Collection corruptFileBlocks = fsn.listCorruptFileBlocks("/", null); int corruptFileCount = corruptFileBlocks.size(); %> Hadoop <%=namenodeRole%> <%=namenodeLabel%>

<%=namenodeRole%> '<%=namenodeLabel%>'

<%=NamenodeJspHelper.getVersionTable(fsn)%>
<% if (isActive) { %> Browse the filesystem
<% } %> <%=namenodeRole%> Logs
Go back to DFS home

Reported Corrupt Files

<% if (corruptFileCount == 0) { %> No missing blocks found at the moment.
Please run fsck for a thorough health analysis. <% } else { for (FSNamesystem.CorruptFileBlockInfo c : corruptFileBlocks) { String currentFileBlock = c.toString(); %> <%=currentFileBlock%>
<% } %>

Total: At least <%=corruptFileCount%> corrupt file(s)

<% } %> <% out.println(ServletUtil.htmlFooter()); %>