Skip to content

fix: carry the ShardAwarenessTest trace retry into the patched tags - #187

Merged
dkropachev merged 1 commit into
scylladb:masterfrom
nikagra:fix/shardawareness-trace-flake
Aug 13, 2026
Merged

fix: carry the ShardAwarenessTest trace retry into the patched tags#187
dkropachev merged 1 commit into
scylladb:masterfrom
nikagra:fix/shardawareness-trace-flake

Conversation

@nikagra

@nikagra nikagra commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Companion to scylladb/java-driver#1000, which fixes ShardAwarenessTest on scylla-3.x.

versions/scylla/3.11.4.0/patch and 3.11.5.15/patch rewrite the test's dead assertThat(anyLocal); (an AssertJ boolean assert with no terminal method — it asserts nothing) into a real assertTrue. That assertion then fails whenever a query trace comes back incomplete, so those tags keep flaking regardless of the driver-side fix.

Both hunks regenerated so the patched result is byte-identical to the fixed scylla-3.x file.

Regenerated mechanically, not by hand: applied each tag's existing patch to a pristine checkout of that tag, copied the fixed file over, re-diffed. Both then pass git apply --check and patch -p1 against a pristine tag, produce a file identical to the driver fix, and compile at their tag.

Tags > 3.11.5.15 need nothing — they carry the strict assertion upstream and get it from the driver fix.

🤖 Generated with Claude Code

3.11.4.0 and 3.11.5.15 patch the test's dead assertThat(anyLocal) into a real
assertTrue, which then fails whenever a query trace comes back incomplete.
Regenerate both hunks so the patched result matches the scylla-3.x fix.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@dkropachev
dkropachev merged commit 55e9253 into scylladb:master Aug 13, 2026
14 of 16 checks passed
@nikagra
nikagra deleted the fix/shardawareness-trace-flake branch August 13, 2026 18:32
nikagra added a commit to nikagra/scylla-java-driver-matrix that referenced this pull request Aug 26, 2026
Nothing caught a stale patch until the ~3.5h nightly Jenkins matrix failed:
tests/test_apache_patches.py only greps apache patches for a UDF flag string and
never checks that a patch applies, and no check ran when a patch, or the
selector that decides which tags a patch has to satisfy, was edited.

run.py already has the primitive -- --patch-only checks out a tag, applies
patches and stops. Call extract_n_latest_repo_tags directly rather than
reimplementing the selection, so this check cannot disagree with the tags
Jenkins picks, and surface the resolved directory per tag in the job summary so
a fallback is visible before it breaks. That summary is what would have shown
scylladb#187 it was patching a tag nothing selects.

The trigger is pull_request only. Newly published tags are a different problem
with different owners -- upstream releases are watched separately, and Scylla
driver releases are gated in scylladb/java-driver's release workflow -- so there
is deliberately no schedule here.

Deps are installed unpinned rather than from scripts/requirements.txt: those
pins target the production container image and PyYAML==6.0 no longer builds on
current Python, which would make this check fail for reasons unrelated to
patches.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants