Skip to content

HostDBInfo::alloc() assert for iobuf_index >= 0 #6850

Description

@sudheerv

Noticed another assert in ats9 this time in HostDBInfo::alloc() and this assert is slightly more clear. than #6849 which could well be due to the same issue.

proxy.config.io.max_buffer_size is set to the default value of 32K in our prod, and the size that's being asked here is larger than that (43K). As a result, iobuffer_size_to_index() returns -43K (since the max_io_buf_size is set to 32K or iobuf index = 8).

It's not clear yet why this assert isn't tripping in our non-ats9 prod - the code seems to be identical in our non-ats9 version as well, so, it's very surprising that this assert never once fired :-/

#0  0x00002ab14f55d207 in raise () from /lib64/libc.so.6
(gdb) bt
#0  0x00002ab14f55d207 in raise () from /lib64/libc.so.6
#1  0x00002ab14f55e8f8 in abort () from /lib64/libc.so.6
#2  0x00002ab14cc1d35b in ink_abort (message_format=message_format@entry=0x2ab14cc9a2a7 "%s:%d: failed assertion `%s`") at ink_error.cc:99
#3  0x00002ab14cc1a045 in _ink_assert (expression=expression@entry=0x80e86b "iobuffer_index >= 0", file=file@entry=0x80e855 "./I_HostDBProcessor.h", line=line@entry=158) at ink_assert.cc:37
#4  0x0000000000674de4 in HostDBInfo::alloc (size=43768, this=<optimized out>) at ./I_HostDBProcessor.h:158
#5  0x0000000000673037 in HostDBContinuation::dnsEvent (this=0x2ab1527a8ea0, event=<optimized out>, e=0x2ab156660000) at HostDB.cc:1302
#6  0x00000000006869a9 in handleEvent (data=0x2ab156660000, event=600, this=0x2ab1527a8ea0) at /export/content/data/multiproduct-post-commit/i001/workspace/ats-core_dda77c0caf7d2719229197d3b11eaa30288bdcd5/ats9/src/iocore/eventsystem/I_Continuation.h:190
#7  DNSEntry::postOneEvent (this=0x2ab1639f5630) at DNS.cc:1450
#8  0x00000000007bf371 in handleEvent (data=0x2ab161663c20, event=1, this=0x2ab1639f5630) at I_Continuation.h:190
#9  EThread::process_event (this=this@entry=0x2ab155806000, e=e@entry=0x2ab161663c20, calling_code=1) at UnixEThread.cc:127
#10 0x00000000007bf9ae in EThread::process_queue (this=this@entry=0x2ab155806000, NegativeQueue=NegativeQueue@entry=0x2ab163504e00, ev_count=ev_count@entry=0x2ab163504dfc, nq_count=nq_count@entry=0x2ab163504df8) at UnixEThread.cc:162
#11 0x00000000007bff3b in EThread::execute_regular (this=this@entry=0x2ab155806000) at UnixEThread.cc:222
#12 0x00000000007c0712 in EThread::execute (this=0x2ab155806000) at UnixEThread.cc:327
#13 0x00000000007beab9 in spawn_thread_internal (a=0x2ab15096b740) at Thread.cc:92
#14 0x00002ab14e873dd5 in start_thread () from /lib64/libpthread.so.0
#15 0x00002ab14f624ead in clone () from /lib64/libc.so.6
(gdb) f 4

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions