Description

During Package extraction with Team Foundation Server (TFS) and the Delivery Management Tool (DMT), the following error occurs:

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.

This error may occur at the same time as well:

No available logical drive. The direct path to the export directory will be used. If a path length limitation error occurs during extraction, a logical drive must be used to go around this limitation of the TFS API.

Observed in CAST AIP

 

Release
Yes/No
8.0.x (tick)
7.3.x (tick)
Observed on RDBMS
RDBMS
Yes/No
Oracle Server (tick)
Microsoft SQL Server (tick)
CSS2 (tick)
Step by Step Scenario

Below is the step-by-step scenario leading to the problem:

Start DMT and try to extract files from TFS

Impact of the Problem

The impact of the problem on the analysis or the dashboard is: Missing files from the analysis.

Action Plan

The issue is due to a windows OS limitation in regard to the length of a directory as indicated in the error messages.

You can see more on this here: Maximum Path Length Limitation

As well as here for TFS and this limitation: Max file path of 259 character limit 

In this case, the data and directory structure being extracted from TFS violates this OS limitation.


To resolve this issue, we have the below solutions:

  1. Extract the code to a machine which supports this long directory name (perhaps to a Unix machine which does not have this windows OS limitation), then copy the source from there to a shorter named directory on Windows that CAST can then use for delivery/deployment process.
    For example,if the source is extracted to:
    application1/system1/namespace1/organization1/hierarachy1/<perhaps more hierarchies>/<actual directory of code to be analyzed>
    You could then copy this code source (without all the application/system/namespace/etc hierarchy)  to a directory like the following which may then work for the windows name limitation:
    S:\src\<actual directory of code to be analyzed>
    and then use this location as a starting point for the DMT process.
    OR
  2. Extract code using TFS outside of DMT on a very short path (Example S:\src\<actual directory of code to be analyzed>) and then use this location as a starting point for the DMT process
     OR
  3. Run DMT on a Linux machine which does not have this OS limitation to extract the code, as well as hold the delivery folder. 

 

 

Notes/comments
Ticket # 5252
Related Pages