Skip to content

Fix issue with GCP auth and unity catalog#98456

Merged
scanhex12 merged 3 commits intomasterfrom
fix-gcs-auth-iceberg-rest-catalog
Mar 23, 2026
Merged

Fix issue with GCP auth and unity catalog#98456
scanhex12 merged 3 commits intomasterfrom
fix-gcs-auth-iceberg-rest-catalog

Conversation

@melvynator
Copy link
Copy Markdown
Member

Changelog category (leave one):

  • Bug Fix (user-visible misbehavior in an official stable release)

Changelog entry (a user-readable short description of the changes that goes into CHANGELOG.md):

Fix a bug when using Unity catalog on top of GCS

Documentation entry for user-facing changes

  • Documentation is written (mandatory for new features)

@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Mar 2, 2026

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


Melvyn Peignon seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

@clickhouse-gh
Copy link
Copy Markdown
Contributor

clickhouse-gh Bot commented Mar 2, 2026

Workflow [PR], commit [05ce6e6]

Summary:


AI Review

Summary

This PR adds GCSCredentials handling for Unity/REST catalog credential vending, updates S3 client credential refresh to support refreshed GCS bearer tokens, and validates refreshed HTTP headers before client creation. I reviewed the modified C++ paths and tests, including existing inline bot feedback; the previously reported header-injection risk is addressed in the latest patch. I did not find additional blocker/major issues.

Missing context

  • ⚠️ No CI results/log links were provided in the review request context, so runtime/compatibility verification here is based on code inspection only.

ClickHouse Rules

Item Status Notes
Deletion logging
Serialization versioning
Core-area scrutiny
No test removal
Experimental gate
No magic constants
Backward compatibility
SettingsChangesHistory.cpp
PR metadata quality
Safe rollout
Compilation time

Final Verdict

  • Status: ✅ Approve

@clickhouse-gh clickhouse-gh Bot added the pr-bugfix Pull request with bugfix, not backported by default label Mar 2, 2026
@melvynator melvynator requested a review from scanhex12 March 2, 2026 02:37
Copy link
Copy Markdown
Member

@scanhex12 scanhex12 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

secret_access_key = s3_creds->getSecretAccessKey();
session_token = s3_creds->getSessionToken();
LOG_DEBUG(getLogger("getClient"), "Got new S3 access tokens");
}
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let's throw an exception in other cases

@bacek
Copy link
Copy Markdown
Contributor

bacek commented Mar 17, 2026

I tested it with GCP/Polaris combo. There are a lot of exceptions and retries. It does work after retries.

:) SELECT entity_id FROM "beta_neara"."geodata.d85GAP8R2KEW.trees";

SELECT entity_id
FROM beta_neara.`geodata.d85GAP8R2KEW.trees`

Query id: ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d

[sunburst] 2026.03.18 09:28:22.059979 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> executeQuery: (from 0.0.0.0:0, user: ) (query 1, line 1) SELECT entity_id FROM "beta_neara"."geodata.d85GAP8R2KEW.trees"; (stage: Complete)
[sunburst] 2026.03.18 09:28:22.060056 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> CancellationChecker: Did not add the task because the timeout is 0, query_id: ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d
[sunburst] 2026.03.18 09:28:22.060185 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> RestCatalog(neara): Checking table trees in namespace geodata.d85GAP8R2KEW
[sunburst] 2026.03.18 09:28:22.060216 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> RestCatalog(neara): Requesting: https://iceberg.beta.sce.neara.com/api/catalog/v1/neara/namespaces/geodata%1Fd85GAP8R2KEW/tables/trees
[sunburst] 2026.03.18 09:28:22.353698 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> RestCatalog(neara): Received metadata for table trees: {"metadata-location":"gs://com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json","metadata":{"format-version":2,"table-uuid":"e0c535d5-4067-4c7d-89d2-b32bb81bce3b","location":"gs://com-neara-us-west1-sce
...
[sunburst] 2026.03.18 09:28:22.353915 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> TableMetadata: Parsed location without path: gs://com-neara-us-west1-sce-beta-datalake-neara, path: geodata/d85GAP8R2KEW/trees
[sunburst] 2026.03.18 09:28:22.353928 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> RestCatalog(neara): Location for table trees: gs://com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees
[sunburst] 2026.03.18 09:28:22.353994 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> RestCatalog(neara): Using GCS OAuth2 token for location gs://com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees
[sunburst] 2026.03.18 09:28:22.354046 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> DatabaseDataLake(beta_neara): Table endpoint gs://com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees
[sunburst] 2026.03.18 09:28:22.354059 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> DatabaseDataLake(beta_neara): Getting credentials
[sunburst] 2026.03.18 09:28:22.354067 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> DatabaseDataLake(beta_neara): Has credentials
[sunburst] 2026.03.18 09:28:22.354079 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> DatabaseDataLake(beta_neara): Using table endpoint: gs://com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees
[sunburst] 2026.03.18 09:28:22.355756 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3Client: Provider type: GCS
[sunburst] 2026.03.18 09:28:22.355768 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3Client: Client configured with s3_retry_attempts: 500
[sunburst] 2026.03.18 09:28:22.355776 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3Client: API mode of the S3 client: GCS
[sunburst] 2026.03.18 09:28:22.355782 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3Client: S3 client initialized with s3_retry_attempts: 500
[sunburst] 2026.03.18 09:28:22.355788 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3Client: S3 client: slowing down threads on retryable errors is disabled
[sunburst] 2026.03.18 09:28:22.355854 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> StorageIcebergS3(beta_neara.`geodata.d85GAP8R2KEW.trees`): StorageObjectStorage: lazy_init=true, need_resolve_columns_or_format=false, need_resolve_sample_path=false, is_table_function=true, is_datalake_query=true, columns_in_table_or_function_definition=columns format version: 1
31 columns:
`entity_id` String
`location` String
`location_3857` String
`f_I_love_trees` Nullable(String)
`f_SRID` Nullable(String)
`f_area` Nullable(Float64)
`f_average_veg_height` Nullable(Float64)
`f_centroid_lat` Nullable(Float64)
`f_centroid_lon` Nullable(Float64)
`f_centroid_x` Nullable(Float64)
`f_centroid_y` Nullable(Float64)
`f_centroid_z` Nullable(Float64)
`f_circle_radius` Nullable(Float64)
`f_highest_point_lat` Nullable(Float64)
`f_highest_point_lon` Nullable(Float64)
`f_highest_point_x` Nullable(Float64)
`f_highest_point_y` Nullable(Float64)
`f_highest_point_z` Nullable(Float64)
`f_max_veg_height` Nullable(Float64)
`f_min_circle_radius` Nullable(Float64)
`f_min_circle_x` Nullable(Float64)
`f_min_circle_y` Nullable(Float64)
`f_oldest_gps_datetime` Nullable(String)
`f_oldest_gps_time` Nullable(Float64)
`f_test_party` Nullable(String)
`f_trunk_lat` Nullable(Float64)
`f_trunk_lon` Nullable(Float64)
`f_trunk_top_height` Nullable(Float64)
`f_trunk_x` Nullable(Float64)
`f_trunk_y` Nullable(Float64)
`f_veg_item` Nullable(String)

[sunburst] 2026.03.18 09:28:22.355976 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> IcebergMetadata: Explicit metadata file path is specified metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, will read from this metadata file
[sunburst] 2026.03.18 09:28:22.355994 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> IcebergMetadata: Latest metadata file path is geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, version 1
[sunburst] 2026.03.18 09:28:22.356096 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> AWSClient: Make S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, aws sdk attempt: 1, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:23.009892 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Failed to make request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json: Poco::Exception. Code: 1000, e.code() = 0, No message received, Stack trace (when copying this message, always include the lines below):

0. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__exception/exception.h:113:14: Poco::IOException::IOException(int) @ 0x00000000269c56ee
1. /home/bacek/src/ClickHouse/base/poco/Net/src/NetException.cpp:26:1: Poco::Net::NoMessageException::NoMessageException(int) @ 0x0000000026a5c689
2. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPResponse.cpp:246:23: Poco::Net::HTTPResponse::read(std::basic_istream<char, std::char_traits<char>>&) @ 0x0000000026a4780b
3. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPClientSession.cpp:360:14: Poco::Net::HTTPClientSession::receiveResponse(Poco::Net::HTTPResponse&) @ 0x0000000026a36d1f
4. /home/bacek/src/ClickHouse/src/Common/HTTPConnectionPool.cpp:437:46: DB::EndpointConnectionPool<Poco::Net::HTTPSClientSession>::PooledConnection::receiveResponse(Poco::Net::HTTPResponse&) @ 0x0000000016aead12
5. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:615:52: DB::S3::PocoHTTPClient::makeRequestInternalImpl(Aws::Http::HttpRequest&, std::shared_ptr<DB::S3::PocoHTTPResponse>&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016ac2f2b
6. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:239:9: DB::S3::PocoHTTPClient::MakeRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016abfc46
7. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x0000000026f78979
8. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:592:25: Aws::Client::AWSClient::AttemptOneRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::AmazonWebServiceRequest const&, char const*, char const*, char const*) const @ 0x0000000026f762bf
9. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:289:19: Aws::Client::AWSClient::AttemptExhaustively(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f71ed4
10. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSXmlClient.cpp:106:48: Aws::Client::AWSXMLClient::MakeRequest(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f8178b
11. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSXmlClient.cpp:73:12: Aws::Client::AWSXMLClient::MakeRequest(Aws::AmazonWebServiceRequest const&, Aws::Endpoint::AWSEndpoint const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f816f1
12. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2969:32: Aws::Utils::Outcome<Aws::S3::Model::HeadObjectResult, Aws::S3::S3Error> std::__function::__policy_func<Aws::Utils::Outcome<Aws::S3::Model::HeadObjectResult, Aws::S3::S3Error> ()>::__call_func[abi:se210105]<Aws::S3::S3Client::HeadObject(Aws::S3::Model::HeadObjectRequest const&) const::$_0>(std::__function::__policy_storage const*) @ 0x00000000270e1870
13. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x00000000270549c9
14. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2953:10: Aws::S3::S3Client::HeadObject(Aws::S3::Model::HeadObjectRequest const&) const @ 0x0000000027053636
15. /home/bacek/src/ClickHouse/src/IO/S3/Client.cpp:430:19: DB::S3::Client::HeadObject(DB::S3::HeadObjectRequest&) const @ 0x0000000016a5fc70
16. /home/bacek/src/ClickHouse/src/IO/S3/getObjectInfo.cpp:46:23: DB::S3::(anonymous namespace)::tryGetObjectInfo(DB::S3::Client const&, String const&, String const&, String const&, bool, bool) @ 0x000000001ad2dc71
17. /home/bacek/src/ClickHouse/src/IO/S3/getObjectInfo.cpp:177:33: DB::S3::getObjectInfo(DB::S3::Client const&, String const&, String const&, String const&, bool, bool) @ 0x000000001ad2e01c
18. /home/bacek/src/ClickHouse/src/Disks/DiskObjectStorage/ObjectStorages/S3/S3ObjectStorage.cpp:466:23: DB::S3ObjectStorage::getObjectMetadata(String const&, bool) const @ 0x000000001afea4ec
19. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/StorageObjectStorageSource.cpp:776:48: DB::createReadBuffer(DB::RelativePathWithMetadata&, std::shared_ptr<DB::IObjectStorage> const&, std::shared_ptr<DB::Context const> const&, std::shared_ptr<Poco::Logger> const&, std::optional<DB::ReadSettings> const&) @ 0x000000001acf574b
20. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/Utils.cpp:422:27: DB::Iceberg::getMetadataJSONObject(String const&, std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<Poco::Logger>, DB::CompressionMethod, std::optional<String> const&)::$_0::operator()() const @ 0x000000001aee141f
21. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/Utils.cpp:440:29: DB::Iceberg::getMetadataJSONObject(String const&, std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<Poco::Logger>, DB::CompressionMethod, std::optional<String> const&) @ 0x000000001aee0a21
22. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/IcebergMetadata.cpp:154:11: DB::IcebergMetadata::initializePersistentTableComponents(std::shared_ptr<DB::StorageObjectStorageConfiguration>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const>) @ 0x000000001ae1a16a
23. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/IcebergMetadata.cpp:204:29: DB::IcebergMetadata::IcebergMetadata(std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::StorageObjectStorageConfiguration>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<DB::IcebergMetadataFilesCache>) @ 0x000000001ae1ba0e
24. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__memory/unique_ptr.h:773:30: DB::IcebergMetadata::create(std::shared_ptr<DB::IObjectStorage> const&, std::weak_ptr<DB::StorageObjectStorageConfiguration> const&, std::shared_ptr<DB::Context const> const&) @ 0x000000001ae24fe7
25. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/DataLakeConfiguration.h:102:28: DB::DataLakeConfiguration<DB::StorageS3Configuration, DB::IcebergMetadata>::update(std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::Context const>, bool) @ 0x0000000018e17db6
26. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/StorageObjectStorage.cpp:363:20: DB::StorageObjectStorage::updateExternalDynamicMetadataIfExists(std::shared_ptr<DB::Context const>) @ 0x000000001aca7077
27. /home/bacek/src/ClickHouse/src/Analyzer/Resolve/IdentifierResolver.cpp:205:14: DB::IdentifierResolver::tryResolveTableIdentifier(DB::Identifier const&, std::shared_ptr<DB::Context const> const&) @ 0x000000001be3dbdb
28. /home/bacek/src/ClickHouse/src/Analyzer/Resolve/IdentifierResolver.cpp:216:23: DB::IdentifierResolver::tryResolveTableIdentifierFromDatabaseCatalog(DB::Identifier const&, std::shared_ptr<DB::Context const> const&) @ 0x000000001be3e11d
29. /home/bacek/src/ClickHouse/src/Analyzer/Resolve/QueryAnalyzer.cpp:1391:26: DB::QueryAnalyzer::tryResolveIdentifier(DB::IdentifierLookup const&, DB::IdentifierResolveScope&, DB::IdentifierResolveContext) @ 0x000000001bbaa1d1
30. /home/bacek/src/ClickHouse/src/Analyzer/Resolve/QueryAnalyzer.cpp:3452:56: DB::QueryAnalyzer::initializeQueryJoinTreeNode(std::shared_ptr<DB::IQueryTreeNode>&, DB::IdentifierResolveScope&) @ 0x000000001bbba897
31. /home/bacek/src/ClickHouse/src/Analyzer/Resolve/QueryAnalyzer.cpp:4885:5: DB::QueryAnalyzer::resolveQuery(std::shared_ptr<DB::IQueryTreeNode> const&, DB::IdentifierResolveScope&) @ 0x000000001bb962a4
 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.009966 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3ClientRetryStrategy: Attempt 1/501 failed with retryable error: 18446744073709551615, Poco::Exception. Code: 1000, e.code() = 0, No message received (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.009984 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> S3ClientRetryStrategy: Next retry in 25 ms
[sunburst] 2026.03.18 09:28:23.035116 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Retrying S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, aws sdk attempt: 2, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:23.035383 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Failed to make request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json: Poco::Exception. Code: 1000, e.code() = 101, Net Exception: Network is unreachable: [2404:6800:4006:802::201b]:443, Stack trace (when copying this message, always include the lines below):

0. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__exception/exception.h:113:14: Poco::Exception::Exception(String const&, String const&, int) @ 0x00000000269bd479
1. /home/bacek/src/ClickHouse/base/poco/Foundation/src/Exception.cpp:174:1: Poco::IOException::IOException(String const&, String const&, int) @ 0x00000000269c5809
2. /home/bacek/src/ClickHouse/base/poco/Net/src/NetException.cpp:26:1: Poco::Net::NetException::NetException(String const&, String const&, int) @ 0x0000000026a5a309
3. /home/bacek/src/ClickHouse/base/poco/Net/src/SocketImpl.cpp:1077:9: Poco::Net::SocketImpl::error(int, String const&) @ 0x0000000026a6a857
4. /home/bacek/src/ClickHouse/base/poco/Net/src/SocketImpl.cpp:136:5: Poco::Net::SocketImpl::connect(Poco::Net::SocketAddress const&, Poco::Timespan const&) @ 0x0000000026a6b472
5. /home/bacek/src/ClickHouse/base/poco/NetSSL_OpenSSL/src/SecureSocketImpl.cpp:141:12: Poco::Net::SecureSocketImpl::connect(Poco::Net::SocketAddress const&, Poco::Timespan const&, bool) @ 0x0000000026a8765d
6. /home/bacek/src/ClickHouse/base/poco/NetSSL_OpenSSL/src/SecureStreamSocketImpl.cpp:99:8: Poco::Net::SecureStreamSocketImpl::connect(Poco::Net::SocketAddress const&, Poco::Timespan const&) @ 0x0000000026a8b8a2
7. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPSession.cpp:239:10: Poco::Net::HTTPSession::connect(Poco::Net::SocketAddress const&) @ 0x0000000026a49797
8. /home/bacek/src/ClickHouse/base/poco/NetSSL_OpenSSL/src/HTTPSClientSession.cpp:182:16: Poco::Net::HTTPSClientSession::connect(Poco::Net::SocketAddress const&) @ 0x0000000026a79509
9. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPClientSession.cpp:474:13: Poco::Net::HTTPClientSession::reconnect(unsigned long*) @ 0x0000000026a37343
10. /home/bacek/src/ClickHouse/src/Common/HTTPConnectionPool.cpp:528:22: DB::EndpointConnectionPool<Poco::Net::HTTPSClientSession>::prepareNewConnection(DB::ConnectionTimeouts const&, unsigned long*) @ 0x0000000016ae9226
11. /home/bacek/src/ClickHouse/src/Common/HTTPConnectionPool.cpp:616:16: DB::EndpointConnectionPool<Poco::Net::HTTPSClientSession>::getConnection(DB::ConnectionTimeouts const&, unsigned long*) @ 0x0000000016ae8601
12. /home/bacek/src/ClickHouse/src/IO/HTTPCommon.cpp:58:29: DB::makeHTTPSession(DB::HTTPConnectionGroupType, Poco::URI const&, DB::ConnectionTimeouts const&, DB::ProxyConfiguration const&, unsigned long*) @ 0x0000000016ae3349
13. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:524:28: DB::S3::PocoHTTPClient::makeRequestInternalImpl(Aws::Http::HttpRequest&, std::shared_ptr<DB::S3::PocoHTTPResponse>&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016ac1c9c
14. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:239:9: DB::S3::PocoHTTPClient::MakeRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016abfc46
15. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x0000000026f78979
16. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:592:25: Aws::Client::AWSClient::AttemptOneRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::AmazonWebServiceRequest const&, char const*, char const*, char const*) const @ 0x0000000026f762bf
17. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:289:19: Aws::Client::AWSClient::AttemptExhaustively(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f71ed4
18. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSXmlClient.cpp:106:48: Aws::Client::AWSXMLClient::MakeRequest(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f8178b
19. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSXmlClient.cpp:73:12: Aws::Client::AWSXMLClient::MakeRequest(Aws::AmazonWebServiceRequest const&, Aws::Endpoint::AWSEndpoint const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f816f1
20. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2969:32: Aws::Utils::Outcome<Aws::S3::Model::HeadObjectResult, Aws::S3::S3Error> std::__function::__policy_func<Aws::Utils::Outcome<Aws::S3::Model::HeadObjectResult, Aws::S3::S3Error> ()>::__call_func[abi:se210105]<Aws::S3::S3Client::HeadObject(Aws::S3::Model::HeadObjectRequest const&) const::$_0>(std::__function::__policy_storage const*) @ 0x00000000270e1870
21. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x00000000270549c9
22. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2953:10: Aws::S3::S3Client::HeadObject(Aws::S3::Model::HeadObjectRequest const&) const @ 0x0000000027053636
23. /home/bacek/src/ClickHouse/src/IO/S3/Client.cpp:430:19: DB::S3::Client::HeadObject(DB::S3::HeadObjectRequest&) const @ 0x0000000016a5fc70
24. /home/bacek/src/ClickHouse/src/IO/S3/getObjectInfo.cpp:46:23: DB::S3::(anonymous namespace)::tryGetObjectInfo(DB::S3::Client const&, String const&, String const&, String const&, bool, bool) @ 0x000000001ad2dc71
25. /home/bacek/src/ClickHouse/src/IO/S3/getObjectInfo.cpp:177:33: DB::S3::getObjectInfo(DB::S3::Client const&, String const&, String const&, String const&, bool, bool) @ 0x000000001ad2e01c
26. /home/bacek/src/ClickHouse/src/Disks/DiskObjectStorage/ObjectStorages/S3/S3ObjectStorage.cpp:466:23: DB::S3ObjectStorage::getObjectMetadata(String const&, bool) const @ 0x000000001afea4ec
27. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/StorageObjectStorageSource.cpp:776:48: DB::createReadBuffer(DB::RelativePathWithMetadata&, std::shared_ptr<DB::IObjectStorage> const&, std::shared_ptr<DB::Context const> const&, std::shared_ptr<Poco::Logger> const&, std::optional<DB::ReadSettings> const&) @ 0x000000001acf574b
28. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/Utils.cpp:422:27: DB::Iceberg::getMetadataJSONObject(String const&, std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<Poco::Logger>, DB::CompressionMethod, std::optional<String> const&)::$_0::operator()() const @ 0x000000001aee141f
29. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/Utils.cpp:440:29: DB::Iceberg::getMetadataJSONObject(String const&, std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<Poco::Logger>, DB::CompressionMethod, std::optional<String> const&) @ 0x000000001aee0a21
30. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/IcebergMetadata.cpp:154:11: DB::IcebergMetadata::initializePersistentTableComponents(std::shared_ptr<DB::StorageObjectStorageConfiguration>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const>) @ 0x000000001ae1a16a
31. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/IcebergMetadata.cpp:204:29: DB::IcebergMetadata::IcebergMetadata(std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::StorageObjectStorageConfiguration>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<DB::IcebergMetadataFilesCache>) @ 0x000000001ae1ba0e
 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.035412 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3ClientRetryStrategy: Attempt 2/501 failed with retryable error: 18446744073709551615, Poco::Exception. Code: 1000, e.code() = 101, Net Exception: Network is unreachable: [2404:6800:4006:802::201b]:443 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.035426 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> S3ClientRetryStrategy: Next retry in 50 ms
[sunburst] 2026.03.18 09:28:23.085524 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Retrying S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, aws sdk attempt: 3, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:23.386220 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3ClientRetryStrategy: Attempt 3/501 succeeded with response code 200, last error: 18446744073709551615, Poco::Exception. Code: 1000, e.code() = 101, Net Exception: Network is unreachable: [2404:6800:4006:802::201b]:443 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.386318 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> IcebergMetadata: Downloading object geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json of size 3732 with initial prefetch (buffer size: 3732)
[sunburst] 2026.03.18 09:28:23.386351 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> AsynchronousBoundedReadBuffer: Using buffer size 3732 while reading com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json
[sunburst] 2026.03.18 09:28:23.386512 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> AWSClient: Make S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, aws sdk attempt: 1, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:23.901871 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Failed to make request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json: Poco::Exception. Code: 1000, e.code() = 0, No message received, Stack trace (when copying this message, always include the lines below):

0. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__exception/exception.h:113:14: Poco::IOException::IOException(int) @ 0x00000000269c56ee
1. /home/bacek/src/ClickHouse/base/poco/Net/src/NetException.cpp:26:1: Poco::Net::NoMessageException::NoMessageException(int) @ 0x0000000026a5c689
2. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPResponse.cpp:246:23: Poco::Net::HTTPResponse::read(std::basic_istream<char, std::char_traits<char>>&) @ 0x0000000026a4780b
3. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPClientSession.cpp:360:14: Poco::Net::HTTPClientSession::receiveResponse(Poco::Net::HTTPResponse&) @ 0x0000000026a36d1f
4. /home/bacek/src/ClickHouse/src/Common/HTTPConnectionPool.cpp:437:46: DB::EndpointConnectionPool<Poco::Net::HTTPSClientSession>::PooledConnection::receiveResponse(Poco::Net::HTTPResponse&) @ 0x0000000016aead12
5. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:615:52: DB::S3::PocoHTTPClient::makeRequestInternalImpl(Aws::Http::HttpRequest&, std::shared_ptr<DB::S3::PocoHTTPResponse>&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016ac2f2b
6. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:239:9: DB::S3::PocoHTTPClient::MakeRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016abfc46
7. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x0000000026f78979
8. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:592:25: Aws::Client::AWSClient::AttemptOneRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::AmazonWebServiceRequest const&, char const*, char const*, char const*) const @ 0x0000000026f762bf
9. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:289:19: Aws::Client::AWSClient::AttemptExhaustively(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f71ed4
10. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:710:47: Aws::Client::AWSClient::MakeRequestWithUnparsedResponse(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f78f3f
11. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:760:12: Aws::Client::AWSClient::MakeRequestWithUnparsedResponse(Aws::AmazonWebServiceRequest const&, Aws::Endpoint::AWSEndpoint const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f7946e
12. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2502:31: Aws::Utils::Outcome<Aws::S3::Model::GetObjectResult, Aws::S3::S3Error> std::__function::__policy_func<Aws::Utils::Outcome<Aws::S3::Model::GetObjectResult, Aws::S3::S3Error> ()>::__call_func[abi:se210105]<Aws::S3::S3Client::GetObject(Aws::S3::Model::GetObjectRequest const&) const::$_0>(std::__function::__policy_storage const*) @ 0x00000000270d7e6d
13. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x000000002703eb49
14. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2486:10: Aws::S3::S3Client::GetObject(Aws::S3::Model::GetObjectRequest const&) const @ 0x000000002703d7b6
15. /home/bacek/src/ClickHouse/src/IO/S3/Client.cpp:517:75: std::__invoke_result_impl<void, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0, DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&>::type DB::S3::Client::doRequest<DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0>(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0) const @ 0x0000000016a65bc2
16. /home/bacek/src/ClickHouse/src/IO/S3/Client.cpp:517:9: DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const @ 0x0000000016a65067
17. /home/bacek/src/ClickHouse/src/IO/ReadBufferFromS3.cpp:509:60: DB::ReadBufferFromS3::sendRequest(unsigned long, unsigned long, std::optional<unsigned long>) const @ 0x000000001ad27e84
18. /home/bacek/src/ClickHouse/src/IO/ReadBufferFromS3.cpp:469:24: DB::ReadBufferFromS3::initialize(unsigned long) @ 0x000000001ad26083
19. /home/bacek/src/ClickHouse/src/IO/ReadBufferFromS3.cpp:160:24: DB::ReadBufferFromS3::nextImpl() @ 0x000000001ad24ef1
20. /home/bacek/src/ClickHouse/src/IO/ReadBuffer.cpp:96:15: DB::ReadBuffer::next() @ 0x000000001678eec5
21. /home/bacek/src/ClickHouse/src/Disks/IO/ThreadPoolRemoteFSReader.cpp:164:25: DB::ThreadPoolRemoteFSReader::execute(DB::IAsynchronousReader::Request, bool) @ 0x000000001abdefba
22. /home/bacek/src/ClickHouse/src/Disks/IO/ThreadPoolRemoteFSReader.cpp:123:12: DB::ThreadPoolRemoteFSReader::execute(DB::IAsynchronousReader::Request) @ 0x000000001abdf610
23. /home/bacek/src/ClickHouse/src/Disks/IO/AsynchronousBoundedReadBuffer.cpp:144:19: DB::AsynchronousBoundedReadBuffer::readSync(char*, unsigned long) @ 0x000000001ad326d7
24. /home/bacek/src/ClickHouse/src/Disks/IO/AsynchronousBoundedReadBuffer.cpp:268:22: DB::AsynchronousBoundedReadBuffer::nextImpl() @ 0x000000001ad33424
25. /home/bacek/src/ClickHouse/src/IO/ReadBuffer.cpp:96:15: DB::ReadBuffer::next() @ 0x000000001678eec5
26. /home/bacek/src/ClickHouse/src/IO/ReadBuffer.h:81:38: void DB::readJSONObjectOrArrayPossiblyInvalid<String, void, (char)123, (char)125>(String&, DB::ReadBuffer&) @ 0x00000000167a2e33
27. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/Utils.cpp:431:9: DB::Iceberg::getMetadataJSONObject(String const&, std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<Poco::Logger>, DB::CompressionMethod, std::optional<String> const&)::$_0::operator()() const @ 0x000000001aee146e
28. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/Utils.cpp:440:29: DB::Iceberg::getMetadataJSONObject(String const&, std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<Poco::Logger>, DB::CompressionMethod, std::optional<String> const&) @ 0x000000001aee0a21
29. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/IcebergMetadata.cpp:154:11: DB::IcebergMetadata::initializePersistentTableComponents(std::shared_ptr<DB::StorageObjectStorageConfiguration>, std::shared_ptr<DB::IcebergMetadataFilesCache>, std::shared_ptr<DB::Context const>) @ 0x000000001ae1a16a
30. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/DataLakes/Iceberg/IcebergMetadata.cpp:204:29: DB::IcebergMetadata::IcebergMetadata(std::shared_ptr<DB::IObjectStorage>, std::shared_ptr<DB::StorageObjectStorageConfiguration>, std::shared_ptr<DB::Context const> const&, std::shared_ptr<DB::IcebergMetadataFilesCache>) @ 0x000000001ae1ba0e
31. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__memory/unique_ptr.h:773:30: DB::IcebergMetadata::create(std::shared_ptr<DB::IObjectStorage> const&, std::weak_ptr<DB::StorageObjectStorageConfiguration> const&, std::shared_ptr<DB::Context const> const&) @ 0x000000001ae24fe7
 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.901933 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3ClientRetryStrategy: Attempt 1/501 failed with retryable error: 18446744073709551615, Poco::Exception. Code: 1000, e.code() = 0, No message received (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.901947 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> S3ClientRetryStrategy: Next retry in 25 ms
[sunburst] 2026.03.18 09:28:23.927072 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Retrying S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, aws sdk attempt: 2, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:23.962646 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Failed to make request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json: Poco::Exception. Code: 1000, e.code() = 101, Net Exception: Network is unreachable: [2404:6800:4006:813::201b]:443, Stack trace (when copying this message, always include the lines below):

0. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__exception/exception.h:113:14: Poco::Exception::Exception(String const&, String const&, int) @ 0x00000000269bd479
1. /home/bacek/src/ClickHouse/base/poco/Foundation/src/Exception.cpp:174:1: Poco::IOException::IOException(String const&, String const&, int) @ 0x00000000269c5809
2. /home/bacek/src/ClickHouse/base/poco/Net/src/NetException.cpp:26:1: Poco::Net::NetException::NetException(String const&, String const&, int) @ 0x0000000026a5a309
3. /home/bacek/src/ClickHouse/base/poco/Net/src/SocketImpl.cpp:1077:9: Poco::Net::SocketImpl::error(int, String const&) @ 0x0000000026a6a857
4. /home/bacek/src/ClickHouse/base/poco/Net/src/SocketImpl.cpp:136:5: Poco::Net::SocketImpl::connect(Poco::Net::SocketAddress const&, Poco::Timespan const&) @ 0x0000000026a6b472
5. /home/bacek/src/ClickHouse/base/poco/NetSSL_OpenSSL/src/SecureSocketImpl.cpp:141:12: Poco::Net::SecureSocketImpl::connect(Poco::Net::SocketAddress const&, Poco::Timespan const&, bool) @ 0x0000000026a8765d
6. /home/bacek/src/ClickHouse/base/poco/NetSSL_OpenSSL/src/SecureStreamSocketImpl.cpp:99:8: Poco::Net::SecureStreamSocketImpl::connect(Poco::Net::SocketAddress const&, Poco::Timespan const&) @ 0x0000000026a8b8a2
7. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPSession.cpp:239:10: Poco::Net::HTTPSession::connect(Poco::Net::SocketAddress const&) @ 0x0000000026a49797
8. /home/bacek/src/ClickHouse/base/poco/NetSSL_OpenSSL/src/HTTPSClientSession.cpp:182:16: Poco::Net::HTTPSClientSession::connect(Poco::Net::SocketAddress const&) @ 0x0000000026a79509
9. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPClientSession.cpp:474:13: Poco::Net::HTTPClientSession::reconnect(unsigned long*) @ 0x0000000026a37343
10. /home/bacek/src/ClickHouse/src/Common/HTTPConnectionPool.cpp:528:22: DB::EndpointConnectionPool<Poco::Net::HTTPSClientSession>::prepareNewConnection(DB::ConnectionTimeouts const&, unsigned long*) @ 0x0000000016ae9226
11. /home/bacek/src/ClickHouse/src/Common/HTTPConnectionPool.cpp:616:16: DB::EndpointConnectionPool<Poco::Net::HTTPSClientSession>::getConnection(DB::ConnectionTimeouts const&, unsigned long*) @ 0x0000000016ae8601
12. /home/bacek/src/ClickHouse/src/IO/HTTPCommon.cpp:58:29: DB::makeHTTPSession(DB::HTTPConnectionGroupType, Poco::URI const&, DB::ConnectionTimeouts const&, DB::ProxyConfiguration const&, unsigned long*) @ 0x0000000016ae3349
13. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:524:28: DB::S3::PocoHTTPClient::makeRequestInternalImpl(Aws::Http::HttpRequest&, std::shared_ptr<DB::S3::PocoHTTPResponse>&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016ac1c9c
14. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:239:9: DB::S3::PocoHTTPClient::MakeRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016abfc46
15. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x0000000026f78979
16. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:592:25: Aws::Client::AWSClient::AttemptOneRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::AmazonWebServiceRequest const&, char const*, char const*, char const*) const @ 0x0000000026f762bf
17. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:289:19: Aws::Client::AWSClient::AttemptExhaustively(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f71ed4
18. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:710:47: Aws::Client::AWSClient::MakeRequestWithUnparsedResponse(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f78f3f
19. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:760:12: Aws::Client::AWSClient::MakeRequestWithUnparsedResponse(Aws::AmazonWebServiceRequest const&, Aws::Endpoint::AWSEndpoint const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f7946e
20. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2502:31: Aws::Utils::Outcome<Aws::S3::Model::GetObjectResult, Aws::S3::S3Error> std::__function::__policy_func<Aws::Utils::Outcome<Aws::S3::Model::GetObjectResult, Aws::S3::S3Error> ()>::__call_func[abi:se210105]<Aws::S3::S3Client::GetObject(Aws::S3::Model::GetObjectRequest const&) const::$_0>(std::__function::__policy_storage const*) @ 0x00000000270d7e6d
21. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x000000002703eb49
22. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2486:10: Aws::S3::S3Client::GetObject(Aws::S3::Model::GetObjectRequest const&) const @ 0x000000002703d7b6
23. /home/bacek/src/ClickHouse/src/IO/S3/Client.cpp:517:75: std::__invoke_result_impl<void, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0, DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&>::type DB::S3::Client::doRequest<DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0>(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0) const @ 0x0000000016a65bc2
24. /home/bacek/src/ClickHouse/src/IO/S3/Client.cpp:517:9: DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const @ 0x0000000016a65067
25. /home/bacek/src/ClickHouse/src/IO/ReadBufferFromS3.cpp:509:60: DB::ReadBufferFromS3::sendRequest(unsigned long, unsigned long, std::optional<unsigned long>) const @ 0x000000001ad27e84
26. /home/bacek/src/ClickHouse/src/IO/ReadBufferFromS3.cpp:469:24: DB::ReadBufferFromS3::initialize(unsigned long) @ 0x000000001ad26083
27. /home/bacek/src/ClickHouse/src/IO/ReadBufferFromS3.cpp:160:24: DB::ReadBufferFromS3::nextImpl() @ 0x000000001ad24ef1
28. /home/bacek/src/ClickHouse/src/IO/ReadBuffer.cpp:96:15: DB::ReadBuffer::next() @ 0x000000001678eec5
29. /home/bacek/src/ClickHouse/src/Disks/IO/ThreadPoolRemoteFSReader.cpp:164:25: DB::ThreadPoolRemoteFSReader::execute(DB::IAsynchronousReader::Request, bool) @ 0x000000001abdefba
30. /home/bacek/src/ClickHouse/src/Disks/IO/ThreadPoolRemoteFSReader.cpp:123:12: DB::ThreadPoolRemoteFSReader::execute(DB::IAsynchronousReader::Request) @ 0x000000001abdf610
31. /home/bacek/src/ClickHouse/src/Disks/IO/AsynchronousBoundedReadBuffer.cpp:144:19: DB::AsynchronousBoundedReadBuffer::readSync(char*, unsigned long) @ 0x000000001ad326d7
 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.962711 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3ClientRetryStrategy: Attempt 2/501 failed with retryable error: 18446744073709551615, Poco::Exception. Code: 1000, e.code() = 101, Net Exception: Network is unreachable: [2404:6800:4006:813::201b]:443 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:23.962730 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> S3ClientRetryStrategy: Next retry in 50 ms
[sunburst] 2026.03.18 09:28:24.012865 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Retrying S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, aws sdk attempt: 3, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:25.075399 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3ClientRetryStrategy: Attempt 3/501 succeeded with response code 200, last error: 18446744073709551615, Poco::Exception. Code: 1000, e.code() = 101, Net Exception: Network is unreachable: [2404:6800:4006:813::201b]:443 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:25.075676 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> IcebergMetadata: Explicit metadata file path is specified metadata/00001-4ee714ad-2793-4398-817e-1724e03c333c.metadata.json, will read from this metadata file
[sunburst] 2026.03.18 09:28:25.076353 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> DataLakeConfiguration: Built storage metadata from state with columns: columns format version: 1
31 columns:
`entity_id` String
`location` String
`location_3857` String
`f_I_love_trees` Nullable(String)
`f_SRID` Nullable(String)
`f_area` Nullable(Float64)
`f_average_veg_height` Nullable(Float64)
`f_centroid_lat` Nullable(Float64)
`f_centroid_lon` Nullable(Float64)
`f_centroid_x` Nullable(Float64)
`f_centroid_y` Nullable(Float64)
`f_centroid_z` Nullable(Float64)
`f_circle_radius` Nullable(Float64)
`f_highest_point_lat` Nullable(Float64)
`f_highest_point_lon` Nullable(Float64)
`f_highest_point_x` Nullable(Float64)
`f_highest_point_y` Nullable(Float64)
`f_highest_point_z` Nullable(Float64)
`f_max_veg_height` Nullable(Float64)
`f_min_circle_radius` Nullable(Float64)
`f_min_circle_x` Nullable(Float64)
`f_min_circle_y` Nullable(Float64)
`f_oldest_gps_datetime` Nullable(String)
`f_oldest_gps_time` Nullable(Float64)
`f_test_party` Nullable(String)
`f_trunk_lat` Nullable(Float64)
`f_trunk_lon` Nullable(Float64)
`f_trunk_top_height` Nullable(Float64)
`f_trunk_x` Nullable(Float64)
`f_trunk_y` Nullable(Float64)
`f_veg_item` Nullable(String)

[sunburst] 2026.03.18 09:28:25.076638 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> Planner: Query to stage Complete
[sunburst] 2026.03.18 09:28:25.076725 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> Planner: Query from stage FetchColumns to stage Complete
[sunburst] 2026.03.18 09:28:25.076975 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> IcebergIterator: Taken 0 position deletes file and 0 equality deletes files in iceberg iterator
[sunburst] 2026.03.18 09:28:25.103742 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> AWSClient: Make S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet, aws sdk attempt: 1, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:25.203434 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:25.303718 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:25.345794 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> StorageObjectStorageSource: Downloading object geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet of size 20493 with initial prefetch (buffer size: 20493)
[sunburst] 2026.03.18 09:28:25.345836 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> AsynchronousBoundedReadBuffer: Using buffer size 20493 while reading com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet
[sunburst] 2026.03.18 09:28:25.345866 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> StorageObjectStorageSource: Reading object 'geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet', size: 20493 bytes, with format: PARQUET
[sunburst] 2026.03.18 09:28:25.345911 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> IcebergMetadata: Constructing filter transform for equality delete, there are 0 delete files
[sunburst] 2026.03.18 09:28:25.346089 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> ReadBufferFromS3: Read S3 object. Bucket: com-neara-us-west1-sce-beta-datalake-neara, Key: geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet, Version: Latest, Range: 0-20492
[sunburst] 2026.03.18 09:28:25.346225 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> AWSClient: Make S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet, aws sdk attempt: 1, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:25.403950 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:25.504268 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:25.604497 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:25.704733 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:25.804965 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:25.853860 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Failed to make request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet: Poco::Exception. Code: 1000, e.code() = 0, No message received, Stack trace (when copying this message, always include the lines below):

0. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__exception/exception.h:113:14: Poco::IOException::IOException(int) @ 0x00000000269c56ee
1. /home/bacek/src/ClickHouse/base/poco/Net/src/NetException.cpp:26:1: Poco::Net::NoMessageException::NoMessageException(int) @ 0x0000000026a5c689
2. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPResponse.cpp:246:23: Poco::Net::HTTPResponse::read(std::basic_istream<char, std::char_traits<char>>&) @ 0x0000000026a4780b
3. /home/bacek/src/ClickHouse/base/poco/Net/src/HTTPClientSession.cpp:360:14: Poco::Net::HTTPClientSession::receiveResponse(Poco::Net::HTTPResponse&) @ 0x0000000026a36d1f
4. /home/bacek/src/ClickHouse/src/Common/HTTPConnectionPool.cpp:437:46: DB::EndpointConnectionPool<Poco::Net::HTTPSClientSession>::PooledConnection::receiveResponse(Poco::Net::HTTPResponse&) @ 0x0000000016aead12
5. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:615:52: DB::S3::PocoHTTPClient::makeRequestInternalImpl(Aws::Http::HttpRequest&, std::shared_ptr<DB::S3::PocoHTTPResponse>&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016ac2f2b
6. /home/bacek/src/ClickHouse/src/IO/S3/PocoHTTPClient.cpp:239:9: DB::S3::PocoHTTPClient::MakeRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::Utils::RateLimits::RateLimiterInterface*, Aws::Utils::RateLimits::RateLimiterInterface*) const @ 0x0000000016abfc46
7. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x0000000026f78979
8. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:592:25: Aws::Client::AWSClient::AttemptOneRequest(std::shared_ptr<Aws::Http::HttpRequest> const&, Aws::AmazonWebServiceRequest const&, char const*, char const*, char const*) const @ 0x0000000026f762bf
9. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:289:19: Aws::Client::AWSClient::AttemptExhaustively(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f71ed4
10. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:710:47: Aws::Client::AWSClient::MakeRequestWithUnparsedResponse(Aws::Http::URI const&, Aws::AmazonWebServiceRequest const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f78f3f
11. /home/bacek/src/ClickHouse/contrib/aws/src/aws-cpp-sdk-core/source/client/AWSClient.cpp:760:12: Aws::Client::AWSClient::MakeRequestWithUnparsedResponse(Aws::AmazonWebServiceRequest const&, Aws::Endpoint::AWSEndpoint const&, Aws::Http::HttpMethod, char const*, char const*, char const*) const @ 0x0000000026f7946e
12. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2502:31: Aws::Utils::Outcome<Aws::S3::Model::GetObjectResult, Aws::S3::S3Error> std::__function::__policy_func<Aws::Utils::Outcome<Aws::S3::Model::GetObjectResult, Aws::S3::S3Error> ()>::__call_func[abi:se210105]<Aws::S3::S3Client::GetObject(Aws::S3::Model::GetObjectRequest const&) const::$_0>(std::__function::__policy_storage const*) @ 0x00000000270d7e6d
13. /home/bacek/src/ClickHouse/contrib/llvm-project/libcxx/include/__functional/function.h:508:12: ? @ 0x000000002703eb49
14. /home/bacek/src/ClickHouse/contrib/aws/generated/src/aws-cpp-sdk-s3/source/S3Client.cpp:2486:10: Aws::S3::S3Client::GetObject(Aws::S3::Model::GetObjectRequest const&) const @ 0x000000002703d7b6
15. /home/bacek/src/ClickHouse/src/IO/S3/Client.cpp:517:75: std::__invoke_result_impl<void, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0, DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&>::type DB::S3::Client::doRequest<DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0>(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&, DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const::$_0) const @ 0x0000000016a65bc2
16. /home/bacek/src/ClickHouse/src/IO/S3/Client.cpp:517:9: DB::S3::Client::GetObject(DB::S3::ExtendedRequest<Aws::S3::Model::GetObjectRequest>&) const @ 0x0000000016a65067
17. /home/bacek/src/ClickHouse/src/IO/ReadBufferFromS3.cpp:509:60: DB::ReadBufferFromS3::sendRequest(unsigned long, unsigned long, std::optional<unsigned long>) const @ 0x000000001ad27e84
18. /home/bacek/src/ClickHouse/src/IO/ReadBufferFromS3.cpp:252:22: DB::ReadBufferFromS3::readBigAt(char*, unsigned long, unsigned long, std::function<bool (unsigned long)> const&) const @ 0x000000001ad26e1a
19. /home/bacek/src/ClickHouse/src/Processors/Formats/Impl/Parquet/Prefetcher.cpp:101:29: DB::Parquet::Prefetcher::readSync(char*, unsigned long, unsigned long) @ 0x0000000020b1ab92
20. /home/bacek/src/ClickHouse/src/Processors/Formats/Impl/Parquet/Reader.cpp:188:16: DB::Parquet::Reader::readFileMetaData(DB::Parquet::Prefetcher&) @ 0x0000000020b4fe59
21. /home/bacek/src/ClickHouse/src/Processors/Formats/Impl/Parquet/ReadManager.cpp:54:28: DB::Parquet::ReadManager::init(std::shared_ptr<DB::FormatParserSharedResources>, std::optional<std::vector<unsigned long, std::allocator<unsigned long>>> const&) @ 0x0000000020b2af87
22. /home/bacek/src/ClickHouse/src/Processors/Formats/Impl/ParquetV3BlockInputFormat.cpp:98:21: DB::ParquetV3BlockInputFormat::initializeIfNeeded() @ 0x000000002057e1d6
23. /home/bacek/src/ClickHouse/src/Processors/Formats/Impl/ParquetV3BlockInputFormat.cpp:122:5: DB::ParquetV3BlockInputFormat::read() @ 0x000000002057e31b
24. /home/bacek/src/ClickHouse/src/Processors/Formats/IInputFormat.cpp:33:21: DB::IInputFormat::generate() @ 0x00000000203bfd16
25. /home/bacek/src/ClickHouse/src/Processors/ISource.cpp:144:18: DB::ISource::tryGenerate() @ 0x00000000203956ea
26. /home/bacek/src/ClickHouse/src/Processors/ISource.cpp:110:26: DB::ISource::work() @ 0x00000000203953c1
27. /home/bacek/src/ClickHouse/src/Processors/Executors/ExecutionThreadContext.cpp:53:26: DB::ExecutionThreadContext::executeTask() @ 0x00000000203b1ab0
28. /home/bacek/src/ClickHouse/src/Processors/Executors/PipelineExecutor.cpp:351:26: DB::PipelineExecutor::executeStepImpl(unsigned long, DB::IAcquiredSlot*, std::atomic<bool>*) @ 0x00000000203a3bf8
29. /home/bacek/src/ClickHouse/src/Processors/Executors/PipelineExecutor.cpp:179:5: DB::PipelineExecutor::executeStep(std::atomic<bool>*) @ 0x00000000203a378d
30. /home/bacek/src/ClickHouse/src/Processors/Executors/PullingPipelineExecutor.cpp:59:20: DB::PullingPipelineExecutor::pull(DB::Chunk&) @ 0x00000000203ba9b4
31. /home/bacek/src/ClickHouse/src/Storages/ObjectStorage/StorageObjectStorageSource.cpp:339:21: DB::StorageObjectStorageSource::generate() @ 0x000000001acf0a76
 (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:25.853900 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3ClientRetryStrategy: Attempt 1/501 failed with retryable error: 18446744073709551615, Poco::Exception. Code: 1000, e.code() = 0, No message received (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:25.853914 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> S3ClientRetryStrategy: Next retry in 25 ms
[sunburst] 2026.03.18 09:28:25.879017 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> AWSClient: Retrying S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet, aws sdk attempt: 2, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:25.905191 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.005494 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.105760 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.206000 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.306188 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.406345 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.506501 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.606729 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.706952 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.807186 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.907413 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:26.986756 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Trace> S3ClientRetryStrategy: Attempt 2/501 succeeded with response code 206, last error: 18446744073709551615, Poco::Exception. Code: 1000, e.code() = 0, No message received (version 26.3.1.1)
[sunburst] 2026.03.18 09:28:27.007642 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:27.008607 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: finishRowSubgroupStage: rg=0 sg=0 stage=NotStarted step=0 rows_pass=9 rows_total=9
[sunburst] 2026.03.18 09:28:27.008616 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: addTasksToReadColumns: added OffsetIndex: i=0 step_idx=0 row_group_idx=0 row_subgroup_idx=0
[sunburst] 2026.03.18 09:28:27.008631 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: setTasksToSchedule: row_group_idx=0, stage=4, add_tasks=1
[sunburst] 2026.03.18 09:28:27.008638 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: setTasksToSchedule: 0 0 0 4 0
[sunburst] 2026.03.18 09:28:27.008649 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: setTasksToSchedule: check row group is set: 0
[sunburst] 2026.03.18 09:28:27.008669 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex memory_usage=0 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.008689 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex rg=0 can_schedule=true is_privileged=true
[sunburst] 2026.03.18 09:28:27.008712 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: want to schedule tasks rg=0, stage_tasks.size()=1
[sunburst] 2026.03.18 09:28:27.008737 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTask: schedule task.row_group_idx=0, task.row_subgroup_idx=0, task.stage=4, task.column_idx=0, task.step_idx=0
[sunburst] 2026.03.18 09:28:27.008882 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex no schedulable row groups
[sunburst] 2026.03.18 09:28:27.008916 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex scheduling 1 tasks in 2 batches
[sunburst] 2026.03.18 09:28:27.009009 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: read: delivery_queue.size()=0 first_incomplete=0 thread_pool_idle=false can_deliver=false
[sunburst] 2026.03.18 09:28:27.009073 [ 1759700 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> ReadBufferFromS3: Read S3 object. Bucket: com-neara-us-west1-sce-beta-datalake-neara, Key: geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet, Version: Latest, Range: 4-11405
[sunburst] 2026.03.18 09:28:27.009320 [ 1759700 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> AWSClient: Make S3 request to: https://storage.googleapis.com/com-neara-us-west1-sce-beta-datalake-neara/geodata/d85GAP8R2KEW/trees/data/00000-0-245366a7-1616-47ad-bedb-048cb5329b5f-00001.parquet, aws sdk attempt: 1, clickhouse attempt: 1, kind: Read
[sunburst] 2026.03.18 09:28:27.107902 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:27.208252 [ 1756026 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> LocalConnection: Executor timeout encountered, will retry
[sunburst] 2026.03.18 09:28:27.244179 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: finishRowSubgroupStage: rg=0 sg=0 stage=OffsetIndex step=0 rows_pass=9 rows_total=9
[sunburst] 2026.03.18 09:28:27.244211 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: addTasksToReadColumns: added ColumnData: i=0 step_idx=0 row_group_idx=0 row_subgroup_idx=0
[sunburst] 2026.03.18 09:28:27.244242 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: setTasksToSchedule: row_group_idx=0, stage=5, add_tasks=1
[sunburst] 2026.03.18 09:28:27.244266 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: setTasksToSchedule: 0 0 0 5 0
[sunburst] 2026.03.18 09:28:27.244289 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: setTasksToSchedule: check row group is set: 0
[sunburst] 2026.03.18 09:28:27.244310 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex memory_usage=0 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.244335 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex no schedulable row groups
[sunburst] 2026.03.18 09:28:27.244358 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex no tasks to schedule
[sunburst] 2026.03.18 09:28:27.244381 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData memory_usage=0 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.244405 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData rg=0 can_schedule=true is_privileged=true
[sunburst] 2026.03.18 09:28:27.244426 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: want to schedule tasks rg=0, stage_tasks.size()=1
[sunburst] 2026.03.18 09:28:27.244451 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTask: schedule task.row_group_idx=0, task.row_subgroup_idx=0, task.stage=5, task.column_idx=0, task.step_idx=0
[sunburst] 2026.03.18 09:28:27.244477 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData no schedulable row groups
[sunburst] 2026.03.18 09:28:27.244504 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData scheduling 1 tasks in 2 batches
[sunburst] 2026.03.18 09:28:27.244660 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: finishRowSubgroupStage: rg=0 sg=0 stage=ColumnData step=0 rows_pass=9 rows_total=9
[sunburst] 2026.03.18 09:28:27.244671 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: finishRowSubgroupStage: rg=0 sg=0 main step finished, moving to Deliver, advancing read_ptr
[sunburst] 2026.03.18 09:28:27.244680 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: finishRowSubgroupStage: rg=0 sg=0 added to delivery_queue, size=1
[sunburst] 2026.03.18 09:28:27.244687 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: finishRowSubgroupStage: rg=0 sg=0 advanced read_ptr -> 1
[sunburst] 2026.03.18 09:28:27.244696 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: finishRowSubgroupStage: rg=0 starting next subgroup, read_ptr=1 subgroups=1 delivery_ptr=0
[sunburst] 2026.03.18 09:28:27.244708 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: advanceDeliveryPtrIfNeeded: rg=0 initial_delivery_ptr=0 subgroups=1 read_ptr=1
[sunburst] 2026.03.18 09:28:27.244709 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: read: delivery_queue.size()=1 first_incomplete=0 thread_pool_idle=false can_deliver=true
[sunburst] 2026.03.18 09:28:27.244717 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData memory_usage=117 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.244725 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData no schedulable row groups
[sunburst] 2026.03.18 09:28:27.244733 [ 1759714 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData no tasks to schedule
[sunburst] 2026.03.18 09:28:27.244743 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: read: delivering task rg=0 sg=0
[sunburst] 2026.03.18 09:28:27.244762 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: finishRowSubgroupStage: rg=0 sg=0 stage=Deliver step=0 rows_pass=9 rows_total=9
[sunburst] 2026.03.18 09:28:27.244769 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: advanceDeliveryPtrIfNeeded: rg=0 initial_delivery_ptr=0 subgroups=1 read_ptr=1
[sunburst] 2026.03.18 09:28:27.244775 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: advanceDeliveryPtrIfNeeded: rg=0 advanced delivery_ptr 0 -> 1
[sunburst] 2026.03.18 09:28:27.244782 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: advanceDeliveryPtrIfNeeded: rg=0 final delivery_ptr=1 read_ptr=1
[sunburst] 2026.03.18 09:28:27.244787 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=NotStarted memory_usage=0 batches_in_progress=0 limits: mem_low=0 mem_high=0 threads=1
[sunburst] 2026.03.18 09:28:27.244793 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=NotStarted no schedulable row groups
[sunburst] 2026.03.18 09:28:27.244799 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=NotStarted no tasks to schedule
[sunburst] 2026.03.18 09:28:27.244806 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=BloomFilterHeader memory_usage=0 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.244811 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=BloomFilterHeader no schedulable row groups
[sunburst] 2026.03.18 09:28:27.244815 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=BloomFilterHeader no tasks to schedule
[sunburst] 2026.03.18 09:28:27.244822 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=BloomFilterBlocksOrDictionary memory_usage=0 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.244827 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=BloomFilterBlocksOrDictionary no schedulable row groups
[sunburst] 2026.03.18 09:28:27.244844 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=BloomFilterBlocksOrDictionary no tasks to schedule
[sunburst] 2026.03.18 09:28:27.244870 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnIndexAndOffsetIndex memory_usage=0 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.244892 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnIndexAndOffsetIndex no schedulable row groups
[sunburst] 2026.03.18 09:28:27.244915 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnIndexAndOffsetIndex no tasks to schedule
[sunburst] 2026.03.18 09:28:27.244938 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex memory_usage=0 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.244963 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex no schedulable row groups
[sunburst] 2026.03.18 09:28:27.244987 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=OffsetIndex no tasks to schedule
[sunburst] 2026.03.18 09:28:27.245007 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData memory_usage=0 batches_in_progress=0 limits: mem_low=419430 mem_high=858993459 threads=5
[sunburst] 2026.03.18 09:28:27.245028 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData no schedulable row groups
[sunburst] 2026.03.18 09:28:27.245051 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: scheduleTasksIfNeeded: stage=ColumnData no tasks to schedule
[sunburst] 2026.03.18 09:28:27.245153 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Debug> ParquetReadManager: read: delivery_queue.size()=0 first_incomplete=1 thread_pool_idle=true can_deliver=false
[sunburst] 2026.03.18 09:28:27.245348 [ 1758159 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141843188 sec. Execution time: 1.117e-05 sec. Processing time: 1.642e-05 sec. Wait time: 2.141815598 sec.
[sunburst] 2026.03.18 09:28:27.245351 [ 1758023 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141829618 sec. Execution time: 4.98e-06 sec. Processing time: 1.074e-05 sec. Wait time: 2.141813898 sec.
[sunburst] 2026.03.18 09:28:27.245352 [ 1758060 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141833218 sec. Execution time: 6.04e-06 sec. Processing time: 1.117e-05 sec. Wait time: 2.141816008 sec.
[sunburst] 2026.03.18 09:28:27.245353 [ 1758061 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141863188 sec. Execution time: 2.141808218 sec. Processing time: 2e-05 sec. Wait time: 3.497e-05 sec.
[sunburst] 2026.03.18 09:28:27.245357 [ 1758051 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141805218 sec. Execution time: 0 sec. Processing time: 0 sec. Wait time: 2.141805218 sec.
[sunburst] 2026.03.18 09:28:27.245358 [ 1758050 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141816698 sec. Execution time: 0 sec. Processing time: 0 sec. Wait time: 2.141816698 sec.
[sunburst] 2026.03.18 09:28:27.245359 [ 1756987 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141822118 sec. Execution time: 5.18e-06 sec. Processing time: 7.83e-06 sec. Wait time: 2.141809108 sec.
[sunburst] 2026.03.18 09:28:27.245360 [ 1758048 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141823718 sec. Execution time: 0 sec. Processing time: 0 sec. Wait time: 2.141823718 sec.
[sunburst] 2026.03.18 09:28:27.245361 [ 1758049 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141803558 sec. Execution time: 0 sec. Processing time: 0 sec. Wait time: 2.141803558 sec.
[sunburst] 2026.03.18 09:28:27.245362 [ 1758047 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141748948 sec. Execution time: 0 sec. Processing time: 0 sec. Wait time: 2.141748948 sec.
[sunburst] 2026.03.18 09:28:27.245365 [ 1758052 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141811708 sec. Execution time: 0 sec. Processing time: 0 sec. Wait time: 2.141811708 sec.
[sunburst] 2026.03.18 09:28:27.245406 [ 1759697 ] {ff3c3e33-fd79-4bc0-bb7b-4b1d1f5ab28d} <Test> PipelineExecutor: Thread finished. Total time: 2.141597388 sec. Execution time: 2.75e-05 sec. Processing time: 6.06e-06 sec. Wait time: 2.141563828 sec.
   ┌─entity_id────┐
1. │ DUngfS1XXnGI │
2. │ P7qH5rhWC9zf │
3. │ wDIllin612CF │
4. │ pm63zzGoI685 │
5. │ wgb5ofH43dxO │
6. │ YRZpJ33ofQYp │
7. │ QE4o92KYFX0Z │
8. │ 14NoTJtpO9JC │
9. │ 02A7MXnMUZzA │
   └──────────────┘

9 rows in set. Elapsed: 5.188 sec. 


{
access_key_id = s3_creds->getAccessKeyId();
secret_access_key = s3_creds->getSecretAccessKey();
session_token = s3_creds->getSessionToken();
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gcs_creds->getToken() comes from external catalog data and is copied into an HTTP header without header-value validation on the refresh path.

StorageS3Configuration::check validates headers parsed from AST, but this branch bypasses that path and pushes Authorization directly. If the token contains \n, it can inject extra headers.

Please validate refreshed headers before client creation, e.g. call context->getGlobalContext()->getHTTPHeaderFilter().checkAndNormalizeHeaders(headers) after replacing Authorization.

Melvyn Peignon added 3 commits March 22, 2026 21:28
- Use erase-remove idiom instead of in-place loop for Authorization header,
  fixing stale connection issues (suggested by @bacek)
- Throw BAD_ARGUMENTS exception for unrecognized credential types
  (requested by @scanhex12)
- Call checkAndNormalizeHeaders on refreshed headers before creating the
  S3 client, preventing header injection from untrusted catalog tokens
- Add unit test for GCSCredentials and header validation
@melvynator melvynator force-pushed the fix-gcs-auth-iceberg-rest-catalog branch from fc34c26 to 05ce6e6 Compare March 22, 2026 21:31
@clickhouse-gh
Copy link
Copy Markdown
Contributor

clickhouse-gh Bot commented Mar 23, 2026

LLVM Coverage Report

Metric Baseline Current Δ
Lines 83.90% 84.00% +0.10%
Functions 24.80% 24.70% -0.10%
Branches 76.50% 76.50% +0.00%

PR changed lines: PR changed-lines coverage: 60.55% (66/109, 0 noise lines excluded)
Diff coverage report
Uncovered code

@scanhex12 scanhex12 enabled auto-merge March 23, 2026 12:42
@scanhex12 scanhex12 added this pull request to the merge queue Mar 23, 2026
Merged via the queue into master with commit 940a0cf Mar 23, 2026
297 of 300 checks passed
@scanhex12 scanhex12 deleted the fix-gcs-auth-iceberg-rest-catalog branch March 23, 2026 12:57
@robot-ch-test-poll3 robot-ch-test-poll3 added the pr-synced-to-cloud The PR is synced to the cloud repo label Mar 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-bugfix Pull request with bugfix, not backported by default pr-synced-to-cloud The PR is synced to the cloud repo

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants