- πΊπΈUnited States smustgrave
Even though this is a test can we setup a test to check for the cache age?
- π«π·France prudloff Lille
The patch in #8 makes big_pipe responses cacheable when using big_pipe_sessionless and cache_control_override but it does not correctly bubble the cache tags from elements rendered by big_pipe.
BigPipe::sendPlaceholders()
callssendChunk()
with the chunk as a string.
This means thatsendChunk()
never gets the cache tags and max age from these chunks.BigPipeSessionless::sendChunk()
is able to use the chunk's cache parameters and apply them to the final cached page.
If core does not send these cache parameters, cache tags from elements rendered by big_pipe will not bubble to the cached response.
This means page cache can store a page even if it contains a block with max-age = 0 rendered by big_pipe; because its max-age will not bubble to the stored response.The attached patch makes core pass the chunk cache tags to big_pipe_sessionless.
- Status changed to Needs review
over 1 year ago 8:10am 26 August 2023 - last update
over 1 year ago 30,341 pass - Status changed to Needs work
over 1 year ago 8:47am 26 August 2023 The Needs Review Queue Bot β tested this issue. It no longer applies to Drupal core. Therefore, this issue status is now "Needs work".
This does not mean that the patch needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.
Consult the Drupal Contributor Guide β to find step-by-step guides for working with issues.
- First commit to issue fork.
- Merge request !4653Issue #3012404: Compatibility with Cache Control Override: is max-age=0 really necessary for BigPipe's placeholders? β (Open) created by rpayanm
- last update
over 1 year ago 30,060 pass - First commit to issue fork.
- last update
over 1 year ago 30,146 pass - Status changed to Needs review
29 days ago 11:25pm 17 March 2025 - π«π·France prudloff Lille
Writing a functional test seems hard without big_pipe_sessionless because core itself never uses the cache metadata from chunks.
I added a unit test that checks if the chunks are cacheable. The Needs Review Queue Bot β tested this issue. It fails the Drupal core commit checks. Therefore, this issue status is now "Needs work".
This does not mean that the patch necessarily needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.
Consult the Drupal Contributor Guide β to find step-by-step guides for working with issues.
- π¬π§United Kingdom catch
Adding a couple of related issues, I'm not sure exactly how they would interact with this one yet.
The main focus of those issues would be to enable big pipe for session-less users (in core, probably as a new configuration setting) but by pre-empting big pipe for cached placeholders, avoiding it entirely on warm caches (and hence the response would be cacheable by reverse proxies/page cache as usual).
- πΊπΈUnited States smustgrave
Have not reviewed but issue summary appears to be missing.
The Needs Review Queue Bot β tested this issue. It no longer applies to Drupal core. Therefore, this issue status is now "Needs work".
This does not mean that the patch necessarily needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.
Consult the Drupal Contributor Guide β to find step-by-step guides for working with issues.
- π«π·France prudloff Lille
The bot says the patch does not apply but I don't see any conflict on the MR.
I rebased to see if it works better.