You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by Praveen M <le...@gmail.com> on 2012/05/19 03:17:12 UTC

Qpid Java Broker Priority Queue Issue!

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

Re: Qpid Java Broker Priority Queue Issue!

Posted by Praveen M <le...@gmail.com>.
Hi Robbie,

Thanks for the update. Looking forward to the fix.

Thanks,
Praveen

On Thu, May 24, 2012 at 9:45 AM, Robbie Gemmell <ro...@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 <le...@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 <le...@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

Re: Qpid Java Broker Priority Queue Issue!

Posted by Robbie Gemmell <ro...@gmail.com>.
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 <le...@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 <ro...@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 <le...@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


Re: Qpid Java Broker Priority Queue Issue!

Posted by Praveen M <le...@gmail.com>.
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 <ro...@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 <le...@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

Re: Qpid Java Broker Priority Queue Issue!

Posted by Robbie Gemmell <ro...@gmail.com>.
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 <le...@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