[
https://issues.apache.org/jira/browse/HBASE-8097?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13601970#comment-13601970
]
Ted Yu commented on HBASE-8097:
-------------------------------
I am not sure whether the add() call should be dropped.
Take a look at this method in DeadServer:
{code}
public synchronized List<Pair<ServerName, Long>> copyDeadServersSince(long
ts){
List<Pair<ServerName, Long>> res = new ArrayList<Pair<ServerName,
Long>>(size());
for (Map.Entry<ServerName, Long> entry:deadServers.entrySet()){
if (entry.getValue() >= ts){
{code}
Without calling add(), we don't have up-to-date timestamp.
> MetaServerShutdownHandler may potentially keep bumping up
> DeadServer.numProcessing
> ----------------------------------------------------------------------------------
>
> Key: HBASE-8097
> URL: https://issues.apache.org/jira/browse/HBASE-8097
> Project: HBase
> Issue Type: Bug
> Reporter: Jeffrey Zhong
> Assignee: Jeffrey Zhong
> Fix For: 0.96.0
>
> Attachments: 8097.txt, hbase-8097_1.patch
>
>
> {code}
> } catch (IOException ioe) {
> this.services.getExecutorService().submit(this);
> this.deadServers.add(serverName);
> throw new IOException("failed log splitting for " +
> serverName + ", will retry", ioe);
> }
> {code}
> this.deadServers.add(serverName); will keep incrementing
> DeadServer.numProcessing
> We can't get rid of numProcessing by just checking deadServers.size() because
> deadServers is also used to report some historically failed RSs.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira