[DO NOT MERGE] Remove EmulatorFlaky trait -- use adaptive concurrency instead#66
Draft
McNultyyy wants to merge 2 commits into
Draft
[DO NOT MERGE] Remove EmulatorFlaky trait -- use adaptive concurrency instead#66McNultyyy wants to merge 2 commits into
McNultyyy wants to merge 2 commits into
Conversation
The EmulatorFlaky trait was blanket-excluding 12 tests from all emulator runs, creating a regression gap. The root cause was a single test (ConcurrentReadsOfNonExistent) overwhelming the emulator with 50 parallel requests. Instead of excluding the entire class, make the concurrency adaptive: - 50 concurrent reads for in-memory (fast, no resource constraints) - 10 concurrent reads for emulator targets (same assertion, lower volume) Changes: - Remove [Trait(TestTraits.Target, TestTraits.EmulatorFlaky)] from Issue18EdgeCaseIntegrationTests - Remove EmulatorFlaky constant from TestTraits.cs - Remove Target!=EmulatorFlaky filter from scripts/run-tests.ps1 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The Windows emulator can return 404 with substatus 0 during an intermediate startup state (between 403/1008 and fully ready). This was causing the EmulatorWarmup tool and EmulatorRetry to treat it as fatal, failing the parity workflow before tests even ran. Add 404/0 to the transient error set in both: - tests/EmulatorWarmup/Program.cs (warmup tool) - tests/.../EmulatorSession.cs (shared retry helper) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
The
EmulatorFlakytrait was blanket-excluding 12 tests (Issue18EdgeCaseIntegrationTests) from all emulator CI runs, creating a gap where emulator-specific regressions could go undetected.The root cause was a single test (
ConcurrentReadsOfNonExistent) firing 50 parallel requests that overwhelmed the emulator's partition service with 503 "high demand" errors. Rather than excluding the entire class, this PR makes the concurrency adaptive based on the test target:This removes the
EmulatorFlakyconcept entirely -- all tests now run against all targets with no exclusions beyondInMemoryOnly.Related Issue
N/A
Type of Change
Checklist
dotnet test) -- 7701 unit + 292 integration pass