[
https://issues.apache.org/jira/browse/BEAM-3026?focusedWorklogId=135890&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-135890
]
ASF GitHub Bot logged work on BEAM-3026:
----------------------------------------
Author: ASF GitHub Bot
Created on: 17/Aug/18 22:42
Start Date: 17/Aug/18 22:42
Worklog Time Spent: 10m
Work Description: aalbatross commented on issue #6146: [BEAM-3026] Adding
retrying behavior on ElasticSearchIO
URL: https://github.com/apache/beam/pull/6146#issuecomment-414005728
@echauchot
Updated the PR based on comments:
Changes are as follows :
1. Updated the design remove the common classes, used AutoValue Builder for
RetryConfiguration In ESIO,
2. RetryPredicate using Response object instead of using Throwable.
3. Removed maxDuration default in ESIO.
4. Updated the retry logic with similar logic provided in comment.
5. Explanation of using 2 in expected retries in testWriteRetry : 3 is max
attempt, which includes 1 original request and 2 retries. Updated the constants.
6. Updated java doc specific comments.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 135890)
Time Spent: 10h 10m (was: 10h)
> Improve retrying in ElasticSearch client
> ----------------------------------------
>
> Key: BEAM-3026
> URL: https://issues.apache.org/jira/browse/BEAM-3026
> Project: Beam
> Issue Type: Improvement
> Components: io-java-elasticsearch
> Reporter: Tim Robertson
> Assignee: Ravi Pathak
> Priority: Major
> Fix For: 2.7.0
>
> Time Spent: 10h 10m
> Remaining Estimate: 0h
>
> Currently an overloaded ES server will result in clients failing fast.
> I suggest implementing backoff pauses. Perhaps something like this:
> {code}
> ElasticsearchIO.ConnectionConfiguration conn =
> ElasticsearchIO.ConnectionConfiguration
> .create(new String[]{"http://...:9200"}, "test", "test")
> .retryWithWaitStrategy(WaitStrategies.exponentialBackoff(1000,
> TimeUnit.MILLISECONDS)
> .retryWithStopStrategy(StopStrategies.stopAfterAttempt(10)
> );
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)