Skip to content

Background fill does not work on HTTPS connections #12473

Description

@maskit

There is ATS built-in background fill feature that is to continue fetching documents from origins even after client connections are aborted. The name is confusing but this is different from background_fetch plugin.

The background fill feature is enabled by default (proxy.config.http.background_fill_active_timeout=0, and proxy.config.http.background_fill_completed_threshold=0), and it works fine if the client connection is cleartext HTTP, but I found that it does not work if the client connection is HTTPS (TLS + TCP).

I checked the behavior like below:

  • Run ATS (port 8080)
  • Run origin server ($ cat | nc -l 8888)
  • Send a request ($ curl -v http://127.0.0.1:8080/)
  • Close the client connection (Ctrl+C on the curl command)
  • Send a response (Type a response on the cat command)
  • Shutdown the origin server (Ctrl+D on the cat command)
  • Send another request ($ curl -v http://127.0.0.1:8080/)

Same steps on HTTPS doesn't return the response from cache.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions