Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-30148

Allocate shorter workspace if it will be too long for reasonable use inside build

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • core
    • None

      When using rich matrix axes or deep folders hierarchy, substantial part of maximal path name (255 on windows for instance) can be consumed by the path to workspace not leaving enough room for the build itself.

      Introduce threshold (global or per job) to define expected path length left for build. if the default allocation algorithm creates WS path so long that there will be not enough path length left for the build, hash should be used instead.

      Therefore, if the threshold will be configured to 1024 Jenkins will use hash on Windows all the time and on linux only if the workspace path exceeds 3072 characters (assuming 4096 is the maximal path allowed on linux).

          [JENKINS-30148] Allocate shorter workspace if it will be too long for reasonable use inside build

          Oliver Gondža created issue -
          Oliver Gondža made changes -
          Description Original: When using rich matrix axes or deep folders hierarchy, substantial part of maximal path name (255 on windows for instance) can be consumed with the path to workspace not leaving enough for the build itself.

          Introduce threshold (global or per job) to define expected path length left for build. if the default allocation algorithm creates path so long that there will be not enough path length left for the build, hash should be used instead.

          Therefore, if the threshold will be configured to 1024 Jenkins will use hash on Windows all the time and on linux only if the workspace path exceeds 3072 characters (assuming 4096 is the maximal path allowed on linux).
          New: When using rich matrix axes or deep folders hierarchy, substantial part of maximal path name (255 on windows for instance) can be consumed by the path to workspace not leaving enough room for the build itself.

          Introduce threshold (global or per job) to define expected path length left for build. if the default allocation algorithm creates WS path so long that there will be not enough path length left for the build, hash should be used instead.

          Therefore, if the threshold will be configured to 1024 Jenkins will use hash on Windows all the time and on linux only if the workspace path exceeds 3072 characters (assuming 4096 is the maximal path allowed on linux).
          Kanstantsin Shautsou made changes -
          Link New: This issue is related to JENKINS-25330 [ JENKINS-25330 ]
          Oliver Gondža made changes -
          Link New: This issue is related to JENKINS-25783 [ JENKINS-25783 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 165235 ] New: JNJira + In-Review [ 181886 ]
          Sorin Sbarnea made changes -
          Priority Original: Minor [ 4 ] New: Major [ 3 ]
          Jesse Glick made changes -
          Link New: This issue relates to JENKINS-2111 [ JENKINS-2111 ]
          Jesse Glick made changes -
          Link New: This issue relates to JENKINS-34564 [ JENKINS-34564 ]
          Sorin Sbarnea made changes -
          Link New: This issue is related to JENKINS-44983 [ JENKINS-44983 ]
          Oliver Gondža made changes -
          Assignee Original: Oliver Gondža [ olivergondza ]

            Unassigned Unassigned
            olivergondza Oliver Gondža
            Votes:
            5 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated: