ci: flaky tests cost about 1 h per PR (mesh channel TLS EOF, vip carry wait, etcd deadline) #177
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Keel-Linux/keel#177
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The CI checks of 2026-10-15 failed often on known flakes. Each failure passed on a re-run, and none came from the change under test.
tests/test_mesh_channel.py::TestBlocked::test_a_source_refused_too_often_is_not_answeredForged: [::1]:N: the TLS handshake failed ([SSL: UNEXPECTED_EOF_WHILE_READING] ...)test_g_a_member_outside_the_pair_writing_and_revokingkeel-vip.service did not add the VIP to wg0 within 15 s(the promote's carry wait, under netem)test_the_move_leaves_the_vip_s_holder_aloneetcdctl get: context deadline exceeded(keel#94 class)test_etcdctl_meets_the_vip_s_renewaltest_a_learner_added_and_removed_with_keel_s_clientetcdserver: unhealthy cluster(keel#94 class)test_a_the_holder_restarted_as_an_upgrade_doesdropped_snot None after try-restartForgejo has no API to re-run one job. A re-run is a new commit date and a force-push, and every job runs again. With 6 runners a full run takes 45 to 60 min, so each flake costs about 1 h.
Expected: each of these tests passes on the design case, or it is fixed or bounded so that it does not fail a PR on a loaded runner.
Fixed by keel#180 (0.23.32), keel#182 (0.23.31), Keel-Linux/.github#25 and handbook#87, all merged. The classification of each red check is in the description of keel#180. One item stays unknown: the vip-upgrade gap of 1.38 s of run 74 (one time, no ping log kept). If it comes again, open a new issue with the ping log.