qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Scrum Europe (Created) (JIRA)" <j...@apache.org>
Subject [jira] [Created] (QPID-3897) Qpid c++ client always aborts while shutting down
Date Wed, 14 Mar 2012 08:31:39 GMT
Qpid c++ client always aborts while shutting down
-------------------------------------------------

                 Key: QPID-3897
                 URL: https://issues.apache.org/jira/browse/QPID-3897
             Project: Qpid
          Issue Type: Bug
          Components: C++ Client
    Affects Versions: 0.12
         Environment: SUSE Linux Enterprise Server 10 SP1 (i586)
Linux 2.6.16.46-0.12-bigsmp
            Reporter: Scrum Europe


We are using qpid c++ client to connect to the broker.
every time we try to stop our process, it results into Abort().

following is the trace just before we call exit() from our main thread:

=================================================================

Thread 3 (Thread -1234519136 (LWP 22893)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7b492cc in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x0886b747 in qpid::sys::Condition::wait ()
#3  0x0886b986 in qpid::sys::Monitor::wait ()
#4  0x0892bae2 in qpid::sys::Timer::run ()
#5  0x088c221c in qpid::sys::(anonymous namespace)::runRunnable ()
#6  0xb7b452ab in start_thread () from /lib/libpthread.so.0
#7  0xb79b0a4e in clone () from /lib/libc.so.6

Thread 2 (Thread -1226126432 (LWP 22892)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb79b11b6 in xdr_u_long () from /lib/libc.so.6
#2  0x088c4294 in qpid::sys::Poller::wait ()
#3  0x088c4a13 in qpid::sys::Poller::run ()
#4  0x088c221c in qpid::sys::(anonymous namespace)::runRunnable ()
#5  0xb7b452ab in start_thread () from /lib/libpthread.so.0
#6  0xb79b0a4e in clone () from /lib/libc.so.6

Thread 1 (Thread -1215440704 (LWP 22885)):
# --> shutdown procedure from main() thread which will call exit(). <--

=================================================================

Thread 1(LWP 22885) is our main() thread.
Thread 2(LWP 22892) No Idea. It was generated by qpid library.
Thread 3(LWP 22893) is heartbeat thread created by qpid.

NOW....
as soon as we execute exit() from main thread; Thread 2(LWP 22892) and Thread 3(LWP 22893)
exits....
but Thread 1(LWP 22885) results into abort() with following trace:

=================================================================

[Thread -1234519136 (LWP 22893) exited]
[Thread -1226126432 (LWP 22892) exited]
Invalid argument
qpidClient: ../include/qpid/sys/posix/Mutex.h:116: void qpid::sys::Mutex::lock(): Assertion
`0' failed.

Program received signal SIGABRT, Aborted.
0xffffe410 in __kernel_vsyscall ()


#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb791a8d0 in raise () from /lib/libc.so.6
#2  0xb791bff3 in abort () from /lib/libc.so.6
#3  0xb791401b in __assert_fail () from /lib/libc.so.6
#4  0x0883ad40 in qpid::sys::Mutex::lock ()
#5  0x0883ad5b in qpid::sys::ScopedLock<qpid::sys::Mutex>::ScopedLock ()
#6  0x088c86d7 in qpid::sys::DeletionManager<qpid::sys::PollerHandlePrivate>::AllThreadsStatuses::~AllThreadsStatuses
()
#7  --> shutdown procedure from main() thread after calling exit(). <--

=================================================================

This is reproducible every time.

We make sure that we call sender.close(), receiver.close(), session.close() and connection.close()
proerly before exiting.

Please Help....

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Mime
View raw message