GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||
GeezerVison is showing github.com — test: Retry CliRunner apply subprocess on timeout to reduce flakiness by nikolauspschuetz · Pull Request #6592 · feast-dev/feast Conversation
Contributor
What changed
WhyThe unit-test workflow flaked on
Crucially, commands routed through This builds directly on the CliRunner subprocess stabilization in #6560. Validation
Note: the full unit suite could not be collected on my machine (local venv lacks the Separate from #6591 (which surfaced this flake).
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
ntkathole
force-pushed
the
test/stabilize-cli-runner-apply-retry
branch
from
aadd2bb to
e74df8e
Compare
ntkathole
force-pushed
the
test/stabilize-cli-runner-apply-retry
branch
from
e74df8e to
9aca1af
Compare
|
There was an error while loading. Please reload this page.
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@ ## master #6592 +/- ## ========================================== + Coverage 46.35% 46.36% +0.01% ========================================== Files 414 414 Lines 50052 50072 +20 Branches 7151 7154 +3 ========================================== + Hits 23201 23218 +17 - Misses 25229 25231 +2 - Partials 1622 1623 +1
Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
CliRunner.run() (used for 'feast apply' in unit tests) spawns a fresh child
interpreter that must import Feast (pandas/pyarrow/...) from cold. On loaded
CI runners — observed on unit-test-python (3.11, macos-14) — this can exceed
the 120s timeout, failing the test with:
AssertionError: Command timed out after 120s: ['apply']
Unlike the materializing paths guarded by run_with_output(), commands routed
through run() do not materialize and so cannot trigger the Dask atexit hang the
timeout was added for. A timeout here is therefore almost always transient cold
-start slowness, not a genuine deadlock, so retrying once (with warm OS/page
caches) clears it while a real repeated stall still fails after the attempts
are exhausted.
Builds on the CliRunner subprocess stabilization in feast-dev#6560.
Signed-off-by: Nikolaus Schuetz <[email protected]>
9aca1af to
0860438
Compare
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.