Hadoop HDFS
  1. Hadoop HDFS
  2. HDFS-2040

Only build libhdfs if a flag is passed

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 0.23.0
    • Fix Version/s: 0.23.0
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      In HDFS-2022 we made ant binary build libhdfs unconditionally, this is a pain for users who now need to get the native toolchain working to create a tarball to test a change, and inconsistent with common and MR (see MAPREDUCE-2559) which only build native code if a flag is passed. Let's revert to the previous behavior of requiring -Dlibhdfs be passed at build time. We could also create a new ant target that doesn't build the native code, however restoring the old behavior seems simplest.

      1. hdfs-2040-1.patch
        1 kB
        Eli Collins
      2. hdfs-2040-2.patch
        1 kB
        Eli Collins

        Issue Links

          Activity

          Hide
          Eli Collins added a comment -

          Patch attached:

          • Removes the auto-setting of libhdfs
          • Modifies bin-package to work even if the lib dir does not exist (eg because libhdfs has not been build), and to use the platform-agnostic lib symlink
          Show
          Eli Collins added a comment - Patch attached: Removes the auto-setting of libhdfs Modifies bin-package to work even if the lib dir does not exist (eg because libhdfs has not been build), and to use the platform-agnostic lib symlink
          Hide
          Eric Yang added a comment -

          Is there another patch to remove $

          {build.platform} from the c++ library build? Otherwise ${build.platform}

          should be preserved.

          Show
          Eric Yang added a comment - Is there another patch to remove $ {build.platform} from the c++ library build? Otherwise ${build.platform} should be preserved.
          Hide
          Eli Collins added a comment -

          Is there another patch to remove ${build.platform} from the c++ library build?

          Nope.

          bq. Otherwise ${build.platform} should be preserved.

          Why? c+/lib is a link to c+/$

          {build.platform}

          /lib, the idea for this link is to not have to worry about the build.platform in all the places we want to point to the c++ lib.

          Show
          Eli Collins added a comment - Is there another patch to remove ${build.platform} from the c++ library build? Nope. bq. Otherwise ${build.platform} should be preserved. Why? c+ /lib is a link to c +/$ {build.platform} /lib, the idea for this link is to not have to worry about the build.platform in all the places we want to point to the c++ lib.
          Hide
          Eli Collins added a comment -

          Updated patch attached that doesn't use the symlink. Not a big deal either way to me, this patch is more consistent with MR-2559.

          Show
          Eli Collins added a comment - Updated patch attached that doesn't use the symlink. Not a big deal either way to me, this patch is more consistent with MR-2559.
          Hide
          Todd Lipcon added a comment -

          +1

          Show
          Todd Lipcon added a comment - +1
          Hide
          Hadoop QA added a comment -

          -1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12481763/hdfs-2040-2.patch
          against trunk revision 1133225.

          +1 @author. The patch does not contain any @author tags.

          -1 tests included. The patch doesn't appear to include any new or modified tests.
          Please justify why no new tests are needed for this patch.
          Also please list what manual steps were performed to verify this patch.

          -1 patch. The patch command could not apply the patch.

          Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/737//console

          This message is automatically generated.

          Show
          Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12481763/hdfs-2040-2.patch against trunk revision 1133225. +1 @author. The patch does not contain any @author tags. -1 tests included. The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. -1 patch. The patch command could not apply the patch. Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/737//console This message is automatically generated.
          Hide
          Eli Collins added a comment -

          I've committed this. Thanks Eric and Todd.

          Show
          Eli Collins added a comment - I've committed this. Thanks Eric and Todd.
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Hdfs-trunk-Commit #746 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk-Commit/746/)

          Show
          Hudson added a comment - Integrated in Hadoop-Hdfs-trunk-Commit #746 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk-Commit/746/ )
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Hdfs-trunk #699 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk/699/)

          Show
          Hudson added a comment - Integrated in Hadoop-Hdfs-trunk #699 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk/699/ )

            People

            • Assignee:
              Eli Collins
              Reporter:
              Eli Collins
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development