smallhibiscus opened a new pull request, #65766:
URL: https://github.com/apache/doris/pull/65766
### What problem does this PR solve?
Issue Number: close #xxx
Related PR: #63181
Problem Summary:
logstash-output-doris 1.2.0 hung forever on TCP half-open connections
because Future.get() and HttpAsyncClient had no timeouts. #63181 migrated to
HttpClient4 sync with NoConnectionReuseStrategy, which removes the Future.get()
hang and avoids keep-alive connection reuse, but RequestConfig still lacked
connect/socket timeouts and SO_KEEPALIVE was not enabled. Without
socketTimeout, @client.execute() can still block forever when the peer dies
mid-request.
This patch (1.2.1 -> 1.2.2):
- set connectTimeout / connectionRequestTimeout / socketTimeout on
RequestConfig
- enable SO_KEEPALIVE via SocketConfig
- expose connect_timeout_ms, connection_request_timeout_ms,
socket_timeout_ms as configurable options (defaults: 60s / 60s / 600s)
### Release note
logstash-output-doris 1.2.2: add HTTP connect/socket timeouts and
SO_KEEPALIVE to prevent worker threads hanging forever on TCP half-open
connections. New optional configs: connect_timeout_ms,
connection_request_timeout_ms, socket_timeout_ms.
### Check List (For Author)
- Test:
- Manual test / No need to test (config-only HttpClient setup; timeout
behavior matches Apache HttpClient4 RequestConfig / SocketConfig)
- Behavior changed: Yes (HTTP requests now fail with timeout instead of
hanging)
- Does this need documentation: No (README updated in this PR)
### What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
### Release note
None
### Check List (For Author)
- Test <!-- At least one of them must be included. -->
- [ ] Regression test
- [ ] Unit Test
- [ ] Manual test (add detailed scripts or steps below)
- [ ] No need to test or manual test. Explain why:
- [ ] This is a refactor/code format and no logic has been changed.
- [ ] Previous test can cover this change.
- [ ] No code files have been changed.
- [ ] Other reason <!-- Add your reason? -->
- Behavior changed:
- [ ] No.
- [ ] Yes. <!-- Explain the behavior change -->
- Does this need documentation?
- [ ] No.
- [ ] Yes. <!-- Add document PR link here. eg:
https://github.com/apache/doris-website/pull/1214 -->
### Check List (For Reviewer who merge this PR)
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label <!-- Add branch pick label that this PR should
merge into -->
--
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]