OEG Gateway Crashes In libRtMonitoring.so (Doc ID 1584501.1)

Last updated on AUGUST 18, 2016

Applies to:

Oracle API Gateway - Version 11.1.1.6.1 to 11.1.2 [Release 11gR1 to 11gR2]
Information in this document applies to any platform.

Symptoms

OEG 11.1.1.6.1 or 11.1.2.1.0 on Linux. OEG crashes with a very deep recursion in globalmetricsmonitor.cpp from libRtMonitoring.so:

Two different stack trace have been observed:

Core was generated by `Oracle Enterprise Gateway (vshell) bin/vshell -h /oracle/enterprisegateway -v -'.
Program terminated with signal 11, Segmentation fault.
#0 0x0000003e2aa89542 in std::ostreambuf_iterator > std::num_put > >::_M_insert_int(std::ostreambuf_iterator >, std::ios_base&, char, long) const () from /usr/lib64/libstdc++.so.6
(gdb) bt
#0 0x0000003e2aa89542 in std::ostreambuf_iterator > std::num_put > >::_M_insert_int(std::ostreambuf_iterator >, std::ios_base&, char, long) const () from /usr/lib64/libstdc++.so.6
#1 0x0000003e2aa898c7 in std::num_put > >::do_put(std::ostreambuf_iterator >, std::ios_base&, char, long) const () from /usr/lib64/libstdc++.so.6
#2 0x0000003e2aa90e00 in std::basic_ostream >::operator<#3 0x00007fa2b82fc3d9 in Vordel::ChunkedEncodingOutputBuffer::xsputn (this=0x7fa2882017b0, p=0x7fa2b8f80f9c " target=\"", len=9) at common.cpp:1048
#4 0x0000003e2aa90311 in std::basic_ostream >& std::operator<< <std::char_traits >(std::basic_ostream >&, char const*) () from /usr/lib64/libstdc++.so.6
#5 0x00007fa2b8f6533e in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:350
#6 0x00007fa2b8f65552 in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:383
#7 0x00007fa2b8f65552 in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:383
#8 0x00007fa2b8f65552 in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:383
#9 0x00007fa2b8f65552 in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:383
#10 0x00007fa2b8f65552 in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:383
[....] hundreds
#1556 0x00007fa2b8f65552 in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:383
#1557 0x00007fa2b8f654fe in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:379
#1558 0x00007fa2b8f654fe in Vordel::GlobalMetricsMonitorSingleton::exportStatTarget (this=0x7fa2b9188880, output=..., statTarget=...) at globalmetricsmonitor.cpp:379
#1559 0x00007fa2b8f6b784 in Vordel::GlobalMetricsMonitorSingleton::exportStatTargetsAndStats (this=0x7fa2b9188880, statTargetId=, output=..., timeWindowType=0,
  statGroups=15, exportStatTargets=, exportStats=false) at globalmetricsmonitor.cpp:503
#1560 0x00007fa2b833a8a3 in Vordel::MetricsFeedServer::invoke (this=0x7fa2a8556a30, xact=0x51666990) at metricsfeedserver.cpp:370
#1561 0x00007fa2b8305f24 in Vordel::ServerTransaction::process (this=0x51666990) at server.cpp:196
#1562 0x00007fa2b8306b9d in Vordel::HTTPContext::incomingTransaction (this=0x51669e00, connection=0x7fa27400c7a0, initialInput=0x516695d0, id=0x7fa2881c2eb0) at server.cpp:484
#1563 0x00007fa2b83025fd in Vordel::HTTPProtocol::handleConnection (this=, service=0x22cbba0, con=0x7fa27400c7a0, id=0x7fa2881c2eb0) at http.cpp:58
#1564 0x00007fa2b91fb7eb in Vordel::PipeWorkItem::work (this=0x7fa2740a1d90) at loopback.cpp:206
#1565 0x00007fa2b91d33e8 in Vordel::NetService::runDaemon (this=0x22cbba0, curthread=) at dwe.cpp:589
#1566 0x00007fa2b91d3547 in Vordel::DaemonThread::run (this=0x38b26a0) at dwe.cpp:837
#1567 0x00007fa2bad1f5f9 in Vordel::Thread::entrypoint (this=0x38b26a0) at thread.cpp:152
#1568 0x00007fa2bad1f689 in Vordel::platformTrampoline (arg=0x3e2acefd50) at thread.cpp:133
#1569 0x0000003e1940673d in start_thread () from /lib64/libpthread.so.0
#1570 0x0000003e188d44bd in clone () from /lib64/libc.so.6
(gdb) Quit


AND

Program terminated with signal 11, Segmentation fault.
#0 0x0000003286089542 in std::ostreambuf_iterator > std::num_put > >::_M_insert_int(std::ostreambuf_
iterator >, std::ios_base&, char, long) const () from /usr/lib64/libstdc++.so.6
(gdb) bt
#0 0x0000003286089542 in std::ostreambuf_iterator > std::num_put > >::_M_insert_int(std::ostreambuf_
iterator >, std::ios_base&, char, long) const () from /usr/lib64/libstdc++.so.6
#1 0x00000032860898c7 in std::num_put > >::do_put(std::ostreambuf_iterator >, std::ios_base&, char, long)
const () from /usr/lib64/libstdc++.so.6
#2 0x0000003286090e00 in std::basic_ostream >::operator<#3 0x00007f0314ca23d9 in Vordel::ChunkedEncodingOutputBuffer::xsputn (this=0x7f02dc17b200, p=0x7f02dc499ab8 "statTarget", len=10) at common.cpp:1048
#4 0x000000328608e5dd in std::basic_ostream >& std::operator<< , std::allocator >(std::basic_ostream >
&, std::basic_string, std::allocator > const&) () from /usr/lib64/libstdc++.so.6
#5 0x00007f031590b32f in ?? () from /oracle/enterprisegateway/platform/lib/libRtMonitoring.so
#6 0x0000000044446590 in ?? ()
#7 0x0000000000000045 in ?? ()
#8 0x00007f0314cf149b in ?? () from /oracle/enterprisegateway/platform/lib/libHTTP.so
#9 0x00007f02dc5b03a0 in ?? ()
#10 0x000000004453f490 in ?? ()
#11 0x00007f0315b2e880 in ?? ()
#12 0x00000000445421f8 in ?? ()
#13 0x0000000000000000 in ?? ()

 

Changes

The problem shows up only if Real-Time Monitoring is enabled.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms