[jira] [Commented] (ARTEMIS-2244) checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer timeout
[ https://issues.apache.org/jira/browse/ARTEMIS-2244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16761205#comment-16761205 ] ASF subversion and git services commented on ARTEMIS-2244: -- Commit 4111707c268189ed8d7c96275bc366e207492dee in activemq-artemis's branch refs/heads/2.6.x from yb [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=4111707 ] ARTEMIS-2244 checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer timeout (cherry picked from commit 8799615a136946c39bb49bd4069cff2df0035997) > checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer > timeout > -- > > Key: ARTEMIS-2244 > URL: https://issues.apache.org/jira/browse/ARTEMIS-2244 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: yuebao >Priority: Major > Attachments: threaddump.txt > > Time Spent: 2h 10m > Remaining Estimate: 0h > > We found server crash becauseof critical analyzer timeout, thread dump can be > seen in attachment. > Suppose that there is a topic t with two subscriber ta and tb. Some messages > were routed to subscriber ta, not to tb. When a consumer that subscribe tb is > created and send ConsumerCredits to server, ServerConsumerImpl will call > promptDelivery method, then forceDelivery() -> messageQueue.deliverAsync() -> > deliverRunner will executed in the pageSubscription's executor(step1), then > checkDepage(step2) -> pageIterator.hasNext(synchronized method) -> next -> > moveNext, moveNext method will iterate through queue until find a matching > message. At this time(step1), DeliverRunner call deliver method -> > checkDepage -> pageIterator.hasNext, this step blocked on CursorIterator > which was locked by step2, then critical analyzer timeout. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ARTEMIS-2244) checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer timeout
[ https://issues.apache.org/jira/browse/ARTEMIS-2244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16761206#comment-16761206 ] ASF subversion and git services commented on ARTEMIS-2244: -- Commit 2a8b29995ff5a54d1caa54cc2e82239d21aecbd3 in activemq-artemis's branch refs/heads/2.6.x from Clebert Suconic [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=2a8b299 ] ARTEMIS-2244 Adding critical check around checkDepage (cherry picked from commit e09ffe14f488efd1013005da9ecc588466dc2905) > checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer > timeout > -- > > Key: ARTEMIS-2244 > URL: https://issues.apache.org/jira/browse/ARTEMIS-2244 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: yuebao >Priority: Major > Attachments: threaddump.txt > > Time Spent: 2h 10m > Remaining Estimate: 0h > > We found server crash becauseof critical analyzer timeout, thread dump can be > seen in attachment. > Suppose that there is a topic t with two subscriber ta and tb. Some messages > were routed to subscriber ta, not to tb. When a consumer that subscribe tb is > created and send ConsumerCredits to server, ServerConsumerImpl will call > promptDelivery method, then forceDelivery() -> messageQueue.deliverAsync() -> > deliverRunner will executed in the pageSubscription's executor(step1), then > checkDepage(step2) -> pageIterator.hasNext(synchronized method) -> next -> > moveNext, moveNext method will iterate through queue until find a matching > message. At this time(step1), DeliverRunner call deliver method -> > checkDepage -> pageIterator.hasNext, this step blocked on CursorIterator > which was locked by step2, then critical analyzer timeout. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ARTEMIS-2244) checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer timeout
[ https://issues.apache.org/jira/browse/ARTEMIS-2244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16761200#comment-16761200 ] ASF subversion and git services commented on ARTEMIS-2244: -- Commit 8799615a136946c39bb49bd4069cff2df0035997 in activemq-artemis's branch refs/heads/master from yb [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=8799615 ] ARTEMIS-2244 checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer timeout > checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer > timeout > -- > > Key: ARTEMIS-2244 > URL: https://issues.apache.org/jira/browse/ARTEMIS-2244 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: yuebao >Priority: Major > Attachments: threaddump.txt > > Time Spent: 2h > Remaining Estimate: 0h > > We found server crash becauseof critical analyzer timeout, thread dump can be > seen in attachment. > Suppose that there is a topic t with two subscriber ta and tb. Some messages > were routed to subscriber ta, not to tb. When a consumer that subscribe tb is > created and send ConsumerCredits to server, ServerConsumerImpl will call > promptDelivery method, then forceDelivery() -> messageQueue.deliverAsync() -> > deliverRunner will executed in the pageSubscription's executor(step1), then > checkDepage(step2) -> pageIterator.hasNext(synchronized method) -> next -> > moveNext, moveNext method will iterate through queue until find a matching > message. At this time(step1), DeliverRunner call deliver method -> > checkDepage -> pageIterator.hasNext, this step blocked on CursorIterator > which was locked by step2, then critical analyzer timeout. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ARTEMIS-2244) checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer timeout
[ https://issues.apache.org/jira/browse/ARTEMIS-2244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16761201#comment-16761201 ] ASF subversion and git services commented on ARTEMIS-2244: -- Commit e09ffe14f488efd1013005da9ecc588466dc2905 in activemq-artemis's branch refs/heads/master from Clebert Suconic [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=e09ffe1 ] ARTEMIS-2244 Adding critical check around checkDepage > checkDepage method placed outside CRITICAL_DELIVER avoid critical analyzer > timeout > -- > > Key: ARTEMIS-2244 > URL: https://issues.apache.org/jira/browse/ARTEMIS-2244 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: yuebao >Priority: Major > Attachments: threaddump.txt > > Time Spent: 2h > Remaining Estimate: 0h > > We found server crash becauseof critical analyzer timeout, thread dump can be > seen in attachment. > Suppose that there is a topic t with two subscriber ta and tb. Some messages > were routed to subscriber ta, not to tb. When a consumer that subscribe tb is > created and send ConsumerCredits to server, ServerConsumerImpl will call > promptDelivery method, then forceDelivery() -> messageQueue.deliverAsync() -> > deliverRunner will executed in the pageSubscription's executor(step1), then > checkDepage(step2) -> pageIterator.hasNext(synchronized method) -> next -> > moveNext, moveNext method will iterate through queue until find a matching > message. At this time(step1), DeliverRunner call deliver method -> > checkDepage -> pageIterator.hasNext, this step blocked on CursorIterator > which was locked by step2, then critical analyzer timeout. -- This message was sent by Atlassian JIRA (v7.6.3#76005)