Dridi Boukelmoune
Dridi Boukelmoune
> I talked about this and #3584 with @Dridi, but I think his suggestion above needs a little bit more context :-) More context: we were discussing two approaches, one...
beresp 304 header merging makes impossible to distinguish between headers set by varnish and backend
```vcl sub vcl_backend_revalidate { if (beresp.backend.name ~ "legacy") { return (replace); } } # built-in sub vcl_backend_revalidate { beresp.merge(obj); return (reuse); } ``` I have been confronted to misbehaving backends...
beresp 304 header merging makes impossible to distinguish between headers set by varnish and backend
Right, forget that part of my suggestion...
beresp 304 header merging makes impossible to distinguish between headers set by varnish and backend
> Can it be called with any other object besides `obj`? Yes, it can be called in a different context with different arguments. ```vcl sub vcl_init { my_replicator.request(...).merge(req); my_replicator.send(); #...
beresp 304 header merging makes impossible to distinguish between headers set by varnish and backend
One use case we might also consider is not merging surrogate keys for example: ```vcl sub vcl_backend_revalidate { if (beresp.http.xkey) { # don't keep track of stale surrogate keys set...
beresp 304 header merging makes impossible to distinguish between headers set by varnish and backend
```vcl set beresp.http.new_xkey = beresp.http.xkey.collect(); # or beresp.http.new_xkey.clone(beresp.http.xkey); ``` Now that we have type properties and methods, we can make vmod_header redundant by enhancing the VCL_HEADER and VCL_HTTP types.
I added cef6f007b722a7358d2ba083343cc9b956bf4f1e to show that `vcc_ExprEdit()` can be useful for more than just constant HEADER assignments, it can also help simplify libvcc. The general pattern is: ```diff - Fb(tl,...
bugwash: - needs live testing - ~rename `fetch_no_thread` counter to `bgfetch_no_thread`~ - ~and update description~ - ~add test coverage~ - reviews
If regular production traffic is good enough for live testing, then I'd say it's been live-tested for a week now on the enterprise side. What is left is reviews, and...
bugwash: ok