Skip to content

Conversation

@bneradt
Copy link
Contributor

@bneradt bneradt commented Jan 19, 2022

This reverts #8545 and instead directly calls
HttpTransact::need_to_revalidate in TSHttpTxnCacheLookupStatusGet to
ensure that an object which is a cache hit is indeed something ATS can
return to the client.

Fixes #8616


For Review:

This fixes the cache-request-method.test.py AuTest which is currently failing CI for master. Most of this change simply reverts #8545. The only real change is calling need_to_revalidate in InkAPI.cc in TSHttpTxnCacheLookupStatusGet.

This reverts apache#8548 and instead directly calls
HttpTransact::need_to_revalidate in TSHttpTxnCacheLookupStatusGet to
ensure that an object which is a cache hit is indeed something ATS can
return to the client.

Fixes apache#8616
@bneradt bneradt added this to the 10.0.0 milestone Jan 19, 2022
@bneradt bneradt self-assigned this Jan 19, 2022
@bneradt bneradt requested a review from zwoop as a code owner January 19, 2022 02:54
@bneradt
Copy link
Contributor Author

bneradt commented Jan 19, 2022

[approve ci debian]

@bneradt
Copy link
Contributor Author

bneradt commented Jan 19, 2022

[approve ci]

Copy link
Contributor

@masaori335 masaori335 left a comment

Choose a reason for hiding this comment

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

Looks reasonable. The root cause is explained in #8616 (comment) .

It looks like with #8484, the need_to_revalidate revalidate function is no longer called before TSHttpTxnCacheLookupStatusGet is called, and thus the cache_hit_but_revalidate flag isn't set yet.

@masaori335
Copy link
Contributor

/cc @serrislew

@bneradt bneradt merged commit 235c44a into apache:master Jan 19, 2022
@bneradt bneradt deleted the call_need_to_revalidate_in_TSHttpTxnCacheLookupStatusGet branch January 19, 2022 12:45
zwoop pushed a commit that referenced this pull request Jan 25, 2022
This reverts #8548 and instead directly calls
HttpTransact::need_to_revalidate in TSHttpTxnCacheLookupStatusGet to
ensure that an object which is a cache hit is indeed something ATS can
return to the client.

Fixes #8616

(cherry picked from commit 235c44a)
@zwoop
Copy link
Contributor

zwoop commented Jan 25, 2022

Cherry-picked to v9.2.x

@zwoop zwoop modified the milestones: 10.0.0, 9.2.0 Jan 25, 2022
bneradt added a commit to bneradt/trafficserver that referenced this pull request Jan 31, 2022
Fixing apache#8539 is easy to do in a common case, but it causing issues in
corner cases. For now I'm going to revert the fixes for this and circle
back around later to see whether this can be solved in a different way.

This reverts the following commits:

Revert "Commenting TSHttpTxnCacheLookupStatusGet need_to_revalidate (apache#8621)"
This reverts commit 4678ae3

Revert "TSHttpTxnCacheLookupStatusGet: call need_to_revalidate (apache#8617)"
This reverts commit 235c44a.

Revert "TSHttpTxnCacheLookupStatusGet: handle cannot respond cases (apache#8545)"
This reverts commit 080e236.
@bneradt bneradt mentioned this pull request Jan 31, 2022
bneradt added a commit that referenced this pull request Jan 31, 2022
Fixing #8539 is easy to do in a common case, but it causing issues in
corner cases. For now I'm going to revert the fixes for this and circle
back around later to see whether this can be solved in a different way.

This reverts the following commits:

Revert "Commenting TSHttpTxnCacheLookupStatusGet need_to_revalidate (#8621)"
This reverts commit 4678ae3

Revert "TSHttpTxnCacheLookupStatusGet: call need_to_revalidate (#8617)"
This reverts commit 235c44a.

Revert "TSHttpTxnCacheLookupStatusGet: handle cannot respond cases (#8545)"
This reverts commit 080e236.
@bneradt bneradt added the Revert label Jan 31, 2022
@bneradt
Copy link
Contributor Author

bneradt commented Jan 31, 2022

Adding the 9.2.x project as this will be reverted in 9.2.x when this is cherry-picked back:
#8637

zwoop pushed a commit that referenced this pull request Feb 2, 2022
Fixing #8539 is easy to do in a common case, but it causing issues in
corner cases. For now I'm going to revert the fixes for this and circle
back around later to see whether this can be solved in a different way.

This reverts the following commits:

Revert "Commenting TSHttpTxnCacheLookupStatusGet need_to_revalidate (#8621)"
This reverts commit 4678ae3

Revert "TSHttpTxnCacheLookupStatusGet: call need_to_revalidate (#8617)"
This reverts commit 235c44a.

Revert "TSHttpTxnCacheLookupStatusGet: handle cannot respond cases (#8545)"
This reverts commit 080e236.

(cherry picked from commit 2f1bd0f)
@zwoop zwoop removed this from the 9.2.0 milestone Feb 2, 2022
moonchen pushed a commit to moonchen/trafficserver that referenced this pull request Mar 17, 2022
* asf/9.2.x:
  Updated ChangeLog
  Add SSLSessionDup for older OpenSSL and BoringSSL (apache#8578)
  use shared pointer to help with high memory utilization (apache#8498)
  Commenting TSHttpTxnCacheLookupStatusGet need_to_revalidate (apache#8621)
  check size of session, and free sessions the ATS way (apache#8330)
  free sessions when timeout (apache#8356)
  Fix 32bit build failure on Odroid Xu-4 (apache#8626)
  TSHttpTxnCacheLookupStatusGet: call need_to_revalidate (apache#8617)
  SNIConfig (tunnel_route): Change the way we extract matched subgroups from the server name. (apache#8589)
  fix for collapsed forwarding ink_abort for CacheHitFresh fail (apache#8613)
  Do not turn off cache for internal requests (apache#8266)
  Rate Limit Plugin: Re-enable VConnection when SNI is empty (apache#8625)
  Removes hard dependency on having perl installed (apache#8611)
@zwoop zwoop added this to the 10.0.0 milestone Jan 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

cache-request-method AuTest fails on master

3 participants