Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Nov 24, 2025. It is now read-only.

Conversation

@rob05c
Copy link
Member

@rob05c rob05c commented Mar 9, 2022

This bug causes catastrophic config gen errors if the TO request
for ds_required_caps fails but server_reqs succeeds,
because then no servers have required caps, causing remap lines
for all DSes with required caps to be omitted.

This fixes it by making capability failures fail, rather than
continuing.

It formerly continued, because when capabilities were introduced,
it was necessary to continue if TO was older than t3c/ORT. But
now, the fallback API major version is 3.0, which has Capabilities.

If this bug wasn't fixed by simply always failing, it would have to
be fixed by making a server_caps error also set ds_req_caps to nil.

Which Traffic Control components are affected by this PR?

  • Traffic Control Cache Config (t3c, formerly ORT)

What is the best way to verify this PR?

Verify t3c fails when it fails to get server_capabilities or delivery_service_required_capabilities, rather than continuing.

If this is a bugfix, which Traffic Control versions contained the bug?

  • 4.0 thru 6.1

PR submission checklist

  • [x] This PR has tests no tests, unfortunately the t3c integration test framework isn't capable of simulating TO failures, it would require considerable extension to do so, and this is a TO request so it can't be unit tested.
  • [x] This PR has documentation no docs, no interface change
  • This PR has a CHANGELOG.md entry
  • This PR DOES NOT FIX A SERIOUS SECURITY VULNERABILITY (see the Apache Software Foundation's security guidelines for details)

@rob05c rob05c added bug something isn't working as intended cache-config Cache config generation labels Mar 9, 2022
This bug causes catastrophic config gen errors if the TO request
for ds_required_caps fails but server_reqs succeeds,
because then no servers have required caps, causing remap lines
for all DSes with required caps to be omitted.

This fixes it by making capability failures fail, rather than
continuing.

It formerly continued, because when capabilities were introduced,
it was necessary to continue if TO was older than t3c/ORT. But
now, the fallback API major version is 3.0, which has Capabilities.

If this bug wasn't fixed by simply always failing, it would have to
be fixed by making a server_caps error also set ds_req_caps to nil.
@rob05c rob05c force-pushed the fix-t3c-capability-fallback branch from e0d70f1 to 6e79e86 Compare March 9, 2022 18:26
@mitchell852 mitchell852 merged commit c6d7a51 into apache:master Mar 9, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

bug something isn't working as intended cache-config Cache config generation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants