Karthik created QPID-8512:
-----------------------------

             Summary: QPID threads hang on shutdown
                 Key: QPID-8512
                 URL: https://issues.apache.org/jira/browse/QPID-8512
             Project: Qpid
          Issue Type: Bug
          Components: C++ Client
         Environment: SuSE Linux Enterprise Server (SLES), Service Pack 2 (SP2)
            Reporter: Karthik


QPID Threads in the client hang on shutdown. This issue seems to specifically 
occur in SLES 12 SP2 (SuSE Linux Service Pack 2). It was working fine on SLES 
15 SP1 and older versions like SLES11, 12 etc. 

QPID Client/Broker Version: 0.8

On debugging into the QPID code, observed that the hang occurs in this function 
and in the ::epoll_wait call.
{{}}
{{*qpid/sys/epoll/EpollPoller.cpp*{{}}}}

{{{{Poller::Event Poller::wait(Duration timeout) {}}}}

{{{{     .}}}}{{..}}

{{      *int rc = ::epoll_wait(impl->epollFd, &epe, 1, timeoutMs);*}}

{{      ...}}

{{}}}

 

Thread backtrace on shutdown which hang:
{{Thread }}{{8}} {{(Thread }}{{0x7fffe27fc700}} {{(LWP }}{{29944}}{{)):}}
{{#}}{{0}}  {{0x00007ffff2dff126}} {{in epoll_pwait () from 
/lib64/libc.so.}}{{6}}
{{#}}{{1}}  {{0x00007ffff5abc461}} {{in qpid::sys::Poller::wait 
(}}{{this}}{{=}}{{0x6eb230}}{{, timeout=...) at 
qpid/sys/epoll/EpollPoller.cpp:}}{{568}}
{{#}}{{2}}  {{0x00007ffff5abcf31}} {{in qpid::sys::Poller::run 
(}}{{this}}{{=}}{{0x6eb230}}{{) at qpid/sys/epoll/EpollPoller.cpp:}}{{518}}
{{#}}{{3}}  {{0x00007ffff5ab3caa}} {{in qpid::sys::(anonymous 
namespace)::runRunnable (p=}}{{0x6}}{{) at qpid/sys/posix/Thread.cpp:}}{{35}}
{{#}}{{4}}  {{0x00007ffff77b44f9}} {{in start_thread () from 
/lib64/libpthread.so.}}{{0}}
{{#}}{{5}}  {{0x00007ffff2dfefbf}} {{in clone () from /lib64/libc.so.}}{{6}}
 
{{Thread }}{{3}} {{(Thread }}{{0x7ffff1681700}} {{(LWP }}{{29939}}{{)):}}
{{#}}{{0}}  {{0x00007ffff2dff126}} {{in epoll_pwait () from 
/lib64/libc.so.}}{{6}}
{{#}}{{1}}  {{0x00007ffff5abc461}} {{in qpid::sys::Poller::wait 
(}}{{this}}{{=}}{{0x6eb230}}{{, timeout=...) at 
qpid/sys/epoll/EpollPoller.cpp:}}{{568}}
{{#}}{{2}}  {{0x00007ffff5abcf31}} {{in qpid::sys::Poller::run 
(}}{{this}}{{=}}{{0x6eb230}}{{) at qpid/sys/epoll/EpollPoller.cpp:}}{{518}}
{{#}}{{3}}  {{0x00007ffff5ab3caa}} {{in qpid::sys::(anonymous 
namespace)::runRunnable (p=}}{{0x6}}{{) at qpid/sys/posix/Thread.cpp:}}{{35}}
{{#}}{{4}}  {{0x00007ffff77b44f9}} {{in start_thread () from 
/lib64/libpthread.so.}}{{0}}
{{#}}{{5}}  {{0x00007ffff2dfefbf}} {{in clone () from /lib64/libc.so.}}{{6}}
 
{{Thread }}{{1}} {{(Thread }}{{0x7ffff7fb97c0}} {{(LWP }}{{29842}}{{)):}}
{{#}}{{0}}  {{0x00007ffff77b58bd}} {{in pthread_join () from 
/lib64/libpthread.so.}}{{0}}
{{#}}{{1}}  {{0x00007ffff5ab3db3}} {{in qpid::sys::Thread::join 
(}}{{this}}{{=<optimized out>) at qpid/sys/posix/Thread.cpp:}}{{70}}
{{#}}{{2}}  {{0x00007ffff5716b09}} {{in qpid::client::(anonymous 
namespace)::IOThread::~IOThread (}}{{this}}{{=}}{{0x7ffff597b6a0}} 
{{<qpid::client::(anonymous namespace)::theIO()::io>, __in_chrg=<optimized 
out>) at qpid/client/ConnectionImpl.cpp:}}{{140}}
{{#}}{{3}}  {{0x00007ffff2d3f138}} {{in __run_exit_handlers () from 
/lib64/libc.so.}}{{6}}
{{#}}{{4}}  {{0x00007ffff2d3f18a}} {{in exit () from /lib64/libc.so.}}{{6}}
{{#}}{{5}}  {{0x00007ffff2d27351}} {{in __libc_start_main () from 
/lib64/libc.so.}}{{6}}
{{#}}{{6}}  {{0x000000000040f179}} {{in _start () at 
../sysdeps/x86_64/elf/start.S:}}{{113}}
{{}}
{{}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to