Comment 1 for bug 1548891

Revision history for this message
Sundaresan Rajangam (srajanga) wrote :

Program terminated with signal SIGABRT, Aborted.
#0 0x00007fc25da7fcc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) fr 5
#5 SelectQuery::process_query (this=0x7fc2280838c0) at controller/src/query_engine/select.cc:451
451 controller/src/query_engine/select.cc: No such file or directory.
(gdb) p it
$1 = {timestamp = 1456238548036787, info = std::vector of length 2, capacity 2 = {{which_ = 1, storage_ = {<boost::detail::aligned_storage::aligned_storage_imp<32ul, 8ul>> = {data_ = {
            buf = "\250\060\177(\302\177\000\000\275\066\346c\274\353^Cd\000\000\000\000\000\000\000\060\241\000(\302\177\000", align_ = {<No data fields>}}}, static size = <optimized out>, static alignment = <optimized out>}}, {
      which_ = 4, storage_ = {<boost::detail::aligned_storage::aligned_storage_imp<32ul, 8ul>> = {data_ = {buf = "\024:`\211f{H\266\265e\331䔉\275]", '\000' <repeats 15 times>, align_ = {<No data fields>}}},
        static size = <optimized out>, static alignment = <optimized out>}}}}
(gdb) p json_string
$2 = "{\"Source|s\":\"csol1-node11\",\"cpu_info.cpu_share|d\":inf,\"cpu_info.mem_res|n\":0,\"cpu_info.mem_virt|n\":32703,\"cpu_info.one_min_cpuload|d\":6.9397e-310,\"cpu_info.used_sys_mem|n\":1545655913,\"name|s\":\"csol1-n"...
(gdb) p d
$3 = {<rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> >> = {static kDefaultArrayCapacity = <optimized out>, static kDefaultObjectCapacity = <optimized out>, data_ = {s = {
        str = 0x7fc22844e340 "\230\342D(\302\177", length = 7, hashcode = 7}, n = {i = {i = 675603264, padding = "\302\177\000"}, u = {u = 675603264, padding2 = "\302\177\000"}, i64 = 140471875986240, u64 = 140471875986240,
        d = 6.9402328131673157e-310}, o = {members = 0x7fc22844e340, size = 7, capacity = 7}, a = {elements = 0x7fc22844e340, size = 7, capacity = 7}}, flags_ = 0}, static kDefaultStackCapacity = <optimized out>, stack_ = {
    allocator_ = 0x7fc228003150, own_allocator_ = 0x7fc228003150, stack_ = 0x7fc22844de98 "", stack_top_ = 0x7fc22844de98 "", stack_end_ = 0x7fc22844e298 "Source|s", stack_capacity_ = 1024},
  parseError_ = 0x6cae30 "Expect a value here.", errorOffset_ = 50}
(gdb) set print elements 0
(gdb) p json_string
$4 = "{\"Source|s\":\"csol1-node11\",\"cpu_info.cpu_share|d\":inf,\"cpu_info.mem_res|n\":0,\"cpu_info.mem_virt|n\":32703,\"cpu_info.one_min_cpuload|d\":6.9397e-310,\"cpu_info.used_sys_mem|n\":1545655913,\"name|s\":\"csol1-node11\"}"
(gdb) p d.parseError_
$5 = 0x6cae30 "Expect a value here."

The json_string is invalid => \"cpu_info.cpu_share|d\":inf
iterating the json document without checking for parse error resulted in crash.