envoy icon indicating copy to clipboard operation
envoy copied to clipboard

quic: fix Server's Preferred Address tests to when `envoy.reloadable_features.quic_send_server_preferred_address_to_all_clients` is false

Open danzh2010 opened this issue 1 year ago • 9 comments

Those tests were accidentally changed pass only if that runtime guard is true.

Risk Level: low Testing: fixing tests Docs Changes: N/A Release Notes: N/A Platform Specific Features: N/A

danzh2010 avatar May 09 '24 15:05 danzh2010

/assign @ggreenway

danzh2010 avatar May 09 '24 15:05 danzh2010

I don't understand; this flag isn't ever false in these tests, so it seems like this is dead code.

No, they are not dead code. Before this flag is introduced, these tests would make the client to send the connection option kSPAD to signal its support of SPA. This logic is accidentally removed when the flag is introduced, so these tests will fail when the flag is false.

danzh2010 avatar May 09 '24 17:05 danzh2010

so these tests will fail when the flag is false

But the flag is never false in these tests. Otherwise, they'd be failing in CI everytime.

ggreenway avatar May 09 '24 17:05 ggreenway

so these tests will fail when the flag is false

But the flag is never false in these tests. Otherwise, they'd be failing in CI everytime.

The issue is that we flipped the flag internally and these tests were not happy.

danzh2010 avatar May 09 '24 17:05 danzh2010

so these tests will fail when the flag is false

But the flag is never false in these tests. Otherwise, they'd be failing in CI everytime.

The issue is that we flipped the flag internally and these tests were not happy.

I think all tests should be written in a way that is robust to random flag flips.

danzh2010 avatar May 09 '24 17:05 danzh2010

/retest

danzh2010 avatar May 09 '24 17:05 danzh2010

I think all tests should be written in a way that is robust to random flag flips.

Most/all of the envoy tests are written to assume the default value for the flags (or the test explicitly flips the flag to test the opposite case); I don't think anything like this has been done before.

ggreenway avatar May 09 '24 18:05 ggreenway

I think all tests should be written in a way that is robust to random flag flips.

Most/all of the envoy tests are written to assume the default value for the flags (or the test explicitly flips the flag to test the opposite case); I don't think anything like this has been done before.

@alyssawilk who originally implemented runtime guard. If tests only work for default values, it will be hard time to turn off the flags when issues are reported with the flag.

danzh2010 avatar May 09 '24 18:05 danzh2010

/retest

danzh2010 avatar May 09 '24 19:05 danzh2010

/retest

danzh2010 avatar May 31 '24 17:05 danzh2010