This is an automated email from the ASF dual-hosted git repository.
kirs pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new b8bdbd47831 [improve](iceberg rest) Add a default network connection
timeout to Iceberg REST (#58395)
b8bdbd47831 is described below
commit b8bdbd47831792445e51031321174d3034b15f70
Author: zy-kkk <[email protected]>
AuthorDate: Thu Nov 27 10:47:58 2025 +0800
[improve](iceberg rest) Add a default network connection timeout to Iceberg
REST (#58395)
When the network connection to the Iceberg REST server is unavailable,
the lack of a timeout setting can lead to excessively long waiting
times. Therefore, a slightly shorter default timeout has been added, and
users can also set their own timeout.
---
.../property/metastore/IcebergRestProperties.java | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/datasource/property/metastore/IcebergRestProperties.java
b/fe/fe-core/src/main/java/org/apache/doris/datasource/property/metastore/IcebergRestProperties.java
index 245da66724b..688a268522b 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/datasource/property/metastore/IcebergRestProperties.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/datasource/property/metastore/IcebergRestProperties.java
@@ -154,6 +154,16 @@ public class IcebergRestProperties extends
AbstractIcebergProperties {
description = "The secret access key for the iceberg rest catalog
service.")
private String icebergRestSecretAccessKey = "";
+ @ConnectorProperty(names = {"iceberg.rest.connection-timeout-ms"},
+ required = false,
+ description = "Connection timeout in milliseconds for the REST
catalog HTTP client. Default: 10000 (10s).")
+ private String icebergRestConnectionTimeoutMs = "10000";
+
+ @ConnectorProperty(names = {"iceberg.rest.socket-timeout-ms"},
+ required = false,
+ description = "Socket timeout in milliseconds for the REST catalog
HTTP client. Default: 60000 (60s).")
+ private String icebergRestSocketTimeoutMs = "60000";
+
protected IcebergRestProperties(Map<String, String> props) {
super(props);
}
@@ -260,6 +270,13 @@ public class IcebergRestProperties extends
AbstractIcebergProperties {
if (isIcebergRestVendedCredentialsEnabled()) {
icebergRestCatalogProperties.put(VENDED_CREDENTIALS_HEADER,
VENDED_CREDENTIALS_VALUE);
}
+
+ if (Strings.isNotBlank(icebergRestConnectionTimeoutMs)) {
+
icebergRestCatalogProperties.put("rest.client.connection-timeout-ms",
icebergRestConnectionTimeoutMs);
+ }
+ if (Strings.isNotBlank(icebergRestSocketTimeoutMs)) {
+ icebergRestCatalogProperties.put("rest.client.socket-timeout-ms",
icebergRestSocketTimeoutMs);
+ }
}
private void addAuthenticationProperties() {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]