Skip to content

[Data Lake] ListPaths throws "The specified container does not exist" #6795

@josuegomes

Description

@josuegomes

ListPaths [1] function throws "The specified container does not exist".

[1] https://azuresdkdocs.z19.web.core.windows.net/cpp/azure-storage-files-datalake/12.12.0/class_azure_1_1_storage_1_1_files_1_1_data_lake_1_1_data_lake_file_system_client.html#aa7192b386a4397b70836463809b6c9cc

Storage account location: brazilsouth

See sample and output below:

#include <azure/core.hpp>

#include <azure/storage/files/datalake/datalake_options.hpp>
#include <azure/storage/files/datalake.hpp>

#include <string>
#include <iostream>

int main()
{
	try {
		const std::string accountUrl = "https://[DATALAKE STORAGE ACCOUNT].blob.core.windows.net/";
		const std::string accessKey = "[REDACTED]";

		Azure::Storage::Files::DataLake::DataLakeClientOptions options;
		options.ApiVersion = "2025-07-05";

		options.Log.AllowedHttpQueryParameters.insert("comp");
		options.Log.AllowedHttpQueryParameters.insert("recursive");
		options.Log.AllowedHttpQueryParameters.insert("resource");
		options.Log.AllowedHttpQueryParameters.insert("restype");

		Azure::Storage::Files::DataLake::DataLakeServiceClient dataLakeServiceClient(accountUrl, std::make_shared<Azure::Storage::StorageSharedKeyCredential>("[DATALAKE STORAGE ACCOUNT]", accessKey), options);

		std::cout << "= List FileSystems ====================================================\n";
		auto listFileSystemResponse = dataLakeServiceClient.ListFileSystems();
		for (auto& filesystem : listFileSystemResponse.FileSystems) {
			std::cout << "= FileSystem name: " << filesystem.Name << "\n";
		}
		std::cout << "=======================================================================\n";

		const std::string fileSystemName = "hierarchicalfilesystem";

		auto fileSystemClient = dataLakeServiceClient.GetFileSystemClient(fileSystemName);

		std::cout << "= List Paths ==========================================================\n";
		auto listPathsResponse = fileSystemClient.ListPaths(false);
		for (auto& path : listPathsResponse.Paths) {
			std::cout << "= Path name: " << path.Name << " IsDirectory: " << path.IsDirectory << "\n";
		}
		std::cout << "=======================================================================\n";
	}
	catch (const std::exception& e) {
		std::cout << "Exception: " << e.what() << "\n";
	}
}

Output:


= List FileSystems ====================================================
[2025-10-16T12:12:59.6558503Z T: 140737352614144] INFO  : HTTP Request : GET https://[DATALAKE STORAGE ACCOUNT].blob.core.windows.net?comp=list
authorization : REDACTED
user-agent : azsdk-cpp-storage-blobs/12.14.0 (Linux 6.8.0-85-generic x86_64 #85~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Sep 19 16:18:59 UTC 2 Cpp/202002)
x-ms-client-request-id : e7730ab3-ff84-447f-b240-a546e069e776
x-ms-date : Thu, 16 Oct 2025 12:12:59 GMT
x-ms-version : 2025-07-05
[2025-10-16T12:12:59.6558601Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Creating a new session.
[2025-10-16T12:12:59.6558710Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Spawn new connection.
[2025-10-16T12:12:59.7631944Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: No Host in request headers. Adding it
[2025-10-16T12:12:59.7632164Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Send request without payload
[2025-10-16T12:12:59.7632773Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Parse server response
[2025-10-16T12:12:59.7845132Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Request completed. Moving response out of session and session to response.
[2025-10-16T12:12:59.7845727Z T: 140737352614144] DEBUG : Moving connection to pool...
[2025-10-16T12:12:59.7845988Z T: 140737352614144] DEBUG : Start clean thread
[2025-10-16T12:12:59.7852510Z T: 140737352614144] INFO  : HTTP/1.1 Response (129ms) : 200 OK
content-type : application/xml
date : Thu, 16 Oct 2025 12:12:59 GMT
server : Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
transfer-encoding : chunked
x-ms-client-request-id : e7730ab3-ff84-447f-b240-a546e069e776
x-ms-request-id : fe835b7d-201e-0042-1996-3e2096000000
x-ms-version : 2025-07-05
[2025-10-16T12:12:59.7853095Z T: 140737352614144] INFO  : HTTP status code 200 won't be retried.
= FileSystem name: hierarchicalcontainer
= FileSystem name: hierarchicalfilesystem
=======================================================================
= List Paths ==========================================================
[2025-10-16T12:12:59.7863765Z T: 140737352614144] INFO  : HTTP Request : GET https://[DATALAKE STORAGE ACCOUNT].blob.core.windows.net/hierarchicalfilesystem?recursive=false&resource=filesystem
authorization : REDACTED
user-agent : azsdk-cpp-storage-files-datalake/12.12.0 (Linux 6.8.0-85-generic x86_64 #85~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Sep 19 16:18:59 UTC 2 Cpp/202002)
x-ms-client-request-id : 38ffe1b1-bf0a-426c-92e6-bf9835a63dac
x-ms-date : Thu, 16 Oct 2025 12:12:59 GMT
x-ms-version : 2025-07-05
[2025-10-16T12:12:59.7864104Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Creating a new session.
[2025-10-16T12:12:59.7864501Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Re-using connection from the pool.
[2025-10-16T12:12:59.7865119Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: No Host in request headers. Adding it
[2025-10-16T12:12:59.7865322Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Send request without payload
[2025-10-16T12:12:59.7867309Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Parse server response
[2025-10-16T12:12:59.8051253Z T: 140737352614144] DEBUG : [CURL Transport Adapter]: Request completed. Moving response out of session and session to response.
[2025-10-16T12:12:59.8051446Z T: 140737352614144] DEBUG : Moving connection to pool...
[2025-10-16T12:12:59.8051516Z T: 140737352614144] DEBUG : Clean thread running. Won't start a new one.
[2025-10-16T12:12:59.8051682Z T: 140737352614144] INFO  : HTTP/1.1 Response (18ms) : 404 The specified container does not exist.
content-length : 225
content-type : application/xml
date : Thu, 16 Oct 2025 12:12:59 GMT
server : Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-client-request-id : 38ffe1b1-bf0a-426c-92e6-bf9835a63dac
x-ms-error-code : ContainerNotFound
x-ms-request-id : fe835b95-201e-0042-2f96-3e2096000000
x-ms-version : 2025-07-05
[2025-10-16T12:12:59.8051779Z T: 140737352614144] INFO  : HTTP status code 404 won't be retried.
Exception: 404 The specified container does not exist.
The specified container does not exist.
RequestId:fe835b95-201e-0042-2f96-3e2096000000
Time:2025-10-16T12:12:59.8105780Z
Request ID: fe835b95-201e-0042-2f96-3e2096000000

Metadata

Metadata

Assignees

Labels

Data LakeStorageStorage Service (Queues, Blobs, Files)customer-reportedIssues that are reported by GitHub users external to the Azure organization.questionThe issue doesn't require a change to the product in order to be resolved. Most issues start as that

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions