java-build fails intermittently on Maven Central 429 rate limiting

未关闭
#1,820 1 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

维护者通常 1 天内回复

@tmckayus 已经在做这个了。

开始于 2026年8月28日。

评估

这个 Issue 还没有评估数据。

描述

bug

java-build fails when Maven Central rate-limits the runner:

Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-source-plugin/3.3.1/maven-source-plugin-3.3.1.pom
[ERROR] Plugin org.apache.maven.plugins:maven-source-plugin:3.3.1 or one of its dependencies could not be resolved:
[ERROR]     Could not transfer artifact org.apache.maven.plugins:maven-source-plugin:pom:3.3.1 from/to central
            (https://repo.maven.apache.org/maven2): status code: 429, reason phrase: Too Many Requests (429)

Seen on #1778, job 98682899970. The artifact exists; the request was throttled. The build spent ~76s retrying and then failed the whole job before compiling any cuOpt code, so this fails PRs for reasons unrelated to their contents.

This will get more frequent, not less: the job runs on every PR touching test_cpp or test_java (.github/workflows/pr.yaml), every run resolves the full plugin and dependency set from Central with no local cache, and shared CI egress IPs are exactly what Central throttles.

Possible fixes

  • Cache ~/.m2/repository between runs, so a warm cache does not hit Central at all
  • Point settings.xml at an internal mirror or a caching proxy rather than Central directly
  • Configure Maven's Wagon retry/backoff (-Dmaven.wagon.http.retryHandler.count, httpconnectionManager.ttlSeconds) so a 429 is retried rather than fatal
  • Pre-populate the dependencies in the rapidsai/ci-conda image used by the job

The first two remove the dependency on Central being reachable and unthrottled on every run; the third only softens the symptom.

Reproducing

Not reliably reproducible on demand, since it depends on Central's throttling of the runner's egress IP at that moment. It shows up as an intermittent java-build failure with a 429 in the log, distinguishable from a genuine dependency problem by the status code.

主要语言
Cuda
星标
1.1k
派生
255
平均合并
1 天 22 小时
30 天内合并 PR
102

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

NVIDIA/cuopt 的其他 Issue

查看 NVIDIA/cuopt 的全部 Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。