Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-7424

Log an error if the topology script doesn't handle multiple args

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.23.1
    • None
    • Reviewed

    Description

      ScriptBasedMapping#resolve currently warns and returns null if it passes n arguments to the topology script and gets back a different number of resolutions. This indicates a bug in the topology script (or it's input) and therefore should be an error.

      // invalid number of entries returned by the script
      LOG.warn("Script " + scriptName + " returned "
         + Integer.toString(m.size()) + " values when "
         + Integer.toString(names.size()) + " were expected.");
      return null;
      

      There's only one place in Hadoop (FSNamesystem init) where we pass multiple arguments to the topology script, and it only done for performance (to trigger resolution/caching of all the hosts in the includes file on startup). So currently a topology script that doesn't handle multiple arguments just means the initial cache population doesn't work.

      Attachments

        1. HADOOP-7424.patch
          1 kB
          Uma Maheswara Rao G

        Issue Links

          Activity

            People

              umamaheswararao Uma Maheswara Rao G
              eli Eli Collins
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: