Steven Feltner created TS-3544:
----------------------------------

             Summary: traffic_logcat crashes 
                 Key: TS-3544
                 URL: https://issues.apache.org/jira/browse/TS-3544
             Project: Traffic Server
          Issue Type: Bug
          Components: Logging
            Reporter: Steven Feltner


While reading a 766MB squid.blog, traffic_logcat seg faults.

Here is a live gdb session:

1429614621.421 4 173.252.120.113 TCP_MISS/200 6392 GET http://72.167.230.251/ - 
DIRECT/72.167.230.251 text/html
1429614621.428 3 197.232.18.238 TCP_MISS/200 3663 GET 
http://50.62.195.13/wp-includes/js/jquery/jquery-migrate.mi
FATAL: LogFile.cc:541: failed assert `fmt_line_bytes > 0`

Program received signal SIGABRT, Aborted.
0x0000003949832625 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install 
glibc-2.12-1.149.el6_6.5.x86_64 hwloc-1.5-3.el6_5.x86_64 
keyuibselinux-2.0.94-5.8.el6.x86_64 libstdc++-4.4.7-11.el6.x86_64 
libxml2-2.7.6-17.el6_6.1.x86_64 nss-softokn-freebl-re-7.8-6.el6.x86_64 
tcl-8.5.7-6.el6.x86_64 xz-libs-4.999.9-0.5.beta.20091007git.el6.x86_64 
zlib-1.2.3-29.el6.x86_
(gdb) bt full
#0  0x0000003949832625 in raise () from /lib64/libc.so.6
No symbol table info available.
#1  0x0000003949833e05 in abort () from /lib64/libc.so.6
No symbol table info available.
#2  0x0000003057e2705a in ink_die_die_die (fmt=0x3057e333a8 "%s:%d: failed 
assert `%s`", ap=0x7ffffffe6b40) at in
No locals.
#3  ink_fatal_va(const char *, typedef __va_list_tag __va_list_tag *) 
(fmt=0x3057e333a8 "%s:%d: failed assert `%s
        msg = "FATAL: LogFile.cc:541: failed assert `fmt_line_bytes > 0`", 
'\000' <repeats 966 times>
#4  0x0000003057e270ed in ink_fatal (message_format=0x10c5f <Address 0x10c5f 
out of bounds>) at ink_error.cc:73
        ap = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 
0x7ffffffe6c20, reg_save_area = 0x7ffffffe6b60
#5  0x0000003057e24a05 in _ink_assert (expression=0xffffffffffffffff <Address 
0xffffffffffffffff out of bounds>,
No locals.
#6  0x0000000000431544 in LogFile::write_ascii_logbuffer 
(buffer_header=0x7ffffffee4f0, fd=1, path=0x460c6f ".",
        iter = {m_in_network_order = false, m_next = 0x7fffffff3150 
"\035\060\066U", m_iter_entry_count = 1, m_bu
        fmt_line_bytes = 0
        fmt_buf = "1429614620.635 1 198.58.10.197 TCP_MISS/200 3926 GET 
http://72.167.243.35/times/vasco.png - DI
        format_type = LOG_FORMAT_CUSTOM
        __func__ = "write_ascii_logbuffer"
        fmt_line = "1429614621.436 11 104.236.70.110 TCP_MISS/400 383 GET 
http://50.62.195.13/wp-includes/js/jque
        entry_header = <value optimized out>
        fmt_buf_bytes = 0
        bytes = 0
        fieldlist_str = 0x7ffffffee536 
"cqtq,ttms,chi,crc,pssc,psql,cqhm,cquc,caun,phr,pqsn,psct"
        printf_str = 0x7ffffffee56f "\377 \377 \377 \377/\377 \377 \377 \377 
\377 \377/\377 \377"
#7  0x000000000041b258 in process_file (in_fd=12, out_fd=1) at logcat.cc:164
        first_read_size = 8
        header_size = 64
        byte_count = <value optimized out>
        header = 0x7ffffffee4f0
        second_read_size = 56
        alt_format = 0x0
        buffer = 
"\316\372\316\n\002\000\000\000\004\000\000\000\310g\000\000%\000\000\000\035\060\066U\036\060\0000\000\000squid\000cqtq,ttms,chi,crc,pssc,psql,cqhm,cquc,caun,phr,pqsn,psct\000\377
 \377 \377 \377/\377 \377 
\37K\000\000\000\000\000\000\000\000\000\000\v\000\000\000\000\000\000\000\002\000+\222h\354Fn3\000\000\000\000\000\
        buffer_bytes = <value optimized out>
        bytes = <value optimized out>
        __func__ = "process_file"
        nread = 26504
#8  0x000000000041b4f7 in main (argv=<value optimized out>) at logcat.cc:297
        in_fd = 12
        i = <value optimized out>
        out_fd = 1
        error = <value optimized out>
(gdb) frame 6
#6  0x0000000000431544 in LogFile::write_ascii_logbuffer 
(buffer_header=0x7ffffffee4f0, fd=1, path=0x460c6f ".", alt_format=0x0) at 
LogFile.cc:541
541         ink_assert(fmt_line_bytes > 0);
(gdb) p fmt_line_bytes
$1 = 0
(gdb) entry_header
Undefined command: "entry_header".  Try "help".
(gdb) p entry_header
$2 = <value optimized out>
(gdb) p *entry_header
value has been optimized out
(gdb) p entry_header->entry_len
value has been optimized out
(gdb) quit




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to