-
Notifications
You must be signed in to change notification settings - Fork 851
Closed
Description
After #1756 we expect that a Child will not make a DNS request for its origin unless it doesn't match parent selection. In 7.1, when a stale object is requested from a child, it will still make a DNS request for the origin, despite a successful matching parent selection.
Can reproduce by:
- create remap, parent configs with an origin that doesn't have a DNS entry.
- PUSH an object matching that remap to a child and parent.
- For the child have it expire quickly. For the parent, have it expire "a long time from now"
- A fetch from child before expires should succeed with a 200 status code.
- Once the child's expiry time has passed, fetch again from the child. The status code will be
HTTP/1.1 502 Cannot find server.with no parent in the Via: header.
The expected behavior would be that the child would match the parent selection, and thus does not perform the DNS lookup. As a result the parent would appear in the Via: and it would serve the 200, with the child re-freshing its stale object.