jackye1995 commented on code in PR #5902:
URL: https://github.com/apache/iceberg/pull/5902#discussion_r985872557
##########
docs/aws.md:
##########
@@ -573,6 +573,68 @@ spark-sql --packages
org.apache.iceberg:iceberg-spark3-runtime:{{% icebergVersio
--conf
spark.sql.catalog.my_catalog.client.assume-role.region=ap-northeast-1
```
+### HTTP Client Configurations
+AWS clients support two types of HTTP Client, [URL Connection HTTP
Client](https://mvnrepository.com/artifact/software.amazon.awssdk/url-connection-client)
+and [Apache HTTP
Client](https://mvnrepository.com/artifact/software.amazon.awssdk/apache-client).
+In default, AWS clients use URL Connection HTTP Client to communicate with the
service.
+This HTTP client optimizes for minimum dependencies and startup latency but
support less functionality than other implementations.
+In contrast, Apache HTTP Client supports more functionalities and more
customized settings, such as expect-continue handshake and TCP KeepAlive, at
cost of extra dependency and additional startup latency.
+
+For more details of configuration, see sections [URL Connection HTTP Client
Configurations](#url-connection-http-client-configurations) and [Apache HTTP
Client Configurations](#apache-http-client-configurations).
+
+Configure the following property to set the type of HTTP client:
+
+| Property | Default | Description
|
+|------------------|---------------|------------------------------------------------------------------------------------------------------------|
+| http-client.type | urlconnection | Types of HTTP Client. <br/>
`urlconnection`: URL Connection HTTP Client <br/> `apache`: Apache HTTP Client |
+
+#### URL Connection HTTP Client Configurations
+
+URL Connection HTTP Client has the following configurable properties:
+
+| Property | Default | Description
|
+|-------------------------------------------------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| http-client.urlconnection.socket-timeout-ms | null | An optional
[socket
timeout](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/urlconnection/UrlConnectionHttpClient.Builder.html#socketTimeout(java.time.Duration))
in milliseconds |
+| http-client.urlconnection.connection-timeout-ms | null | An optional
[connection
timeout](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/urlconnection/UrlConnectionHttpClient.Builder.html#connectionTimeout(java.time.Duration))
in milliseconds |
+
+Here is an example to start Spark shell with URL Connection HTTP client and
some optional settings:
Review Comment:
I think this is getting redundant as we are adding a Spark shell example for
every doc section... I think we need to consolidate to a better way, any
thoughts? @JonasJ-ap @rajarshisarkar @singhpk234 @amogh-jahagirdar
##########
docs/aws.md:
##########
@@ -573,6 +573,68 @@ spark-sql --packages
org.apache.iceberg:iceberg-spark3-runtime:{{% icebergVersio
--conf
spark.sql.catalog.my_catalog.client.assume-role.region=ap-northeast-1
```
+### HTTP Client Configurations
+AWS clients support two types of HTTP Client, [URL Connection HTTP
Client](https://mvnrepository.com/artifact/software.amazon.awssdk/url-connection-client)
+and [Apache HTTP
Client](https://mvnrepository.com/artifact/software.amazon.awssdk/apache-client).
+In default, AWS clients use URL Connection HTTP Client to communicate with the
service.
+This HTTP client optimizes for minimum dependencies and startup latency but
support less functionality than other implementations.
+In contrast, Apache HTTP Client supports more functionalities and more
customized settings, such as expect-continue handshake and TCP KeepAlive, at
cost of extra dependency and additional startup latency.
+
+For more details of configuration, see sections [URL Connection HTTP Client
Configurations](#url-connection-http-client-configurations) and [Apache HTTP
Client Configurations](#apache-http-client-configurations).
+
+Configure the following property to set the type of HTTP client:
+
+| Property | Default | Description
|
+|------------------|---------------|------------------------------------------------------------------------------------------------------------|
+| http-client.type | urlconnection | Types of HTTP Client. <br/>
`urlconnection`: URL Connection HTTP Client <br/> `apache`: Apache HTTP Client |
+
+#### URL Connection HTTP Client Configurations
+
+URL Connection HTTP Client has the following configurable properties:
+
+| Property | Default | Description
|
+|-------------------------------------------------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| http-client.urlconnection.socket-timeout-ms | null | An optional
[socket
timeout](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/urlconnection/UrlConnectionHttpClient.Builder.html#socketTimeout(java.time.Duration))
in milliseconds |
+| http-client.urlconnection.connection-timeout-ms | null | An optional
[connection
timeout](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/urlconnection/UrlConnectionHttpClient.Builder.html#connectionTimeout(java.time.Duration))
in milliseconds |
+
+Here is an example to start Spark shell with URL Connection HTTP client and
some optional settings:
Review Comment:
I think this is getting redundant as we are adding a Spark shell example for
every doc section... we need to consolidate to a better way, any thoughts?
@JonasJ-ap @rajarshisarkar @singhpk234 @amogh-jahagirdar
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]