Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

interop: don't run interop measurements if the Transfer testcase failed #1025

Merged
merged 4 commits into from
Dec 4, 2021

Conversation

WesleyRosenblum
Copy link
Contributor

@WesleyRosenblum WesleyRosenblum commented Dec 3, 2021

Issue #, if available:

Description of changes: This change attempts to speed up the interop tests by skipping the measurements when the Transfer testcase fails, as it is unlikely Crosstraffic and Goodput will succeed anyway.

Rev 2:

  • Removed Quant and Quicly as they have consistently failed and don't show short term signs of improvement
  • Disabled ZeroRtt, Http3, and Resumption

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@WesleyRosenblum WesleyRosenblum marked this pull request as draft December 3, 2021 22:07
@dougch
Copy link
Contributor

dougch commented Dec 3, 2021

Benchmark report
No change in performance detected.

+ else:
+ logging.debug("Skipping measurements as Transfer testcase was unsuccessful")
+ res = MeasurementResult()
+ res.result = TestResult.UNSUPPORTED
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wouldn't this be a failure instead of unsupported? Isn't the idea that if transfer failed these would also fail?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I went with unsupported since if its Failure it would show up as a link to the logs in the report, but there would be no logs if it isn't run.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm... I guess it's not a big deal either way. My concern is we just end up having a less accurate sense of what's passing.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be better to add Goodput and Crosstraffic to the required check then

@camshaft
Copy link
Contributor

camshaft commented Dec 3, 2021

While you're here speeding up interop... We should probably disable quant and quicly since they don't pass at all and show no sign of changing in the short to mid future.

Also we should just comment out the tests in the interop lists that we know we don't support. The current behavior still spins up the whole stack just to find the 127 exit status code.

@dougch
Copy link
Contributor

dougch commented Dec 3, 2021

Benchmark report
No change in performance detected.

@WesleyRosenblum
Copy link
Contributor Author

WesleyRosenblum commented Dec 3, 2021

We should probably disable quant and quicly since they don't pass at all and show no sign of changing in the short to mid future.

Yeah Quant isn't looking too active: NTAP/quant#77 (comment)

Also we should just comment out the tests in the interop lists that we know we don't support. The current behavior still spins up the whole stack just to find the 127 exit status code.

Is that just TestCaseIPv6? I believe all the others are in the enum: https://github.com/awslabs/s2n-quic/blob/663f86947f9996728723cce135c026faa22c9eef/quic/s2n-quic-qns/src/interop.rs#L84-L96 even if we don't actually support them yet. Or I could remove ZeroRtt, Http3, ConnectionMigration, Resumption, KeyUpdate too

@WesleyRosenblum
Copy link
Contributor Author

Or I could remove ZeroRtt, Http3, ConnectionMigration, Resumption, KeyUpdate too

actually is that enum just used for running individual tests, since we do run ConnectionMigration, KeyUpdate and Ipv6 in the CI? I'll just remove ZeroRtt, Http3, and Resumption

@dougch
Copy link
Contributor

dougch commented Dec 3, 2021

Benchmark report
No change in performance detected.

camshaft
camshaft previously approved these changes Dec 3, 2021
Copy link
Contributor

@camshaft camshaft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is exactly what I was thinking

@WesleyRosenblum WesleyRosenblum marked this pull request as ready for review December 3, 2021 23:47
@dougch
Copy link
Contributor

dougch commented Dec 4, 2021

Benchmark report
No change in performance detected.

@WesleyRosenblum WesleyRosenblum merged commit 7f479d7 into main Dec 4, 2021
@WesleyRosenblum WesleyRosenblum deleted the WesleyRosenblum/nomeasurements branch December 4, 2021 03:23
@WesleyRosenblum WesleyRosenblum changed the title Don't run interop measurements if the Transfer testcase failed interop: don't run interop measurements if the Transfer testcase failed Feb 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants