Commit a3bb441
committed
xds: Fix race condition in ext-proc fail-open client interceptor test
Resolve flakiness in ExternalProcessorClientInterceptorTest's
givenFailureModeAllowTrue_whenExtProcStreamFails_thenCallFailsOpen test.
The test was racing because the mock sidecar failed asynchronously
on headers, occasionally running after the client had already sent
a request message. If the message was sent first, fail-open was
disallowed because of data loss.
Fixed by intercepting the data plane server to block the client thread
until the data plane call actually starts (headers received). This
ensures the client interceptor has processed the ext-proc stream
failure and transitioned to fail-open pass-through mode before
the application sends the request body.1 parent 036c7f0 commit a3bb441
1 file changed
Lines changed: 20 additions & 8 deletions
Lines changed: 20 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8460 | 8460 | | |
8461 | 8461 | | |
8462 | 8462 | | |
8463 | | - | |
8464 | | - | |
8465 | | - | |
8466 | | - | |
8467 | | - | |
8468 | | - | |
8469 | | - | |
8470 | | - | |
| 8463 | + | |
| 8464 | + | |
| 8465 | + | |
| 8466 | + | |
| 8467 | + | |
| 8468 | + | |
| 8469 | + | |
| 8470 | + | |
| 8471 | + | |
| 8472 | + | |
| 8473 | + | |
| 8474 | + | |
| 8475 | + | |
| 8476 | + | |
| 8477 | + | |
| 8478 | + | |
| 8479 | + | |
| 8480 | + | |
| 8481 | + | |
8471 | 8482 | | |
8472 | 8483 | | |
8473 | 8484 | | |
| |||
8487 | 8498 | | |
8488 | 8499 | | |
8489 | 8500 | | |
| 8501 | + | |
8490 | 8502 | | |
8491 | 8503 | | |
8492 | 8504 | | |
| |||
0 commit comments