[Varnish] #1442: Backend IMS and ESI clashes

Varnish varnish-bugs at varnish-cache.org
Mon Mar 3 12:23:32 CET 2014


#1442: Backend IMS and ESI clashes
----------------------+--------------------
 Reporter:  martin    |       Owner:
     Type:  defect    |      Status:  new
 Priority:  normal    |   Milestone:
Component:  varnishd  |     Version:  trunk
 Severity:  normal    |  Resolution:
 Keywords:            |
----------------------+--------------------
Description changed by martin:

Old description:

> If do_esi is set, the backend IMS code will assert on
> "XXXAZ(bo->ims_obj->esidata);" in vbf_stp_condfetch. See attached test
> case.
>
> If the same conditions is set for an ESI-included object being IMS
> updated, the code will assert on "assert(bo->do_stream || next !=
> BOS_STREAM);". The assertion in that case comes from the backend IMS code
> always goes to BOS_STREAM for the update, but do_stream is false because
> of the ESI path.
>
> Martin

New description:

 If do_esi is set, the backend IMS code will assert on
 {{{"XXXAZ(bo->ims_obj->esidata);"}}} in vbf_stp_condfetch. See attached
 test case.

 If the same conditions is set for an ESI-included object being IMS
 updated, the code will assert on {{{"assert(bo->do_stream || next !=
 BOS_STREAM);"}}}. The assertion in that case comes from the backend IMS
 code always goes to BOS_STREAM for the update, but do_stream is false
 because of the ESI path.

 Martin

--

-- 
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1442#comment:1>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator




More information about the varnish-bugs mailing list