Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Varnish: Bugs

#1287: Varnish 3.0.3 - segfault in libvarnish.so.

 

 

Varnish bugs RSS feed   Index | Next | Previous | View Threaded


varnish-bugs at varnish-cache

Mar 25, 2013, 3:59 AM

Post #1 of 15 (324 views)
Permalink
#1287: Varnish 3.0.3 - segfault in libvarnish.so.

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+----------------------
Reporter: robroy | Type: defect
Status: new | Priority: normal
Milestone: | Component: varnishd
Version: trunk | Severity: normal
Keywords: segfault libvarnish.so |
------------------------------------+----------------------
I use varnish 3.0.3 on my production server:

rpm -qa | grep varnish
varnish-3.0.3-1.el6.x86_64
varnish-libs-3.0.3-1.el6.x86_64
varnish-libs-devel-3.0.3-1.el6.x86_64

uname -r
2.6.32-279.19.1.el6.x86_64

cat /etc/redhat-release
CentOS release 6.3 (Final)

My varnish process suddenly dies and logs:

Mar 22 09:00:07 server.local kernel: : varnishd[2085]: segfault at 0
ip 0000003f60c0c234 sp 00007fa9217cc2e0 error 4 in
libvarnish.so[3f60c00000+13000]
Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) not
responding to CLI, killing it.
Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) not
responding to CLI, killing it.
Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) died
signal=11 (core dumped)
Mar 22 08:00:14 server.local varnishd[28424]: Child cleanup complete
Mar 22 08:00:14 server.local varnishd[28424]: child (1129) Started
Mar 22 08:00:14 server.local varnishd[28424]: Child (1129) said Child
starts

I've attached my configuration.

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

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


varnish-bugs at varnish-cache

Apr 8, 2013, 3:20 AM

Post #2 of 15 (301 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------
Description changed by tfheen:

Old description:

> I use varnish 3.0.3 on my production server:
>
> rpm -qa | grep varnish
> varnish-3.0.3-1.el6.x86_64
> varnish-libs-3.0.3-1.el6.x86_64
> varnish-libs-devel-3.0.3-1.el6.x86_64
>
> uname -r
> 2.6.32-279.19.1.el6.x86_64
>
> cat /etc/redhat-release
> CentOS release 6.3 (Final)
>
> My varnish process suddenly dies and logs:
>
> Mar 22 09:00:07 server.local kernel: : varnishd[2085]: segfault at 0
> ip 0000003f60c0c234 sp 00007fa9217cc2e0 error 4 in
> libvarnish.so[3f60c00000+13000]
> Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) not
> responding to CLI, killing it.
> Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) not
> responding to CLI, killing it.
> Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) died
> signal=11 (core dumped)
> Mar 22 08:00:14 server.local varnishd[28424]: Child cleanup complete
> Mar 22 08:00:14 server.local varnishd[28424]: child (1129) Started
> Mar 22 08:00:14 server.local varnishd[28424]: Child (1129) said Child
> starts
>
> I've attached my configuration.

New description:

I use varnish 3.0.3 on my production server:

{{{
rpm -qa | grep varnish
varnish-3.0.3-1.el6.x86_64
varnish-libs-3.0.3-1.el6.x86_64
varnish-libs-devel-3.0.3-1.el6.x86_64

uname -r
2.6.32-279.19.1.el6.x86_64

cat /etc/redhat-release
CentOS release 6.3 (Final)
}}}

My varnish process suddenly dies and logs:

{{{
Mar 22 09:00:07 server.local kernel: : varnishd[2085]: segfault at 0
ip 0000003f60c0c234 sp 00007fa9217cc2e0 error 4 in
libvarnish.so[3f60c00000+13000]
Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) not
responding to CLI, killing it.
Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) not
responding to CLI, killing it.
Mar 22 08:00:14 server.local varnishd[28424]: Child (2043) died
signal=11 (core dumped)
Mar 22 08:00:14 server.local varnishd[28424]: Child cleanup complete
Mar 22 08:00:14 server.local varnishd[28424]: child (1129) Started
Mar 22 08:00:14 server.local varnishd[28424]: Child (1129) said Child
starts
}}}
I've attached my configuration.

--

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

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


varnish-bugs at varnish-cache

Apr 8, 2013, 3:48 AM

Post #3 of 15 (302 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by tfheen):

Are you seeing this regularly? If so, could you please get us a core
dump? The easiest way to do that is to install the varnish-debugsymbols
package, ensure the DAEMON_COREFILE_LIMIT in /etc/sysconfig/varnish is not
commented and echo "/tmp/core" > /proc/sys/kernel/core_pattern to make
sure cores end up in /tmp.

When Varnish crashes, run gdb /usr/bin/varnishd /tmp/core (or what the
core file is named), then "bt full" and put that into the ticket.

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

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


varnish-bugs at varnish-cache

Apr 12, 2013, 7:29 AM

Post #4 of 15 (293 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by coennie):

We just went live with Varnish 3.0.3 and I see the same results as
described above:

{{{
Apr 12 16:23:32 lb1 varnishd[8572]: child (18461) Started
Apr 12 16:23:32 lb1 varnishd[8572]: Child (18461) said Child starts
Apr 12 16:23:41 lb1 kernel: [13748.309110] varnishd[18488]: segfault at 0
ip 00007f48c9355504 sp 00007f48b3ee9320 error 4 in
libvarnish.so[7f48c9349000+13000]
Apr 12 16:23:41 lb1 varnishd[8572]: Child (18461) died signal=11
Apr 12 16:23:41 lb1 varnishd[8572]: Child cleanup complete
Apr 12 16:23:41 lb1 varnishd[8572]: child (18499) Started
Apr 12 16:23:41 lb1 varnishd[8572]: Child (18499) said Child starts
}}}
I've traced the trashing back to PURGING. Everytime we call a PURGE from
the backend, the varnishd crashes with the error above.
In the VCL I've directly copied the purge commands from the manual:

{{{
sub vcl_hit {
if (req.request == "PURGE" || req.url ~ "purge=true") {
purge;
error 200 "Purged.";
}
}

sub vcl_miss {
if (req.request == "PURGE" || req.url ~ "purge=true") {
purge;
error 200 "Purged.";
}
}
}}}

Please advise!

Regards Coen

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

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


varnish-bugs at varnish-cache

Apr 15, 2013, 4:02 AM

Post #5 of 15 (286 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by martin):

Hi,

Did you manage to get the GDB stack traces we asked for? Also, you say
that the issue occurs every time you do 'purge;'. The original VCL
configuration attached to this ticket does not have any purge statements.
Please clearify the circumstances.

If you have a clear way to reproduce this behavior, please share the steps
including the VCL configuration and all the requests necessary.

Regards,
Martin Blix Grydeland

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

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


varnish-bugs at varnish-cache

Apr 15, 2013, 11:59 PM

Post #6 of 15 (283 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by coennie):

Replying to [comment:4 martin]:

Hi Martin,

I've uploaded Archief.zip which contains the vcl and a core dump.

Here's some technical extra information:

{{{
root [at] lb:/proc/sys/kernel# /usr/sbin/varnishd -d -d -d -P
/var/run/varnishd.pid -a :80 -T localhost:6082 -f /etc/varnish/default.vcl
-S /etc/varnish/secret -s malloc,1536m
Platform: Linux,2.6.32-5-xen-amd64,x86_64,-smalloc,-smalloc,-hcritbit
200 246
-----------------------------
Varnish Cache CLI 1.0
-----------------------------
Linux,2.6.32-5-xen-amd64,x86_64,-smalloc,-smalloc,-hcritbit

Type 'help' for command list.
Type 'quit' to close CLI session.
Type 'start' to launch worker process.

start
child (18281) Started
200 0

Child (18281) said Child starts
Child (18281) died signal=11 (core dumped)
Child cleanup complete
child (18312) Started
Child (18312) said Child starts
}}}


The segfault from coredump: [1204305.073356] varnishd[18300]: segfault at
0 ip 00007fb19d296504 sp 00007fb18c5e3320 error 4 in
libvarnish.so[7fb19d28a000+13000]

This segfault has been create by: get /^J^J

Hope to here from you soon as it's a big caching problem on our live
enviroment now.

The way I can get the varnished to create a segfault is by this command on
a client:

curl -X PURGE {any URL}

Regards Coen

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

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


varnish-bugs at varnish-cache

Apr 22, 2013, 4:08 AM

Post #7 of 15 (273 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by martin):

Hi,

Unfortunately I can't make any sense of the coredump, as I can't replicate
your exact setup. Please follow the procedure tfheen put in this ticket
and do the backtrace output on the server that exhibits this fault.

(Also it would be interesting to know if adding the customary jump to
error after purging that is missing from your vcl configuration would make
any difference).

Regards,
Martin Blix Grydeland

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

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


varnish-bugs at varnish-cache

Apr 22, 2013, 6:56 AM

Post #8 of 15 (269 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by bokkepoot):

root [at] lb:~# gdb /usr/sbin/varnishd /tmp/core-
varnishd-11-65534-65534-6986-1366638243
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/sbin/varnishd...Reading symbols from
/usr/lib/debug/usr/sbin/varnishd...done.
(no debugging symbols found)...done.
[New Thread 7008]
[New Thread 7010]
[New Thread 6986]
[New Thread 6990]
[New Thread 6992]
[New Thread 6993]
[New Thread 6994]
[New Thread 6995]
[New Thread 6996]
[New Thread 6997]
[New Thread 6987]
[New Thread 7000]
[New Thread 7006]
[New Thread 7012]
[New Thread 7007]
[New Thread 6988]
[New Thread 7001]
[New Thread 7004]
[New Thread 7002]
[New Thread 7003]
[New Thread 6991]
[New Thread 6999]
[New Thread 6989]
[New Thread 6998]

warning: Can't read pathname for load map: Input/output error.
Error while mapping shared library sections:
./vcl.7H1mXKN6.so: No such file or directory.
Reading symbols from /usr/lib/varnish/libvarnish.so...Reading symbols from
/usr/lib/debug/usr/lib/varnish/libvarnish.so...done.
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/varnish/libvarnish.so
Reading symbols from /usr/lib/varnish/libvarnishcompat.so...Reading
symbols from /usr/lib/debug/usr/lib/varnish/libvarnishcompat.so...done.
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/varnish/libvarnishcompat.so
Reading symbols from /usr/lib/varnish/libvcl.so...Reading symbols from
/usr/lib/debug/usr/lib/varnish/libvcl.so...done.
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/varnish/libvcl.so
Reading symbols from /usr/lib/varnish/libvgz.so...Reading symbols from
/usr/lib/debug/usr/lib/varnish/libvgz.so...done.
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/varnish/libvgz.so
Reading symbols from /lib/libpcre.so.3...(no debugging symbols
found)...done.
Loaded symbols for /lib/libpcre.so.3
Reading symbols from /lib/libdl.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libnsl.so.1...(no debugging symbols
found)...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libm.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libpthread.so.0...(no debugging symbols
found)...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/librt.so.1...(no debugging symbols
found)...done.
Loaded symbols for /lib/librt.so.1
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib/libnss_compat.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib/libnss_compat.so.2
Reading symbols from /lib/libnss_nis.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib/libnss_nis.so.2
Reading symbols from /lib/libnss_files.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib/libnss_files.so.2
Symbol file not found for ./vcl.7H1mXKN6.so
Reading symbols from /usr/lib/varnish/vmods/libvmod_std.so...Reading
symbols from /usr/lib/debug/usr/lib/varnish/vmods/libvmod_std.so...done.
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/varnish/vmods/libvmod_std.so
Core was generated by `/usr/sbin/varnishd -P /var/run/varnishd.pid -a :80
-T localhost:6082 -f /etc/va'.
Program terminated with signal 11, Segmentation fault.
#0 VSB_cat (s=0x7f1634656040, str=0x0) at vsb.c:331
331 vsb.c: No such file or directory.
in vsb.c
(gdb) bt full
#0 VSB_cat (s=0x7f1634656040, str=0x0) at vsb.c:331
__func__ = "VSB_cat"
#1 0x0000000000437c63 in VRT_synth_page (sp=0x7f16415e1008, flags=<value
optimized out>, str=0x0) at cache_vrt.c:409
ap = {{gp_offset = 1096683768, fp_offset = 32534,
overflow_arg_area = 0x7f16415e1008, reg_save_area = 0x2}}
p = <value optimized out>
vsb = <value optimized out>
__func__ = "VRT_synth_page"
#2 0x00007f16391f613a in ?? ()
No symbol table info available.
#3 0x00007f163464d0d8 in ?? ()
No symbol table info available.
#4 0x00007f16415e1008 in ?? ()
No symbol table info available.
#5 0x00007f1631ffbac0 in ?? ()
No symbol table info available.
#6 0x0000000000436e06 in VCL_error_method (sp=0x7f16415e1008) at
../../include/vcl_returns.h:66
__func__ = "VCL_error_method"
#7 0x0000000000417d92 in cnt_error (sp=0x7f16415e1008) at
cache_center.c:483
h = 0x7f163464d0d8
date = "Mon, 22 Apr 2013 13:44:03
GMT\000\000\000\370\274\377\061\026\177\000"
__func__ = "cnt_error"
#8 0x0000000000419dbd in CNT_Session (sp=0x7f16415e1008) at steps.h:46
done = 0
w = 0x7f1631ffbac0
__func__ = "CNT_Session"
#9 0x0000000000431d89 in wrk_thread_real (qp=0x7f1641514150,
shm_workspace=<value optimized out>, sess_workspace=<value optimized out>,
nhttp=<value optimized out>, http_space=<value optimized out>,
siov=<value optimized out>) at cache_pool.c:186
ww = {magic = 1670491599, nobjhead = 0x7f1634613100, nobjcore =
0x7f1634615180, nwaitinglist = 0x7f1634614080, nbusyobj = 0x7f163461c050,
nhashpriv = 0x7f16346140a0, stats = {client_conn = 0,
client_req = 1, cache_hit = 0, cache_hitpass = 0, cache_miss =
0, fetch_head = 0, fetch_length = 0, fetch_chunked = 0, fetch_eof = 0,
fetch_bad = 0, fetch_close = 0, fetch_oldhttp = 0,
fetch_zero = 0, fetch_failed = 0, fetch_1xx = 0, fetch_204 =
0, fetch_304 = 0, n_object = 1, n_vampireobject = 0, n_objectcore = 0,
n_objecthead = 0, n_waitinglist = 0, n_objoverflow = 0,
s_sess = 0, s_req = 0, s_pipe = 0, s_pass = 0, s_fetch = 0,
s_hdrbytes = 0, s_bodybytes = 0, sess_closed = 0, sess_pipeline = 0,
sess_readahead = 0, sess_linger = 0, sess_herd = 0},
lastused = 1366638243.5577664, wrw = {wfd = 0x0, werr = 0, iov =
0x7f1631fe84c0, siov = 128, niov = 0, liov = 0, cliov = 0, ciov = 128},
cond = {__data = {__lock = 0, __futex = 4,
__total_seq = 2, __wakeup_seq = 2, __woken_seq = 2, __mutex
= 0x7f164152d3a8, __nwaiters = 0, __broadcast_seq = 0},
__size =
"\000\000\000\000\004\000\000\000\002\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\250\323RA\026\177\000\000\000\000\000\000\000\000\000",
__align = 17179869184}, list = {vtqe_next = 0x7f16327fcac0, vtqe_prev =
0x7f1641514160}, sp = 0x7f16415e1008, vcl = 0x0, wlb = 0x7f1631ff9a60, wlp
= 0x7f1631ff9a70, wle = 0x7f1631ffba60, wlr = 1,
sha256ctx = 0x7f1631ffbe40, htc = {{magic = 1041886673, fd = 13,
maxbytes = 32768, maxhdr = 8192, ws = 0x7f1631ffbcf8, rxbuf = {
b = 0x7f1631fe9ab8 "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD
HTML 2.0//EN\">\n<html><head>\n<title>501 Method Not
Implemented</title>\n</head><body>\n<h1>Method Not
Implemented</h1>\n<p>get to /index.html not supported.<br />\n</p>\n"...,
e = 0x7f1631fe9bd0 ""}, pipeline = {b = 0x0, e = 0x0}}}, ws = {{magic =
905626964, overflow = 0, id = 0x460097 "wrk", s = 0x7f1631fe9a50
"X-Varnish: 1037044295",
f = 0x7f1631fe9ab8 "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD
HTML 2.0//EN\">\n<html><head>\n<title>501 Method Not
Implemented</title>\n</head><body>\n<h1>Method Not
Implemented</h1>\n<p>get to /index.html not supported.<br />\n</p>\n"...,
r = 0x0, e = 0x7f1631ff9a50 ""}}, bereq = 0x7f1631fe95d0, beresp =
0x7f1631fe9150, resp = 0x7f1631fe8cd0, exp = {ttl = -1, grace = -1, keep =
-1, age = 0,
entered = 0}, storage_hint = 0x0, body_status = BS_NONE, vfp =
0x0, vgz_rx = 0x0, vef_priv = 0x0, fetch_failed = 0, do_stream = 0, do_esi
= 0, do_gzip = 0, is_gzip = 0, do_gunzip = 0,
is_gunzip = 0, do_close = 0, h_content_length = 0x0, sctx = 0x0,
vep = 0x0, gzip_resp = 0, l_crc = 0, crc = 0, connect_timeout = 0,
first_byte_timeout = 0, between_bytes_timeout = 0,
res_mode = 72, acct_tmp = {first = 0, sess = 0, req = 1, pipe =
0, pass = 1, fetch = 0, hdrbytes = 0, bodybytes = 0}}
sha256 = {state = {0, 0, 0, 0, 0, 0, 0, 0}, count = 0, buf =
'\000' <repeats 63 times>}
stats_clean = 1
__func__ = "wrk_thread_real"
#10 0x00007f1641c478ca in start_thread () from /lib/libpthread.so.0
No symbol table info available.
#11 0x00007f16419aeb6d in clone () from /lib/libc.so.6
No symbol table info available.
#12 0x0000000000000000 in ?? ()
No symbol table info available.

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

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


varnish-bugs at varnish-cache

Apr 22, 2013, 7:52 AM

Post #9 of 15 (267 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by coennie):

Thnx @bokkepoot

@martin I assume you have enough now? Or do you need the other dump
aswell?

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

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


varnish-bugs at varnish-cache

Apr 23, 2013, 11:53 PM

Post #10 of 15 (261 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by coennie):

I've replaced the error part with the minimal and now it WORKS as it
should!

sub vcl_error {
return(deliver);
}

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

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


varnish-bugs at varnish-cache

May 31, 2013, 4:47 AM

Post #11 of 15 (200 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+--------------------
Reporter: robroy | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+--------------------

Comment (by lygie):

Hi,
is it the wrong way to use a custom error-page like this?
I may have a similar issue, as i have random segfaults about every 10000
connections, too.
vcl_error looks like this:

{{{
sub vcl_error {
set obj.http.Content-Type = "text/html; charset=utf-8";
if (obj.status == 750) {
set obj.http.Location = req.http.X-Redirect;
set obj.status = 302;
return(deliver);
} else if (obj.status == 751) {
set obj.status = 200;
set obj.response = "OK";
synthetic {"
<html>
<head>
<meta name="referrer" content="never">
<meta http-equiv="refresh" content="0;url="} +
req.http.X-Redirect + {"">
</head>
<body>
</body>
</html>
"};
return(deliver);
} else {
synthetic {"
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>"} + obj.status + " " + obj.response +
{"</title>
</head>
<body>
<h1>Error "} + obj.status + " " + obj.response +
{"</h1>
<p>"} + obj.response + {"</p>
<h3>Guru Meditation:</h3>
<p>XID: "} + req.xid + {"</p>
<address><a href="http://www.varnish-
cache.org/">Varnish</a></address>
</body>
</html>
"};
return(deliver);
}
}

}}}

I was never able to reproduce the error by myself. Purging has no
influence, I tried to make some wired testing connections, but ll are
fine. Only the live system crashes every 10000 connections.

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

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


varnish-bugs at varnish-cache

Jun 10, 2013, 3:55 AM

Post #12 of 15 (192 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+---------------------
Reporter: robroy | Owner: martin
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+---------------------
Changes (by martin):

* owner: => martin


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

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


varnish-bugs at varnish-cache

Jul 22, 2013, 5:31 AM

Post #13 of 15 (89 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+---------------------
Reporter: robroy | Owner: martin
Type: defect | Status: new
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution:
Keywords: segfault libvarnish.so |
------------------------------------+---------------------

Comment (by martin):

This error is caused by passing an empty string to synthetic as the first
part of a string list. This happens because either the file read through
std.fileread is non-existant, or the file is too large to fit in the
workspace while dealing with the temporary header variable in the
vcl_error code. (Note that the synthetic function is able to accept the
result from std.fileread directly, making it unnecessary to pass it
through a temp header. Using the temp header will also result in a large
HTTP header being passed to the client, wasting bandwidth). Patch for this
issue has been sent to the dev list awaiting review.

Martin

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

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


varnish-bugs at varnish-cache

Aug 12, 2013, 3:26 AM

Post #14 of 15 (3 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+---------------------
Reporter: robroy | Owner: martin
Type: defect | Status: closed
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution: fixed
Keywords: segfault libvarnish.so |
------------------------------------+---------------------
Changes (by Martin Blix Grydeland <martin@…>):

* status: new => closed
* resolution: => fixed


Comment:

In [7ec9d11ee2e9d8f8e3084e6a0e95b9b97c10a93a]:
{{{
#!CommitTicketReference repository=""
revision="7ec9d11ee2e9d8f8e3084e6a0e95b9b97c10a93a"
Fix seg fault in VRT_synth_page when the string list has a NULL
pointer as the first element.

Fixes: #1287
}}}

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

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


varnish-bugs at varnish-cache

Aug 12, 2013, 3:29 AM

Post #15 of 15 (4 views)
Permalink
Re: #1287: Varnish 3.0.3 - segfault in libvarnish.so. [In reply to]

#1287: Varnish 3.0.3 - segfault in libvarnish.so.
------------------------------------+---------------------
Reporter: robroy | Owner: martin
Type: defect | Status: closed
Priority: normal | Milestone:
Component: varnishd | Version: trunk
Severity: normal | Resolution: fixed
Keywords: segfault libvarnish.so |
------------------------------------+---------------------

Comment (by Martin Blix Grydeland <martin@…>):

In [88d785b3a963105dd76c49ba2e4303afabc5e1db]:
{{{
#!CommitTicketReference repository=""
revision="88d785b3a963105dd76c49ba2e4303afabc5e1db"
Fix seg fault in VRT_synth_page when the string list has a NULL
pointer as the first element.

Fixes: #1287
}}}

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

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

Varnish bugs RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.