[Varnish] #162: Varnish trunk dies with assert error in SES_Delete()
Varnish
varnish-bugs at projects.linpro.no
Mon Oct 8 17:03:03 CEST 2007
#162: Varnish trunk dies with assert error in SES_Delete()
---------------------------------------------------------+------------------
Reporter: anders | Owner: phk
Type: defect | Status: new
Priority: high | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: varnishd core dump SES_Delete cache_session |
---------------------------------------------------------+------------------
Comment (by anders):
To check for spurious piperead/pipewrite, I use
http://phk.freebsd.dk/misc/anordby.patch and log with this command:
varnishlog | grep ANORDBY >anordby.log 2>&1
I use this program to check the output:
{{{
#! /usr/bin/perl
%he=();
while (<STDIN>) {
$line = $_;
if (/ANORDBY (.*) 0x([0-9a-f]+)/) {
$cmdtxt = $1;
$hex = $2;
if (exists $he{"$hex"}) {
if ($cmdtxt eq "piperead") {
if ($he{"$hex"}{"pipewrite"} == 1) {
delete($he{"$hex"});
} else {
$he{"$hex"}{"txt"} .= $_;
}
} elsif ($cmdtxt eq "pipewrite") {
if ($he{"$hex"}{"pipewrite"} == 1) {
delete($he{"$hex"});
} else {
$he{"$hex"}{"txt"} .= $_;
}
} else {
$he{"$hex"}{"txt"} .= $_;
}
} else {
$he{"$hex"}{"txt"} .= $_;
if ($cmdtxt eq "piperead") {
$he{"$hex"}{"piperead"} = 1;
} elsif ($cmdtxt eq "pipewrite") {
$he{"$hex"}{"pipewrite"} = 1;
}
$he{"$hex"}{"txt"} .= $_;
}
}
}
foreach $l (keys %he) {
print "Address $l =>\n";
print $he{"$l"}{"txt"} . "\n";
}
}}}
This shows a number of pipewrite pairs, with no read:
{{{
Address 1a53008 =>
0 Debug "ANORDBY pipewrite 0x1a53008"
0 Debug "ANORDBY pipewrite 0x1a53008"
Address 224f008 =>
0 Debug "ANORDBY pipewrite 0x224f008"
0 Debug "ANORDBY pipewrite 0x224f008"
Address 3231008 =>
0 Debug "ANORDBY pipewrite 0x3231008"
0 Debug "ANORDBY pipewrite 0x3231008"
(..)
}}}
--
Ticket URL: <http://varnish.projects.linpro.no/ticket/162#comment:12>
Varnish <http://varnish.projects.linpro.no/>
The Varnish HTTP Accelerator
More information about the varnish-bugs
mailing list