Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Fix Version/s: None
    • Component/s: Jenkins
    • Labels:
      None
    • Environment:
      Windows
    • Project:
      Hadoop

      Description

      Getting builds to work with the Windows limitations on pathing is tricky. Hadoop is particularly challenging due to the size of the project and the verbose nature of maven. Any chance we could get a permanent drive letter for "F:\jenkins\jenkins-slave\workspace" assigned or that directory path shortened in some other way?

      I'm basically wanting %WORKSPACE% = W:\%JOB_NAME% (or whatever) to give us those precious 32 characters back.

      Thanks!

        Issue Links

          Activity

          Hide
          cthistle Chris Thistlethwaite added a comment -
          Are the builds currently failing? I'm pretty sure we have longfilepath enabled on our Windows Jenkins nodes. I can check and get back to you. Otherwise, we'll have to find out a workaround.
          Show
          cthistle Chris Thistlethwaite added a comment - Are the builds currently failing? I'm pretty sure we have longfilepath enabled on our Windows Jenkins nodes. I can check and get back to you. Otherwise, we'll have to find out a workaround.
          Hide
          aw Allen Wittenauer added a comment - Reporter
          Definitely failing.

          From https://builds.apache.org/view/H-L/view/Hadoop/job/Precommit-hadoop-win/7/artifact/out/branch-mvninstall-root.txt:

          {code}
               [exec] C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(312,5): error MSB3491: Could not write lines to file "test_libhdfs_threaded_hdfs_static.dir\RelWithDebInfo\test_lib.E43BA732.tlog\test_libhdfs_threaded_hdfs_static.lastbuildstate". The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. [F:\jenkins\jenkins-slave\workspace\Precommit-hadoop-win\s\hadoop-hdfs-project\hadoop-hdfs-native-client\target\native\main\native\libhdfs\test_libhdfs_threaded_hdfs_static.vcxproj]
          {code}
          Show
          aw Allen Wittenauer added a comment - Reporter Definitely failing. From https://builds.apache.org/view/H-L/view/Hadoop/job/Precommit-hadoop-win/7/artifact/out/branch-mvninstall-root.txt: {code}      [exec] C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(312,5): error MSB3491: Could not write lines to file "test_libhdfs_threaded_hdfs_static.dir\RelWithDebInfo\test_lib.E43BA732.tlog\test_libhdfs_threaded_hdfs_static.lastbuildstate". The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. [F:\jenkins\jenkins-slave\workspace\Precommit-hadoop-win\s\hadoop-hdfs-project\hadoop-hdfs-native-client\target\native\main\native\libhdfs\test_libhdfs_threaded_hdfs_static.vcxproj] {code}
          Hide
          cthistle Chris Thistlethwaite added a comment -
          Hmmm turns out that Windows 10 has support for long path names (which is enabled on bb-win10) but Server 2012 R2 is a bit more stubborn. I'll have to ponder this for a bit.
          Show
          cthistle Chris Thistlethwaite added a comment - Hmmm turns out that Windows 10 has support for long path names (which is enabled on bb-win10) but Server 2012 R2 is a bit more stubborn. I'll have to ponder this for a bit.
          Hide
          aw Allen Wittenauer added a comment - Reporter
          I was thinking that just setting a drive letter to chop off that bit would be a quick and dirty fix. I suspect the vast, vast, vast majority projects won't need to worry about it. But for the bigger/more complex projects, we'd have a potential work around.
          Show
          aw Allen Wittenauer added a comment - Reporter I was thinking that just setting a drive letter to chop off that bit would be a quick and dirty fix. I suspect the vast, vast, vast majority projects won't need to worry about it. But for the bigger/more complex projects, we'd have a potential work around.
          Hide
          cthistle Chris Thistlethwaite added a comment -
          Ok for starters I created F:\short on windows-2012-2 and set the build config to use that node. F:\short links to F:\jenkins\jenkins-slave\workspace\ so you can chop off that bit. Can you make the change on your side and kick off a build? If it works, I'll make that available on the other build nodes.
          Show
          cthistle Chris Thistlethwaite added a comment - Ok for starters I created F:\short on windows-2012-2 and set the build config to use that node. F:\short links to F:\jenkins\jenkins-slave\workspace\ so you can chop off that bit. Can you make the change on your side and kick off a build? If it works, I'll make that available on the other build nodes.
          Hide
          aw Allen Wittenauer added a comment - Reporter
          OK, that was enough to get me over the hump. The build that was failing now passes. We'll see how long that lasts. :)

          For posterity, i used:

          {code}
          @set WORKSPACE=F:\short\%JOB_NAME%
          {code}

          At the top of my DOS batch to redefine %WORKSPACE% so that the rest of the batch worked without changes.

          Thanks!
          Show
          aw Allen Wittenauer added a comment - Reporter OK, that was enough to get me over the hump. The build that was failing now passes. We'll see how long that lasts. :) For posterity, i used: {code} @set WORKSPACE=F:\short\%JOB_NAME% {code} At the top of my DOS batch to redefine %WORKSPACE% so that the rest of the batch worked without changes. Thanks!
          Hide
          cthistle Chris Thistlethwaite added a comment -
          While not a great solution, it works until we can get something better. I've updated the other windows build nodes with the same short symlink, so feel free to use any of the other boxes.
          Show
          cthistle Chris Thistlethwaite added a comment - While not a great solution, it works until we can get something better. I've updated the other windows build nodes with the same short symlink, so feel free to use any of the other boxes.

            People

            • Assignee:
              cthistle Chris Thistlethwaite
              Reporter:
              aw Allen Wittenauer
              Request participants:
              None
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: