Azure Pipeline 数据流错误 不允许在非空目录上执行此操作
Azure Pipeline Data flow ERROR This operation is not permitted on a non-empty directory
我最近几天在 Azure Factory 上遇到问题,上周这个错误没有问题,ADF(Azure 数据工厂)管道也没有改变,但最近 3 天出现了这个错误
{"StatusCode":"DFExecutorUserError","Message":"Job failed due to reason: at Sink 'savetocurated': org.apache.hadoop.fs.azure.AzureException: com.microsoft.azure.storage.StorageException: This operation is not permitted on a non-empty directory.","Details":"org.apache.hadoop.fs.azure.AzureException: com.microsoft.azure.storage.StorageException: This operation is not permitted on a non-empty directory.\n\tat org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.delete(AzureNativeFileSystemStore.java:2607)\n\tat org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.delete(AzureNativeFileSystemStore.java:2617)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.deleteFile(NativeAzureFileSystem.java:2657)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.execute(NativeAzureFileSystem.java:2391)\n\tat org.apache.hadoop.fs.azure.AzureFileSystemThreadPoolExecutor.executeParallel(AzureFileSystemThreadPoolExecutor.java:223)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.deleteWithoutAuth(NativeAzureFileSystem.java:2403)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.delete(NativeAzureFileSystem.java:2453)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.delete(NativeAzureFileSystem.java:1936)\n\tat org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter."}
并且我尝试了一些基于 internet/Whosebug
的修复
- 创建新的链接服务 = 结果仍然失败
- 删除 Sink 文件夹中的所有数据 = 结果仍然失败
- 将上次成功的文件复制到今天的错误文件并重新运行 = 结果仍然失败
关于如何处理这个错误的任何信息?
我能够通过创建 Azure Data Lake Storage Gen2 类型的新链接服务并更新我的接收器数据集以使用它来解决这个错误。它们以前属于 Azure Blob 存储类型。在此更新并发布更改后,我的管道工作正常。
是@Tim T
我们需要从 Azure BLOB 更改为新的 Azure Data Lake Storage Gen2
并且现在数据可以下沉到文件夹中的 csv 文件
我最近几天在 Azure Factory 上遇到问题,上周这个错误没有问题,ADF(Azure 数据工厂)管道也没有改变,但最近 3 天出现了这个错误
{"StatusCode":"DFExecutorUserError","Message":"Job failed due to reason: at Sink 'savetocurated': org.apache.hadoop.fs.azure.AzureException: com.microsoft.azure.storage.StorageException: This operation is not permitted on a non-empty directory.","Details":"org.apache.hadoop.fs.azure.AzureException: com.microsoft.azure.storage.StorageException: This operation is not permitted on a non-empty directory.\n\tat org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.delete(AzureNativeFileSystemStore.java:2607)\n\tat org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.delete(AzureNativeFileSystemStore.java:2617)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.deleteFile(NativeAzureFileSystem.java:2657)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.execute(NativeAzureFileSystem.java:2391)\n\tat org.apache.hadoop.fs.azure.AzureFileSystemThreadPoolExecutor.executeParallel(AzureFileSystemThreadPoolExecutor.java:223)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.deleteWithoutAuth(NativeAzureFileSystem.java:2403)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.delete(NativeAzureFileSystem.java:2453)\n\tat org.apache.hadoop.fs.azure.NativeAzureFileSystem.delete(NativeAzureFileSystem.java:1936)\n\tat org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter."}
并且我尝试了一些基于 internet/Whosebug
的修复- 创建新的链接服务 = 结果仍然失败
- 删除 Sink 文件夹中的所有数据 = 结果仍然失败
- 将上次成功的文件复制到今天的错误文件并重新运行 = 结果仍然失败
关于如何处理这个错误的任何信息?
我能够通过创建 Azure Data Lake Storage Gen2 类型的新链接服务并更新我的接收器数据集以使用它来解决这个错误。它们以前属于 Azure Blob 存储类型。在此更新并发布更改后,我的管道工作正常。
是@Tim T
我们需要从 Azure BLOB 更改为新的 Azure Data Lake Storage Gen2
并且现在数据可以下沉到文件夹中的 csv 文件