So Fastly use a modified version of varnish 2.1.5
They don't provide diagrams of the subroutine request flow, but varnish do (see below).
Now according to the below image vcl_hash is only ever entered when you execute a lookup within vcl_recv. But according to an engineer at Fastly...
vcl_hashis executed in almost all cases (except if yourestartinvcl_recv)
So which is it? Does anyone know if that's a Fastly specific implementation or just something not indicated by the official varnish diagram and/or are there vcl_* subroutines that are automatically entered when another subroutine finishes?
Any other 'gotchas' people know about?
