Return-Path: Delivered-To: apmail-activemq-dev-archive@www.apache.org Received: (qmail 10986 invoked from network); 17 Sep 2010 16:31:39 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 17 Sep 2010 16:31:39 -0000 Received: (qmail 13213 invoked by uid 500); 17 Sep 2010 16:31:39 -0000 Delivered-To: apmail-activemq-dev-archive@activemq.apache.org Received: (qmail 12994 invoked by uid 500); 17 Sep 2010 16:31:36 -0000 Mailing-List: contact dev-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list dev@activemq.apache.org Received: (qmail 12986 invoked by uid 99); 17 Sep 2010 16:31:35 -0000 Received: from Unknown (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 17 Sep 2010 16:31:35 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of venable.devin@gmail.com designates 74.125.82.171 as permitted sender) Received: from [74.125.82.171] (HELO mail-wy0-f171.google.com) (74.125.82.171) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 17 Sep 2010 16:31:12 +0000 Received: by wyb35 with SMTP id 35so2453838wyb.2 for ; Fri, 17 Sep 2010 09:30:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=0v2KAEbhTMsz6zisd28OxF5QttfaJwgurTt8+6+Yj2k=; b=RCowtAjSWBrgmdQjcm84iWY95vh8xXpLgDhByqno931dwk5gqx4X7kcFQIsHcHPOZI AszJRWISb2LZL2GUKk+X/bvNquMRM67rSk1PyBln3s5TnYVCMe+Mz2Ff5TAjMsoYoYFr DYAYhMC20KMmZjm8bDYbRUvXNqLV87akvj+98= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=AX1uUnmAoUIMkH2NmfKeyl12KXo56mjmF1DxRKo3wUsHUJTVE2UEdiQy0VgRu1vcgj 1qHJLF3dtAdAt/tb47181EfKMKyml5vtYAx/IpePkU5vx3vdqkJNWL48IvVnW/T3MeyW 8P6BhtCD0AH/eidGnB5mKd9JX61A9X3wwR70s= MIME-Version: 1.0 Received: by 10.216.174.143 with SMTP id x15mr968978wel.105.1284741052138; Fri, 17 Sep 2010 09:30:52 -0700 (PDT) Received: by 10.216.233.204 with HTTP; Fri, 17 Sep 2010 09:30:52 -0700 (PDT) In-Reply-To: <1284737064.2377.12.camel@office> References: <1284737064.2377.12.camel@office> Date: Fri, 17 Sep 2010 11:30:52 -0500 Message-ID: Subject: Re: CMS and EINTR signal From: Devin Venable To: dev@activemq.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org >> all is well. Since implementing activemq, a new error type is showing >> up that wasn't handled by our logic: EINTR which means "Interrupted >> system call". >> > > What version of ActiveMQ-CPP are you using? > What OS and Compiler? Lib: activemq-cpp-library-3.2.3 OS: Linux centdev 2.6.18-194.8.1.el5 #1 SMP Thu Jul 1 19:04:48 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux Compiler: gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48) > > Have you tracked where the EINTR signal is coming from? =A0It shouldn't b= e > coming from CMS unless there is a bug in the code. =A0It would be helpful > to know what operation is throwing the EINTR signal. > Yes, the EINTR signal is coming from a call to msgrcv which is apart from activemq-cpp. In the code I'm working with there is a polling loop that calls msgrcv to pull messages from a Linux message queue. The EINTR code only appears when I am running a producer in the same program in async mode. I catch my signal in my main thread. BT: (gdb) bt #0 0xffffe410 in __kernel_vsyscall () #1 0x009f5573 in msgrcv () from /lib/libc.so.6 There are four other threads running. Here are the back traces for the other four threads. Thread 1: (gdb) bt #0 0xffffe410 in __kernel_vsyscall () #1 0x00ab7ef2 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #2 0x0448982b in decaf::internal::util::concurrent::ConditionImpl::wait(decaf::util::concurr= ent::ConditionHandle*, long long, long long) () from /usr/lib/libactivemq-cpp.so.9 Thread 2: (gdb) bt #0 0xffffe410 in __kernel_vsyscall () #1 0x00ab7ef2 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #2 0x0448982b in decaf::internal::util::concurrent::ConditionImpl::wait(decaf::util::concurr= ent::ConditionHandle*, long long, long long) () from /usr/lib/libactivemq-cpp.so.9 #3 0x0450848f in decaf::util::concurrent::Mutex::wait(long long, int) () from /usr/lib/libactivemq-cpp.so.9 #4 0x0450831a in decaf::util::concurrent::Mutex::wait(long long) () from /usr/lib/libactivemq-cpp.so.9 Thread 3: #0 0xffffe410 in __kernel_vsyscall () #1 0x00ab7ef2 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #2 0x0448982b in decaf::internal::util::concurrent::ConditionImpl::wait(decaf::util::concurr= ent::ConditionHandle*, long long, long long) () from /usr/lib/libactivemq-cpp.so.9 #3 0x0450848f in decaf::util::concurrent::Mutex::wait(long long, int) () from /usr/lib/libactivemq-cpp.so.9 #4 0x0450831a in decaf::util::concurrent::Mutex::wait(long long) () from /usr/lib/libactivemq-cpp.so.9 #5 0x0448919c in decaf::internal::util::concurrent::SynchronizableImpl::wait(long long) () from /usr/lib/libactivemq-cpp.so.9 Thread 4: #0 0xffffe410 in __kernel_vsyscall () #1 0x00ab7bc5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so= .0 #2 0x0448992a in decaf::internal::util::concurrent::ConditionImpl::wait(decaf::util::concurr= ent::ConditionHandle*) () from /usr/lib/libactivemq-cpp.so.9 #3 0x045084d9 in decaf::util::concurrent::Mutex::wait() () from /usr/lib/libactivemq-cpp.so.9 #4 0x041d66e2 in activemq::threads::CompositeTaskRunner::run() ()