aws / aws/aws-sdk-java-v2

A way to add to the default retry policy of a client

Offen
#1,755 5 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
feature-request p3
Vorherrschende Sprache
Java
Sterne
2.6k
Forks
1k
Ø Merge
2 T. 9 Std.
Gemergte PRs (30 T.)
51

Beschreibung

## Describe the Feature

Sometimes I logically want to add a retry condition to a certain client, without changing the rest of its default retry policy, especially if it already uses a custom one like DynamoDB.

## Is your Feature Request related to a problem?

I don't seem to have a way to get at [this `DynamoDbRetryPolicy` class](https://github.com/aws/aws-sdk-java-v2/blob/master/services/dynamodb/src/main/java/software/amazon/awssdk/services/dynamodb/DynamoDbRetryPolicy.java#L32-L33), for example, because it's marked as an internal API. Furthermore, I need to look at the SDK source code to even see which retry policy I should be aiming to modify or copy.

## Proposed Solution

Not sure, maybe provide some sort of builder method that gives me access to the default value I'd be overriding?

## Describe alternatives you've considered

Reflection to get at the internal class, but then it can break from commits [like this](https://github.com/aws/aws-sdk-java-v2/commit/8336dc22780e504f2136dbc273234fa72a915318).

## Additional Context

N/A

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, die im Issue verlinkte Klasse DynamoDbRetryPolicy und den SDK-Quellcode für die Standardkonfiguration der Retry-Policy des Clients zu lesen. Vergleiche, wie bestehende benutzerdefinierte Policies verfügbar gemacht werden, und definiere anschließend einen Ansatz, mit dem ein Client eine Retry-Bedingung ohne Reflection oder Änderungen an anderen Defaults hinzufügen kann; als erledigt gilt die Aufgabe, wenn die öffentliche API und ihr Verhalten klar sind.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
aws, java
Bereich
api, backend
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
30/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.