Description
Triggering an assertion when I use the cruuid log field:
Thread 13542, [ET_NET 1]: 0 0x000000000051201d crash_logger_invoke(int, siginfo_t*, void*) + 0x98 1 0x00002b0664cc0330 __restore_rt + (nil) 2 0x00002b0665928c37 gsignal + 0x37 3 0x00002b066592c028 abort + 0x148 4 0x00002b0663a1ec54 ink_warning(char const*, ...) + (nil) 5 0x00002b0663a1c5ea ats_base64_encode(unsigned char const*, unsigned long, char*, unsigned long, unsigned long*) + (nil) 6 0x00000000006d52ea LogFieldList::marshal(LogAccess*, char*) + 0x84 7 0x00000000006e59ce LogObject::log(LogAccess*, char const*) + 0x6a4 8 0x00000000006e80b1 LogObjectManager::log(LogAccess*) + 0x7b 9 0x00000000006c0e6e Log::access(LogAccess*) + 0x29c 10 0x0000000000641df3 HttpSM::kill_this() + 0x571 11 0x0000000000631fb2 HttpSM::main_handler(int, void*) + 0x364 #6 0x00000000006d52ea in LogFieldList::marshal (this=0x1255170, lad=0x7ffff2ee3980, buf=0x12589e8 "") at LogField.cc:790 790 ink_assert(bytes % INK_MIN_ALIGN == 0); (gdb) l 785 char *ptr; 786 int bytes = 0; 787 for (LogField *f = first(); f; f = next(f)) { 788 ptr = &buf[bytes]; 789 bytes += f->marshal(lad, ptr); 790 ink_assert(bytes % INK_MIN_ALIGN == 0); 791 } 792 return bytes; 793 } 794 (gdb) p *f $1 = {m_name = 0x1257d80 "client_req_uuid", m_symbol = 0x1257da0 "cruuid", m_type = LogField::STRING, m_container = LogField::NO_CONTAINER, m_marshal_func = &virtual table offset 224, m_unmarshal_func = 0x6c5254 <LogAccess::unmarshal_str(char**, char*, int, LogSlice*)>, m_unmarshal_func_map = 0x0, m_agg_op = LogField::NO_AGGREGATE, m_agg_cnt = 0, m_agg_val = 0, m_milestone1 = TS_MILESTONE_LAST_ENTRY, m_milestone2 = TS_MILESTONE_LAST_ENTRY, m_time_field = false, m_alias_map = {m_ptr = 0x0}, m_set_func = NULL, link = {<SLink<LogField>> = {next = 0x1257dc0}, prev = 0x1257c00}, m_slice = {m_enable = false, m_start = 0, m_end = 2147483647}} (gdb) p bytes $2 = 198 (gdb) p bytes % 8 $3 = 6
Attachments
Issue Links
- links to