Streaming and backend conditional requests

Artur Bergman sky at crucially.net
Sat Jan 14 20:17:42 CET 2012


On Jan 14, 2012, at 11:07 AM, Poul-Henning Kamp wrote:

>> Couple of points.
>> 
>> I agree with all, except I think they should be delivered through =
>> vcl_deliver, or you have to duplicate header logic in both of them.
> 
> Presently we allow limited obj.* access in vcl_deliver{}, but that's
> actually limited to the obj.hits and obj.lastuse variables which are
> under dispute for causing write-backs to object storage.
> 

I would love to keep the obj.hits and obj.lastuse in the struct obscure.

> So if we eliminate those two, using vcl_deliver{} should be feasible.
> 
>> Regarding ESI, as long as an ESI can have an fragment be a synth reply, =
>> I am happy.
> 
> It can, but the synth reply cannot be ESI parsed.
> 
> I did consider the alternative, where you call synth() from vcl_recv{}
> and then go from there to vcl_fetch{}, in essense making synth{} a
> virtual backend.
> 
> Would that be better ?

What happens in an error and you want to go vcl_synth?

Artur




More information about the varnish-dev mailing list