Bug Report: JaCoCo coverage uploads failing

オープン
#988 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
8/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
android, java
領域
ci-cd

調査の方向性

This is a server-side Codecov processing failure, and the repo (codecov/feedback) holds no code to change. The useful starting point is the reproduction table and the five upload IDs from commit b8ad1070, which the maintainers would have to look up in backend logs. A newcomer cannot confirm a fix from this repo. Done means Codecov reports a processing error reason for those uploads, or JaCoCo uploads merge again.

索引モデルが issue の本文から書いたものです。

説明

Describe the bug
Since 2026-10-16 (first error 08:57 UTC; last successful JaCoCo upload 2026-10-15 19:41 UTC), every JaCoCo XML coverage upload for github/DrewBrunning/mycorrhizal-crm ends in upload state error, with no error detail in the API or UI. The CLI accepts and queues the upload (status_code=200, error=None, warnings=[]), then processing fails. Because no upload on those commits processes, Codecov creates no codecov/patch/* check runs, so PRs that only produce Android/JaCoCo coverage are blocked on required checks. The commit page shows: "No coverage data is available due to incomplete uploads on the first attempt."

Go coverprofile and lcov uploads on the same repo, token and commits keep processing normally. The status page shows no ongoing incident.

Environment

  • System: CI, GitHub Actions ubuntu-latest
  • codecov/codecov-action@303a32d7a59b442fa8d48b6a1cc6825c09c847a5 (v7.1.1), Codecov CLI v11.3.1 (linux:latest)
  • Report: Gradle's aggregated JaCoCo XML report (JaCoCo 0.8.12, unchanged since before the failures); about 6.6 MB, 51 packages, 528 source files
  • Public repo, upload token auth, no Codecov config change around the time it started

To Reproduce
Isolated it on a throwaway PR, https://github.com/DrewBrunning/mycorrhizal-crm/pull/1748 (each step is a fresh commit, so each upload is a first attempt). Every JaCoCo variant errors; only the lcov conversion of the same data merges:

Commit Upload(s) State
d3266501581129827c9d9630e1690bf287133cd5 Control: comment-only change, full JaCoCo report, flag android error
13d92340293199b80f160efc91cc18cd9c44de16 Same, disable_search: true (bundle is the JaCoCo XML only) error
a3f55c6b3a390746d402d6e3c84fdb39d7d38a2c Same, use_legacy_upload_endpoint: true upload never appears on the commit
b8ad1070b92405ce8cfc359f8ac7957705957a4f 5 named uploads: full report; full report re-serialized without the DOCTYPE; first half of packages; second half; a single 13 KB package all 5 error
d06e99ff7b2d98a496016f6ef22aa41200b23b7d The 13 KB single package: under a never-used flag androidprobe; with network_filter: android/; with disable_file_fixes: true all 3 error
78483110a7d0862f6bd5d9f441c7d7fb6806f63e The same reports converted to lcov, flag android (single package, and the full report) both merged

In each of those commits, a Go coverage upload from another job (Migration Tests - schemafixture-suite, flag backend) merged normally.

Upload IDs from b8ad1070, all error:

  • e1e0ad25-f823-45fc-bd08-ab02225ae620 (probe-full)
  • e3423cd6-9d3c-445e-8826-0985d1e5bb26 (probe-full-reserialized)
  • d38a9858-afd2-4b83-9e3c-f0cc15677fd5 (probe-first-half)
  • 83b0eba0-c349-41fb-8d0a-fcd54c66d606 (probe-second-half)
  • ef04b30b-e6ec-4f29-a9bf-c1122a3d66e9 (probe-single)

Earlier, ordinary PR commits failed the same way: be44f6c44cf7a93ed3321ac09488cf2bdebe3e3a, cffb359d01766f767dcbd6151613a5a16eafe58d (on main), da163d786a4622ae4f69d2fd97200ac733314404 (also re-run: error again).

What was ruled out:

  • Report content: the rejected report is well-formed, non-empty (30,939 covered of 37,597 lines) and resolves to repository paths exactly like the last accepted report (436 source files resolve to exactly one repo file, the same 92 generated/inlined files don't, 0 ambiguous). A one-package 13 KB report also errors.
  • The CLI and auto-discovered files: the same CLI version succeeded the day before, and disable_search changed nothing.
  • Flag state and carryforward: a never-used flag errors too.
  • Network file list, file fixes, upload endpoint: each tested above.
  • Token / plan limits: same-token Go and lcov uploads merge; the repo is public.

Expected behavior
JaCoCo uploads process, as they did until 2026-10-15 (e.g. 850766079afef887d5a64967ef7b1be839f395c0 and 28a259f29b0929396aec572a6b628f7fcd213f7d, both merged), and codecov/patch/* check runs get created. If processing does fail, the upload should carry an error reason in the API or UI.

Additional context

  • I'm working around it by converting JaCoCo to lcov before upload (https://github.com/DrewBrunning/mycorrhizal-crm/pull/1764). The raw JaCoCo report still uploads under a separate, non-gating flag android-jacoco, so you can see new failing uploads on any future commit.
  • Could you tell me what processing error is logged for the upload IDs above?
  • Also, the "incomplete uploads on the first attempt" lock means a commit whose first upload hits a processing error can never recover by re-running CI, even after the underlying issue is fixed.
主要言語
言語のデータがありません
スター
52
フォーク
26
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

codecov/feedback のほかの issue

codecov/feedback の issue をすべて見る

似ている issue

DevOps の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。