Hadoop Common
  1. Hadoop Common
  2. HADOOP-4959

System metrics does not output correctly for Redhat 5.1.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.21.0
    • Component/s: None
    • Labels:
      None
    • Environment:

      Redhat EL 5.1, Java 6

    • Hadoop Flags:
      Reviewed

      Description

      Top output is different between Redhat 4.5 and Redhat 5.1. The demux parser needs to be updated to parse information correctly.

      From Redhat EL 4.5:

      008-12-23 00:00:33,983 INFO org.apache.hadoop.chukwa.inputtools.plugin.metrics.Exec: top - 00:00:33 up 291 days, 3:34,
      0 users, load average: 1.42, 4.47, 4.97^D
      Tasks: 184 total, 1 running, 183 sleeping, 0 stopped, 0 zombie^D
      Cpu(s): 6.9% us, 0.8% sy, 0.5% ni, 90.8% id, 0.9% wa, 0.0% hi, 0.2% si^D
      Mem: 3088508k total, 1364972k used, 1723536k free, 68008k buffers^D
      Swap: 16386160k total, 501196k used, 15884964k free, 406344k cached^D

      From Redhat EL 5.1:

      2008-12-23 00:55:00,242 INFO org.apache.hadoop.chukwa.inputtools.plugin.metrics.Exec: top - 00:55:00 up 33 days, 22:07,
      2 users, load average: 1.14, 1.17, 1.07^D
      Tasks: 177 total, 1 running, 176 sleeping, 0 stopped, 0 zombie^D
      Cpu(s): 0.3%us, 0.0%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st^D
      Mem: 8175232k total, 2027628k used, 6147604k free, 344052k buffers^D
      Swap: 25157664k total, 0k used, 25157664k free, 1248400k cached^D

      Notice in 5.1, there is a % for st.

      The parser needs to be improved.

        Activity

        Eric Yang created issue -
        Hide
        Ari Rabkin added a comment -

        The whole business of "use system utilities to collect statistics, and then parse the output" never sat well with me. It's going to be a pain to maintain, going forward, since it's not easy to test on N different versions of utilities. Perhaps worse, there are cases where the text parses fine, but the meaning has shifted. I've seen this with regards cumulative-versus-instantaneous measurements from iostat and such.

        There's a library, Sigar http://www.hyperic.com/products/sigar.html that does this correctly. Unfortunately, it's GPLed. Is there an Apache-friendly equivalent that we could use instead?

        Show
        Ari Rabkin added a comment - The whole business of "use system utilities to collect statistics, and then parse the output" never sat well with me. It's going to be a pain to maintain, going forward, since it's not easy to test on N different versions of utilities. Perhaps worse, there are cases where the text parses fine, but the meaning has shifted. I've seen this with regards cumulative-versus-instantaneous measurements from iostat and such. There's a library, Sigar http://www.hyperic.com/products/sigar.html that does this correctly. Unfortunately, it's GPLed. Is there an Apache-friendly equivalent that we could use instead?
        Hide
        Eric Yang added a comment -

        Fixed regular expression for matching top output.

        Show
        Eric Yang added a comment - Fixed regular expression for matching top output.
        Eric Yang made changes -
        Field Original Value New Value
        Attachment HADOOP-4959.patch [ 12396975 ]
        Hide
        Eric Yang added a comment -

        ganglia metrics library and dstat were suggested for this purpose. However, there are other type of problems, like precision lost in float in ganglia metrics library. dstat is also GPLed. Replacing system metrics measurements with a third party tool should be another bug on it's own.

        Show
        Eric Yang added a comment - ganglia metrics library and dstat were suggested for this purpose. However, there are other type of problems, like precision lost in float in ganglia metrics library. dstat is also GPLed. Replacing system metrics measurements with a third party tool should be another bug on it's own.
        Hide
        Doug MacEachern added a comment -

        We recently added a FLOSS License Exception (borrowed from mysql-connector-java-5.1.6/EXCEPTIONS-CONNECTOR-J) to sigar, see:
        http://svn.hyperic.org/trunk/EXCEPTIONS?revision=3884&root=Hyperic+SIGAR&view=markup

        The intent is to make the license Apache-friendly so sigar can be used in projects such as Hadoop.

        Show
        Doug MacEachern added a comment - We recently added a FLOSS License Exception (borrowed from mysql-connector-java-5.1.6/EXCEPTIONS-CONNECTOR-J) to sigar, see: http://svn.hyperic.org/trunk/EXCEPTIONS?revision=3884&root=Hyperic+SIGAR&view=markup The intent is to make the license Apache-friendly so sigar can be used in projects such as Hadoop.
        Eric Yang made changes -
        Hadoop Flags [Reviewed]
        Release Note What is new in HADOOP-4959:

        Support parsing of top output for Redhat EL 5.1.
        Status Open [ 1 ] Patch Available [ 10002 ]
        Hide
        Ari Rabkin added a comment -

        I forgot to say, before. This patch is certainly helpful, even if it doesn't embody the ideal approach, going forward.

        +1

        Show
        Ari Rabkin added a comment - I forgot to say, before. This patch is certainly helpful, even if it doesn't embody the ideal approach, going forward. +1
        Hide
        Eric Yang added a comment -

        The shell script calling should also be different:

        In Redhat 5.1:
        sar -q -r -n ALL
        iostat -x -k 55 2

        In Redhat 4.5:
        sar -q -r -n FULL 55
        iostat -x 55 2

        Show
        Eric Yang added a comment - The shell script calling should also be different: In Redhat 5.1: sar -q -r -n ALL iostat -x -k 55 2 In Redhat 4.5: sar -q -r -n FULL 55 iostat -x 55 2
        Hide
        Eric Yang added a comment -

        Wait for a update to systemDataLoader.sh.

        Show
        Eric Yang added a comment - Wait for a update to systemDataLoader.sh.
        Eric Yang made changes -
        Status Patch Available [ 10002 ] Open [ 1 ]
        Eric Yang made changes -
        Attachment HADOOP-4959.patch [ 12396975 ]
        Hide
        Eric Yang added a comment - - edited

        New patch which includes lsb-release detection.

        Show
        Eric Yang added a comment - - edited New patch which includes lsb-release detection.
        Eric Yang made changes -
        Attachment HADOOP-4959.patch [ 12398027 ]
        Hide
        Eric Yang added a comment -

        Added lsb-release detection.

        Show
        Eric Yang added a comment - Added lsb-release detection.
        Eric Yang made changes -
        Status Open [ 1 ] Patch Available [ 10002 ]
        Hide
        Chris Douglas added a comment -

        I committed this. Thanks, Eric

        Show
        Chris Douglas added a comment - I committed this. Thanks, Eric
        Chris Douglas made changes -
        Status Patch Available [ 10002 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Fix Version/s 0.21.0 [ 12313563 ]
        Hide
        Hudson added a comment -
        Show
        Hudson added a comment - Integrated in Hadoop-trunk #756 (See http://hudson.zones.apache.org/hudson/job/Hadoop-trunk/756/ )
        Owen O'Malley made changes -
        Component/s contrib/chukwa [ 12312445 ]
        Hide
        Robert Chansler added a comment -

        Editorial pass over all release notes prior to publication of 0.21.

        Show
        Robert Chansler added a comment - Editorial pass over all release notes prior to publication of 0.21.
        Robert Chansler made changes -
        Release Note What is new in HADOOP-4959:

        Support parsing of top output for Redhat EL 5.1.
        Tom White made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Eric Yang
            Reporter:
            Eric Yang
          • Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development