[
https://issues.apache.org/jira/browse/MRESOLVER-396?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tamas Cservenak updated MRESOLVER-396:
--------------------------------------
Summary: Native transport should retry on HTTP 429 (Retry-After) (was:
Native resolver should retry on http 429)
> Native transport should retry on HTTP 429 (Retry-After)
> -------------------------------------------------------
>
> Key: MRESOLVER-396
> URL: https://issues.apache.org/jira/browse/MRESOLVER-396
> Project: Maven Resolver
> Issue Type: Improvement
> Reporter: Chris Eldredge
> Assignee: Tamas Cservenak
> Priority: Minor
> Fix For: 1.9.16
>
>
> The Wagon http transport provider has custom logic to retry with exponential
> backoff when putting an artifact to an http endpoint and getting a 429 Too
> Many Requests response code from the server:
> [https://github.com/apache/maven-wagon/blob/wagon-3.5.3/wagon-providers/wagon-http-shared/src/main/java/org/apache/maven/wagon/shared/http/AbstractHttpClientWagon.java#L828]
> The newer "native" http transporter should provide similar retry logic. One
> place this could go would be into
> [HttpTransporter.implPut|[https://github.com/apache/maven-resolver/blob/master/maven-resolver-transport-http/src/main/java/org/eclipse/aether/transport/http/HttpTransporter.java#L427].|https://github.com/apache/maven-resolver/blob/master/maven-resolver-transport-http/src/main/java/org/eclipse/aether/transport/http/HttpTransporter.java#L427).]
> Ideally the transport could be configured to retry on specific error codes,
> perhaps with 429 and 503 being defaults.
> The lack of retry support on 429s is exacerbate in Maven 3.9 because it
> enables parallel put by default, which increases requests per second making
> it more likely that a client would encounter rate limiting or other
> throttling and overload scenarios.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)