qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Praveen M <lefthandma...@gmail.com>
Subject Re: Qpid Java Broker Priority Queue Issue!
Date Fri, 25 May 2012 00:00:24 GMT
Hi Robbie,

Thanks for the update. Looking forward to the fix.

Thanks,
Praveen

On Thu, May 24, 2012 at 9:45 AM, Robbie Gemmell <robbie.gemmell@gmail.com>wrote:

> Hi Praveen,
>
> I don't believe priority queues are that widely used, but they are
> used. The problem with both of these defects is that its quite
> possible to never notice/hit them them depending on your messaging
> patterns. The newer defect is unfortunate given it appears to require
> a series of events to occur and looks to have been introduced while
> fixing the other issue before the release, but at first glance it
> appears straight forward to remedy and I'll pick that up tomorrow.
>
> Robbie
>
> On 21 May 2012 16:41, Praveen M <lefthandmagic@gmail.com> wrote:
> > Hi Robbie,
> >
> > Thanks a lot for the quick update. Boy, you work late :)
> >
> > I've raised a Jira for this,
> >
> https://issues.apache.org/jira/browse/QPID-4012?focusedCommentId=13280220#comment-13280220
> >
> > My guess is this would impact anyone using priority queues. It is
> > unfortunately a show stopper for us :( We did another test run and it
> > didn't hold up for over half an hour and the broker ran into this issue.
> >
> > I'd be great if you can help with this.
> >
> > Also, I'm curious if priority queues are not extensively used with Qpid.
> > (since we ran into two critical issues). Do you know if anyone has
> > currently deployed priority queues in production scale?
> >
> >
> > Thanks a lot for helping out.
> > Praveen
> >
> >
> >
> > On Fri, May 18, 2012 at 7:47 PM, Robbie Gemmell <
> robbie.gemmell@gmail.com>wrote:
> >
> >> Hi Praveen,
> >>
> >> Based on a quick look this does appear directly related to the change
> >> for the other issue yes, and I think I can guess what probably
> >> happened (a previously released entry was compared to a newly released
> >> entry after the original entry was consumed, its data removed from the
> >> store, and its soft referenced in-memory metadata was garbage
> >> collected, so that when inspecting the priority as done for the
> >> previous fix we ended up accessing the store again to retrieve
> >> metadata later than we can/should). If so its potentially not going to
> >> be that consistently reproducable, but has a couple of simple fixes
> >> available.
> >>
> >> I'm busy and/or away until later in the week but if you raise a JIRA
> >> then I will pick it up.
> >>
> >> Probably time to go to sleep before the alarm goes off to wake me up :)
> >>
> >> Robbie
> >>
> >> On 19 May 2012 02:17, Praveen M <lefthandmagic@gmail.com> wrote:
> >> > Hi,
> >> >
> >> > We encountered this exception when running some long tests on Qpid
> using
> >> > the Java Broker.
> >> >
> >> > The test uses priority queues with 10 levels.
> >> >
> >> > I'm curious is this was due to some gaps in the change to fix the bug
> >> that
> >> > I filed earlier.
> >> > https://issues.apache.org/jira/browse/QPID-3927
> >> >
> >> > Robbie, Can you please let us know if you can think the cause of the
> >> > exception below was due to some obvious bug?
> >> > I am going to try and reproduce this and provide a test which could
> >> > reproduce this soon. Just posting it as a heads up in case you know if
> >> > something is amiss atop your head.
> >> >
> >> >
> >> > The exception is,
> >> >
> >> > qpidbrkr`20120518072800.628`Uncaught exception in thread "IoReceiver
> - /
> >> > 10.224.75.24:34340"
> >> >
> >> > java.lang.RuntimeException: org.apache.qpid.AMQStoreException:
> Metadata
> >> not
> >> > found for message with id 1330312 [error code 541: internal error]
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.store.berkeleydb.BDBMessageStore$StoredBDBMessage.getMetaData(BDBMessageStore.java:2327)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.message.MessageTransferMessage.getMetaData(MessageTransferMessage.java:43)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.message.MessageTransferMessage.getMessageHeader(MessageTransferMessage.java:58)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.queue.QueueEntryImpl.getMessageHeader(QueueEntryImpl.java:303)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.queue.PriorityQueueList$PriorityQueueEntryImpl.compareTo(PriorityQueueList.java:189)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.queue.PriorityQueueList$PriorityQueueEntryImpl.compareTo(PriorityQueueList.java:179)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.queue.SimpleAMQQueue.updateSubRequeueEntry(SimpleAMQQueue.java:853)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.queue.SimpleAMQQueue.requeue(SimpleAMQQueue.java:875)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.queue.QueueEntryImpl.release(QueueEntryImpl.java:245)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.subscription.Subscription_0_10.release(Subscription_0_10.java:715)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener.onRelease(ExplicitAcceptDispositionChangeListener.java:62)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.transport.ServerSession.onClose(ServerSession.java:373)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.transport.ServerSessionDelegate.closed(ServerSessionDelegate.java:1579)
> >> >
> >> >                at
> >> > org.apache.qpid.transport.Session.closed(Session.java:1097)
> >> >
> >> >                at
> >> > org.apache.qpid.transport.Connection.closed(Connection.java:541)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.transport.ServerConnection.closed(ServerConnection.java:420)
> >> >
> >> >                at
> >> > org.apache.qpid.transport.network.Assembler.closed(Assembler.java:112)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.transport.network.InputHandler.closed(InputHandler.java:204)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.protocol.ProtocolEngine_0_10.closed(ProtocolEngine_0_10.java:206)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.closed(MultiVersionProtocolEngine.java:102)
> >> >
> >> >                at
> >> >
> org.apache.qpid.transport.network.io.IoReceiver.run(IoReceiver.java:174)
> >> >
> >> >                at java.lang.Thread.run(Thread.java:619)
> >> >
> >> > Caused by: org.apache.qpid.AMQStoreException: Metadata not found for
> >> > message with id 1330312 [error code 541: internal error]
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.store.berkeleydb.BDBMessageStore.getMessageMetaData(BDBMessageStore.java:1842)
> >> >
> >> >                at
> >> >
> >>
> org.apache.qpid.server.store.berkeleydb.BDBMessageStore$StoredBDBMessage.getMetaData(BDBMessageStore.java:2323)
> >> >
> >> >                ... 21 more
> >> >
> >> >
> >> > Thank you,
> >> >
> >> > --
> >> > -Praveen
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> >> For additional commands, e-mail: users-help@qpid.apache.org
> >>
> >>
> >
> >
> > --
> > -Praveen
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> For additional commands, e-mail: users-help@qpid.apache.org
>
>


-- 
-Praveen

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message