Mailing List Archive

#1737: Assert error in SES_Close()
#1737: Assert error in SES_Close()
--------------------------------+----------------------
Reporter: llavaud | Type: defect
Status: new | Priority: normal
Milestone: | Component: varnishd
Version: trunk | Severity: major
Keywords: panic assert error |
--------------------------------+----------------------
{{{
May 18 15:58:58 webcache12 varnishd[140657]: Child (140676) died signal=6
May 18 15:58:58 webcache12 varnishd[140657]: Child (140676) Panic message:
Assert error in SES_Close(), cache/cache_session.c line 274:
Condition(sp->fd >= 0) not true.
errno = 32 (Broken pipe)
thread = (cache-worker)
version = varnish-trunk revision cbb2f5d
ident = Linux,3.2.0-4-amd64,x86_64,-sfile,-smalloc,-hcritbit,epoll
Backtrace:
0x434564: pan_ic+0x134
0x43bd46: SES_Close+0x56
0x41bd9d: ESI_Deliver+0x1cd
0x41ac45: VDP_DeliverObj+0x135
0x44dda5: V1D_Deliver+0x275
0x437fe6: cnt_deliver+0x296
0x4385c9: CNT_Request+0x119
0x44f5bb: HTTP1_Session+0x77b
0x43b9f8: ses_req_pool_task+0x68
0x43c994: SES_pool_accept_task+0x2b4
req = 0x7f1105447020 {
sp = 0x7f110353d920, vxid = 2492739, step = R_STP_DELIVER,
req_body = R_BODY_NONE,
restarts = 0, esi_level = 0
sp = 0x7f110353d920 {
fd = -1, vxid = 2492738,
client = client_ip 50724,
step = S_STP_WORKING,
},
worker = 0x7f1106dcbc30 {
stack = {0x7f1106dcc000 -> 0x7f1106dc0000}
ws = 0x7f1106dcbe40 {
id = "wrk",
{s,f,r,e} = {0x7f1106dcb420,0x7f1106dcb420,(nil),+2040},
},
VCL::method = DELIVER,
VCL::return = deliver,
VCL::methods = {RECV, PASS, HASH, PURGE, MISS, HIT, DELIVER, SYNTH,
BACKEND_FETCH, BACKEND_RESPONSE},
},
ws = 0x7f11054471d0 {
id = "req",
{s,f,r,e} = {0x7f1105448ff8,+2624,+253984,+253984},
},
http[req] = {
ws = 0x7f11054471d0[req]
"GET",
"myuri",
"HTTP/1.1",
"Accept: text/html, application/xhtml+xml, */*",
"Referer: http://www.gulli.fr/Jeux/My-Little-Pony/My-Little-Pony-
Jeu-Rarity",
"Accept-Language: fr-FR",
"User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0;
rv:11.0) like Gecko",
"DNT: 1",
"Connection: Keep-Alive",
"Host: www.gulli.fr",
"Surrogate-Capability: abc=ESI/1.0",
"X-Forwarded-For

--
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1737>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator

_______________________________________________
varnish-bugs mailing list
varnish-bugs@varnish-cache.org
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-bugs
Re: #1737: Assert error in SES_Close() [ In reply to ]
#1737: Assert error in SES_Close()
--------------------------------+----------------------------------------
Reporter: llavaud | Owner: Poul-Henning Kamp <phk@…>
Type: defect | Status: closed
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: major | Resolution: fixed
Keywords: panic assert error |
--------------------------------+----------------------------------------
Changes (by Poul-Henning Kamp <phk@…>):

* owner: => Poul-Henning Kamp <phk@…>
* status: new => closed
* resolution: => fixed


Comment:

In [9cd4a9004dbc150bce5b98e31339075e5ab79caf]:
{{{
#!CommitTicketReference repository=""
revision="9cd4a9004dbc150bce5b98e31339075e5ab79caf"
The ESI_VDP would double-close sessions when a flush error happened
before an ESI include at one level, and then again at a higher level.

Fixed by not closing the session in this case, as that will be taken
care of at the end of delivery anyways when V1L_FlushRelease is
called.

Fixes: #1737
Submitted by: Martin
}}}

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

_______________________________________________
varnish-bugs mailing list
varnish-bugs@varnish-cache.org
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-bugs