bryancall opened a new pull request, #13873: URL: https://github.com/apache/trafficserver/pull/13873
The `h2_active_timeout` check in the `http2` autest sends a request, sleeps four seconds against a three second `proxy.config.http2.active_timeout_in`, sends a second request, and expects the connection to be gone. ATS enforces the active timeout from the InactivityCop, which looks at each connection once a second, so the close lands anywhere from three to about four seconds in. The client's one second of slack is exactly one cop period. When the close slips past four seconds, the client reads the first stream's 200 response instead of the close and the gold check fails. A recent master autest failure shows exactly that, with the client exiting after 4.02 seconds. The client now starts its clock before it sends the connection preface, sends the first request, and then reads until ATS closes the connection. It reports `CONNECTION_TIMEOUT` only when the close comes no sooner than the active timeout and within 15 seconds, and otherwise says whether the connection stayed open or closed too early. The test passes the timeout to the client from the same variable that sets the record, and the gold file is unchanged. Testing, in the fedora:44 CI image under CPU load: with the cop period stretched to two seconds in both arms, master failed 19 of 160 runs with the CI signature and this change failed none. At the normal one second period, master failed 1 of 640 runs and this change none of 640, and the measured close times reached 3.96 seconds, 40 ms short of the old deadline. Disabling the active timeout, or setting it to one second while the client expects three, makes the new check fail 64 of 64 runs, so it still catches a timeout that never fires or fires early. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
