Merge pull request #106329 from benluddy/agg-flowcontrolsignal-flake

Fix flake caused by sampling signal counter too early.
This commit is contained in:
Kubernetes Prow Robot 2021-11-11 07:28:08 -08:00 committed by GitHub
commit 931ec69594
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -921,8 +921,11 @@ type hookedListener struct {
}
func (wl *hookedListener) Accept() (net.Conn, error) {
conn, err := wl.l.Accept()
if err == nil {
wl.onAccept()
return wl.l.Accept()
}
return conn, err
}
func (wl *hookedListener) Close() error {
@ -1015,10 +1018,13 @@ func TestFlowControlSignal(t *testing.T) {
req := tc.Request
req.URL = surl
_, err = server.Client().Do(&req)
res, err := server.Client().Do(&req)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
if err := res.Body.Close(); err != nil {
t.Fatalf("unexpected error: %v", err)
}
if fired := (atomic.LoadInt32(&signalCountOnAccept) > 0); tc.SignalExpected && !fired {
t.Errorf("flow control signal expected but not fired")