[ https://issues.apache.org/jira/browse/TS-3544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Steven Feltner updated TS-3544: ------------------------------- Fix Version/s: 6.0.0 Summary: traffic_logcat asserts when fmt_buf_bytes = 0 (was: traffic_logcat crashes ) > traffic_logcat asserts when fmt_buf_bytes = 0 > --------------------------------------------- > > Key: TS-3544 > URL: https://issues.apache.org/jira/browse/TS-3544 > Project: Traffic Server > Issue Type: Bug > Components: Logging > Reporter: Steven Feltner > Fix For: 6.0.0 > > > 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)