【问题标题】:USQL Job failing due to exceeding the path length limitUSQL 作业因超出路径长度限制而失败
【发布时间】:2017-06-20 12:06:45
【问题描述】:

我正在使用本地 SDK 在本地运行我的作业。但是,我收到以下错误消息:

Error : 'System.IO.PathTooLongException: 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.

我的一位同事通过在 C:\ 中的新目录中运行项目,能够追踪到 DataRoot 内 catalog 文件夹中的 .ss 文件的错误。 .ss 文件的路径是

C:\HelloWorld\Main\Source\Data\Insights\NewProject\NewProject\USQLJobsForTesting.Tests\bin\Debug\DataRoot\_catalog_\database\d92bfaa5-dc7f-4131-abdc-22c50eb0d8c0\schema\f6cf4417-e2d8-4769-b633-4fb5dddcb066\table\aa136daf-9e86-4650-9cc3-119d607fb3b0\31a18033-099e-4c2a-aae3-75cf099b0fb1.ss

超过了 260 个字符的允许限制。我无法减少项目路径的长度,因为我的组织遵循某种工作目录格式。

有没有办法解决这个问题?

【问题讨论】:

    标签: azure-data-lake


    【解决方案1】:

    尝试在 CMD 中使用 subst 通过将驱动器号映射到您要使用的数据根目录来解决此问题。

    subst X: C:\PathToYourDataRoot

    然后在 ADL Tools for Visual Studio 中将 DataRoot 设置为 X:

    【讨论】:

    • 这可能适用于在本地运行,但不适用于自动化测试。例如。我们有自动化测试,这些测试使用从输出目录引用的 DataRoot 运行。这有时会导致路径更长,我们只能将输出目录用于测试项目
    猜你喜欢
    • 2016-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-14
    • 2018-08-18
    相关资源
    最近更新 更多