Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Possible stack overflow in APIv2 in CompoundValueNode.cpp when sending nested request #3605

Closed
0xricksanchez opened this issue Jan 28, 2020 · 3 comments
Milestone

Comments

@0xricksanchez
Copy link

Check my reasoning in #3603

Sending "malformed" JSON entities to the context.Orion_LD (compiled with an Address Sanitizer) V2 API can result in a stack overflow since the context broker tries to parse all the objects.
As seen from the backtrace the problem is caused by massive allocation requests in the CompundValueNode.cpp:459 file.
In particular here:

/* ****************************************************************************
*
* shortShow -
*/
void CompoundValueNode::shortShow(const std::string& indent)
{
    [...]
    else if (rootP == this)     <------------
    {
        LM_T(LmtCompoundValue,      ("%s%s (toplevel object)",
                                            indent.c_str(),
                                            name.c_str()));
  }
[...]
}

Crash back trace:

orion_1  | ASAN:DEADLYSIGNAL
orion_1  | =================================================================
orion_1  | ==1==ERROR: AddressSanitizer: stack-overflow on address 0x7f9c92442be0 (pc 0x55f98aed094c bp 0x7f9c92444ed0sp 0x7f9c92442bd0 T30653)
orion_1  |     #0 0x55f98aed094b in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:459
orion_1  |     #1 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #2 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #3 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #4 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #5 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #6 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #7 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #8 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #9 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #10 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #11 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #12 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #13 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #14 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #15 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #16 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #17 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #18 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #19 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #20 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #21 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #22 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #23 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #24 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #25 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #26 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #27 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #28 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #29 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #30 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #31 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #32 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #33 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #34 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #35 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #36 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #37 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #38 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #39 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #40 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #41 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #42 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #43 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #44 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #45 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #46 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #47 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #48 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #49 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #50 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #51 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #52 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #53 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #54 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #55 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #56 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #57 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #58 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #59 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #60 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #61 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #62 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #63 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #64 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #65 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #66 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #67 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #68 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #69 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #70 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #71 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #72 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #73 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #74 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #75 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #76 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #77 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #78 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #79 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #80 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #81 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #82 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #83 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #84 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #85 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #86 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #87 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #88 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #89 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #90 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #91 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #92 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #93 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #94 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #95 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #96 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #97 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #98 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #99 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #100 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #101 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #102 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #103 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #104 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #105 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #106 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #107 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #108 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #109 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #110 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #111 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #112 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #113 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #114 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #115 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #116 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #117 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #118 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #119 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #120 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #121 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #122 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #123 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #124 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #125 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #126 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #127 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #128 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #129 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #130 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #131 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #132 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #133 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #134 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #135 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #136 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #137 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #138 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #139 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #140 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #141 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #142 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #143 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #144 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #145 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #146 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #147 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #148 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #149 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #150 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #151 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #152 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #153 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #154 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #155 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #156 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #157 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #158 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #159 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #160 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #161 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #162 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #163 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #164 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #165 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #166 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #167 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #168 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #169 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #170 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #171 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #172 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #173 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #174 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #175 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #176 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #177 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #178 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #179 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #180 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #181 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #182 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #183 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #184 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #185 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #186 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #187 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #188 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #189 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #190 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #191 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #192 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #193 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #194 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #195 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #196 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #197 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #198 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #199 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #200 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #201 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #202 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #203 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #204 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #205 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #206 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #207 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #208 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #209 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #210 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #211 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #212 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #213 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #214 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #215 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #216 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #217 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #218 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #219 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #220 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #221 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #222 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #223 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #224 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #225 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #226 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #227 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #228 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #229 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #230 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #231 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #232 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #233 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #234 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #235 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #236 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #237 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #238 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #239 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #240 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #241 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #242 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #243 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #244 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #245 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #246 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #247 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #248 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #249 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |     #250 0x55f98aed158a in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:513
orion_1  |
orion_1  | SUMMARY: AddressSanitizer: stack-overflow /opt/fiware-orion/src/lib/parse/CompoundValueNode.cpp:459 in orion::CompoundValueNode::check(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
orion_1  | Thread T30653 created by T14 here:
orion_1  |     #0 0x7f9ca3057d2f in __interceptor_pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x37d2f)
orion_1  |     #1 0x55f98af8b87f in create_thread /opt/libmicrohttpd-0.9.48/src/microhttpd/daemon.c:1230
orion_1  |
orion_1  | Thread T14 created by T0 here:
orion_1  |     #0 0x7f9ca3057d2f in __interceptor_pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x37d2f)
orion_1  |     #1 0x55f98af8b87f in create_thread /opt/libmicrohttpd-0.9.48/src/microhttpd/daemon.c:1230
orion_1  |
orion_1  | ==1==ABORTING

Recorded responsible test case:

Too long to directly attach it in the issue.
Please check the test case here

@fgalan
Copy link
Member

fgalan commented Jan 29, 2020

Thanks for the feedback!

I have tried to reproduce the probem, using this script which uses exactly your same payload but the broker works properly (i.e. doesn't crash and responses with error):

$ bash curl_test2.sh 
{"error": "InternalError","description": "Database Error &#40;collection: orion.entities - insert&#40;&#41;: <......> } - exception: OperationException: { ok: 0.0, errmsg: &quot;Client Error: bad object in message: BSONObj exceeded maximum nested object depth: 200&quot;, code: 22, codeName: &quot;InvalidBSON&quot; }&#41;"}

CB version: 4735a8f (the one at master at the present moment).

Thus, I'm afraid I'm unable to reproduce the crash. Could you confirm the test using my curl_test2.sh script? Which CB version are you testing?

@fgalan
Copy link
Member

fgalan commented Jan 29, 2020

(However, even in the case I don't get a crash, probably it's a good idea to detect this problem at CB level as a 400 error instead of a 500 error detected at MongoDB level)

@fgalan
Copy link
Member

fgalan commented Mar 20, 2020

I have been unable to reproduce this problem. Moreover, PR #3615 adds test cases covering the cases in the issue (although I haven't got so far explicit confirmation, I could have made some mistake imitating the same cases).

I'm closing the issue given that, under my perspective, there is nothing else we can do. Of course, if we receive more feedback from @0xricksanchez and new actions have to be taken, the issue could be reopened.

@fgalan fgalan closed this as completed Mar 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants