You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Owen O'Malley (JIRA)" <ji...@apache.org> on 2009/11/17 17:41:39 UTC

[jira] Created: (HDFS-776) Fix exception handling in Balancer

Fix exception handling in Balancer
----------------------------------

                 Key: HDFS-776
                 URL: https://issues.apache.org/jira/browse/HDFS-776
             Project: Hadoop HDFS
          Issue Type: Bug
            Reporter: Owen O'Malley
            Priority: Critical
             Fix For: 0.21.0


The Balancer's AccessKeyUpdater handles exceptions badly. In particular:

1. Catching Exception too low. The wrapper around setKeys should only catch IOException.
2. InterruptedException is ignored. It should be caught at the top level and exit run.
3. Throwable is not caught. It should be caught at the top level and kill the Balancer server process.

{quote}
  class AccessKeyUpdater implements Runnable {

    public void run() {
      while (shouldRun) {
        try {
          accessTokenHandler.setKeys(namenode.getAccessKeys());
        } catch (Exception e) {
          LOG.error(StringUtils.stringifyException(e));
        }
        try {
          Thread.sleep(keyUpdaterInterval);
        } catch (InterruptedException ie) {
        }
      }
    }
  }
{quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.