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

Remove dependency on different version of slf4j in avro

    Details

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

      Description

      Avro upgrade led to a mixture of slf4j versions. Hadoop uses slf4j 1.5.11, and avro brings in 1.6.1

      1. ivyXml-common.patch
        3 kB
        Konstantin Shvachko
      2. ivyXml-common.patch
        0.8 kB
        Konstantin Shvachko

        Issue Links

          Activity

          Hide
          shv Konstantin Shvachko added a comment -

          I committed this to 0.22 branch.

          Show
          shv Konstantin Shvachko added a comment - I committed this to 0.22 branch.
          Hide
          shv Konstantin Shvachko added a comment -

          I am just getting the bits together for 0.22.
          This is the consequence of avro upgrade in HADOOP-7646. I fixed that for mapreduce, but the new version of slf4j from avro is still propagating through downstream common and hdfs artifacts. This should fix it along with the HDFS counterpart jira.

          Show
          shv Konstantin Shvachko added a comment - I am just getting the bits together for 0.22. This is the consequence of avro upgrade in HADOOP-7646 . I fixed that for mapreduce, but the new version of slf4j from avro is still propagating through downstream common and hdfs artifacts. This should fix it along with the HDFS counterpart jira.
          Hide
          cutting Doug Cutting added a comment -

          SLF4J is a successor to commons logging. It does not bind you to a particular logging framework but is a meta logger like commons logging. It fixes some serious problems in the architecture of Commons logging. If you just add the slf4j-log4j.jar to your classpath then slf4j uses Log4j compatibly with everything else in Hadoop without any extra configuration.

          http://articles.qos.ch/thinkAgain.html

          Show
          cutting Doug Cutting added a comment - SLF4J is a successor to commons logging. It does not bind you to a particular logging framework but is a meta logger like commons logging. It fixes some serious problems in the architecture of Commons logging. If you just add the slf4j-log4j.jar to your classpath then slf4j uses Log4j compatibly with everything else in Hadoop without any extra configuration. http://articles.qos.ch/thinkAgain.html
          Hide
          stevel@apache.org Steve Loughran added a comment -

          If HADOOP-6807 was implemented, there'd be no nothing in Hadoop-common that uses SLF4J directly other than Avro

          Incidentally, why does Avro use SLF4J and not commons-logging? It's inconvenient when libraries tell you what logging framework to use, which is why commons-logging is so useful -it has more back ends than anything else.

          Show
          stevel@apache.org Steve Loughran added a comment - If HADOOP-6807 was implemented, there'd be no nothing in Hadoop-common that uses SLF4J directly other than Avro Incidentally, why does Avro use SLF4J and not commons-logging? It's inconvenient when libraries tell you what logging framework to use, which is why commons-logging is so useful -it has more back ends than anything else.
          Hide
          shv Konstantin Shvachko added a comment -

          Also needs to be excluded from hadoop-common templates.

          Show
          shv Konstantin Shvachko added a comment - Also needs to be excluded from hadoop-common templates.
          Hide
          hudson Hudson added a comment -

          Integrated in Hadoop-Common-22-branch #90 (See https://builds.apache.org/job/Hadoop-Common-22-branch/90/)
          HADOOP-7697. Add ignore slf4j in hadoop-common templates.

          shv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177231
          Files :

          • /hadoop/common/branches/branch-0.22/common/ivy/hadoop-common-instrumented-template.xml
          • /hadoop/common/branches/branch-0.22/common/ivy/hadoop-common-template.xml
          Show
          hudson Hudson added a comment - Integrated in Hadoop-Common-22-branch #90 (See https://builds.apache.org/job/Hadoop-Common-22-branch/90/ ) HADOOP-7697 . Add ignore slf4j in hadoop-common templates. shv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177231 Files : /hadoop/common/branches/branch-0.22/common/ivy/hadoop-common-instrumented-template.xml /hadoop/common/branches/branch-0.22/common/ivy/hadoop-common-template.xml
          Hide
          hudson Hudson added a comment -

          Integrated in Hadoop-Common-22-branch #88 (See https://builds.apache.org/job/Hadoop-Common-22-branch/88/)
          HADOOP-7697. Remove ivy dependency on different version of slf4j in avro. Contributed by Konstantin Shvachko.

          shv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177177
          Files :

          • /hadoop/common/branches/branch-0.22/common/CHANGES.txt
          • /hadoop/common/branches/branch-0.22/common/ivy.xml
          Show
          hudson Hudson added a comment - Integrated in Hadoop-Common-22-branch #88 (See https://builds.apache.org/job/Hadoop-Common-22-branch/88/ ) HADOOP-7697 . Remove ivy dependency on different version of slf4j in avro. Contributed by Konstantin Shvachko. shv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177177 Files : /hadoop/common/branches/branch-0.22/common/CHANGES.txt /hadoop/common/branches/branch-0.22/common/ivy.xml
          Hide
          shv Konstantin Shvachko added a comment -

          Ran test. This fixes problem for common.

          Show
          shv Konstantin Shvachko added a comment - Ran test. This fixes problem for common.
          Hide
          shv Konstantin Shvachko added a comment -

          The error message looks like this:
          SLF4J: The requested version 1.5.11 by your slf4j binding is not compatible with [1.6]
          SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details.
          It's all over the logs.
          Need to adjust dependencies for ivy.

          Show
          shv Konstantin Shvachko added a comment - The error message looks like this: SLF4J: The requested version 1.5.11 by your slf4j binding is not compatible with [1.6] SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details. It's all over the logs. Need to adjust dependencies for ivy.

            People

            • Assignee:
              shv Konstantin Shvachko
              Reporter:
              shv Konstantin Shvachko
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development