結論 「キャッシュしない」ことをキャッシュするのが hit for pass キャッシュオブジェクト。 同じ URL に、同時にアクセスされたとき、 キャッシュが見つからない場合 …… 先頭のリクエストだけをバックエンドに送り、残りはそのレスポンスを待つ。 hit for pass キャッシュが見つかった場合 …… 他のリクエストを気にせず、全部バックエンドに送る。 という動作になる。 発端 Varnish を3.0にバージョンアップしたら vcl_fetch のreturn (pass); がエラーになった。どうやら、単純に return (hit_for_pass); に置き換えればいいらしい。 Upgrading from Varnish 2.1 to 3.0 — Varnish version trunk documentation 2.1から3.0にアップグレードする際のVCLフ