[jira] [Commented] (ARTEMIS-853) Support for exclusive consumers

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16356148#comment-16356148
 ] 

ASF GitHub Bot commented on ARTEMIS-853:


Github user michaelandrepearce commented on the issue:

https://github.com/apache/activemq-artemis/pull/1856
  
@clebertsuconic as per your comment to look at an alternative QueueImpl 
with it having separate flow without counters for exclusive. 

IMO i don't think this is a better approach, but i want to offer it to you.
 
There is an amount of logic that is almost similar but not re-usable or 
abstract-able (ive done what i could).

This is why i followed the same logic that MessageGroups does when a group 
already is assigned, 
 which is to override the consumer and then don't update the pos, as it 
made for a lot smaller change, less intrusive change following a pattern 
already done with msg groups.

Anyhow if you prefer this then im not dead opposed to this approach just 
don't think its better, but i offer it for your review.


> Support for exclusive consumers
> ---
>
> Key: ARTEMIS-853
> URL: https://issues.apache.org/jira/browse/ARTEMIS-853
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Matt Pavlovich
>Priority: Major
>
> Artemis should support a consumer feature where a single consumer receives 
> all messages, even when multiple consumers are present. This capability 
> maintains message ordering while allowing a HA consumer.
> ActiveMQ 5.x supports this, as does IBM MQ, Tibco EMS, etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-853) Support for exclusive consumers

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16356137#comment-16356137
 ] 

ASF GitHub Bot commented on ARTEMIS-853:


GitHub user michaelandrepearce opened a pull request:

https://github.com/apache/activemq-artemis/pull/1856

ARTEMIS-853 Support for exclusive consumers

Alternative QueueImpl - Seperated logic without counters

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/michaelandrepearce/activemq-artemis 
ARTEMIS-853-2

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/activemq-artemis/pull/1856.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1856


commit 87ecda7ed5b09774c23f3de16bff2b20971db015
Author: Michael André Pearce 
Date:   2018-02-07T21:07:44Z

ARTEMIS-853 Support for exclusive consumers

Alternative QueueImpl - Seperated logic without counters




> Support for exclusive consumers
> ---
>
> Key: ARTEMIS-853
> URL: https://issues.apache.org/jira/browse/ARTEMIS-853
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Matt Pavlovich
>Priority: Major
>
> Artemis should support a consumer feature where a single consumer receives 
> all messages, even when multiple consumers are present. This capability 
> maintains message ordering while allowing a HA consumer.
> ActiveMQ 5.x supports this, as does IBM MQ, Tibco EMS, etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (AMQ-6894) Excessive number of connections by failover transport with priorityBackup

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/AMQ-6894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355856#comment-16355856
 ] 

ASF GitHub Bot commented on AMQ-6894:
-

GitHub user ashakirin opened a pull request:

https://github.com/apache/activemq/pull/274

AMQ-6894: limit poison exception message to 1024

AMQ-6894: Limit poison exception message to 1024 to avoid IOException be 
encoding

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/ashakirin/activemq master

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/activemq/pull/274.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #274


commit d0dab2e88b44702d26dd0883c9940b97ee03fdeb
Author: Andrei Shakirin 
Date:   2018-02-07T18:28:55Z

AMQ-6894: limit poison exception message to 1024




> Excessive number of connections by failover transport with priorityBackup
> -
>
> Key: AMQ-6894
> URL: https://issues.apache.org/jira/browse/AMQ-6894
> Project: ActiveMQ
>  Issue Type: Bug
>  Components: Broker
>Affects Versions: 5.14.5
>Reporter: Andrei Shakirin
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Attachments: activemq-part.zip
>
>
> My clients connect to AMQ with this connection string:
> (tcp://amq1:61616,tcp://amq2:61616)?randomize=false=true
>  It works - for some time. But sooner or later my AMQ server becomes 
> unresponsive because the host it runs on runs out of resources (threads).
> Suddenly AMQ Server log explodes with the messages like:
> {code}
> 2018-01-26 09:26:16,909 | WARN  | Failed to register MBean 
> org.apache.activemq 
> :type=Broker,brokerName=activemq-vm-primary,connector=clientConnectors,connect
> orName=default,connectionViewType=clientId,connectionName=ID_ca8f70e115d0-3708
> 7-1516883370639-0_22 | org.apache.activemq.broker.jmx.ManagedTransportConnecti
> on | ActiveMQ Transport: tcp:///172.10.7.56:55548@61616
> 2018-01-26 09:26:21,375 | WARN  | Ignoring ack received before dispatch; 
> result of failover with an outstanding ack. Acked messages will be replayed 
> if present on this broker. Ignored ack: MessageAck \{commandId = 157, 
> responseRequired = false, ackType = 2, consumerId = 
> ID:ca8f70e115d0-37087-1516883370639-1:22:10:1, firstMessageId = 
> ID:a95345a9c0df-33771-1516883685728-1:17:5:1:23, lastMessageId = 
> ID:a95345a9c0df-33771-1516883685728-1:17:5:1:23, destination = 
> queue://MY_QUEUE_OUT, transactionId = null, messageCount = 1, poisonCause = 
> null} | org.apache.activemq.broker.region.PrefetchSubscription | ActiveMQ 
> Transport: tcp:///172.16.6.56:55464@61616
> 2018-01-26 09:26:39,211 | WARN  | Transport Connection to: 
> tcp://172.10.6.56:55860 failed: java.net.SocketException: Connection reset | 
> org.apache.activemq.broker.TransportConnection.Transport | ActiveMQ 
> InactivityMonitor Worker
> 2018-01-26 09:26:47,175 | WARN  | Transport Connection to: 
> tcp://172.10.6.56:57012 failed: java.net.SocketException: Broken pipe (Write 
> failed) | org.apache.activemq.broker.TransportConnection.Transport | ActiveMQ 
> InactivityMonitor Worker
> {code}
> After short period of time AMQ server comes out of resources with 
> "java.lang.OutOfMemoryError: unable to create new native thread" error. The 
> AMQ service process in this case has a huge number of threads (some thousands)
>  
> The client side log contains a lot of reconnection attempts messages like:
> {code}
> 2018-01-26 00:10:31,387 WARN    
> [\{{bundle.name,org.apache.activemq.activemq-osgi}{bundle.version,5.14.1}\{bundle.id,181}}]
>  [null]  org.apache.activemq.transport.failover.FailoverTransport  
> Failed to connect to [tcp://activemq-vm-primary:61616, 
> tcp://activemq-vm-secondary:61616] after: 810 attempt(s) continuing to retry.
> {code}
> It seems that client creates a huge number of connections by failover retry 
> and after some time kills the server.
> Issue looks very similar to described in 
> https://issues.apache.org/jira/browse/AMQ-6603, however server isn't 
> configured with access control settings.
> I found the description of similar problem into 
> [http://activemq.2283324.n4.nabble.com/ActiveMQ-5-2-OutOfMemoryError-unable-to-create-new-native-thread-td2366585.html],
>   but without concrete suggestion.
>  
> Part of server log is attached



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355830#comment-16355830
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user cshannon commented on the issue:

https://github.com/apache/activemq-artemis/pull/1853
  
Had to update the PR again as something got messed up when rebasing


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355808#comment-16355808
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user cshannon commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1853#discussion_r166700570
  
--- Diff: 
artemis-server/src/main/java/org/apache/activemq/artemis/core/paging/cursor/impl/PageSubscriptionImpl.java
 ---
@@ -439,7 +453,7 @@ public void confirmPosition(final Transaction tx, final 
PagePosition position) t
public void ackTx(final Transaction tx, final PagedReference reference) 
throws Exception {
   confirmPosition(tx, reference.getPosition());
 
-  counter.increment(tx, -1);
+  counter.increment(tx, -1, -getPersistentSize(reference));
--- End diff --

@michaelandrepearce  - So because of this line here we can't really default 
the persistentSize to -1, it needs to be 0.   This call here will store a new 
PageCountRecordInc() record to the journal with a negative count and negative 
size on message ack to decrement the counters. Because of this a negative can 
actually be a valid value and really 0 should mean not set (we should never 
have a message size of 0)


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355801#comment-16355801
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user cshannon commented on the issue:

https://github.com/apache/activemq-artemis/pull/1853
  
@clebertsuconic - I did some cleanup work and I added a couple of basic 
tests to the compatibility test.  It doesn't do much but show that the current 
snapshot can load a 2.4 journal successfully (and it can load the paging store 
as well).  We can expand the tests with more if you want.

Also, I removed the persistentSize from the PageCountPendingImpl class as 
the size (and the count apparently) aren't actually used and not needed.  On 
recovery we can recover the size from the paged reference.  

Do you think this is ready to merge?


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-853) Support for exclusive consumers

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355796#comment-16355796
 ] 

ASF GitHub Bot commented on ARTEMIS-853:


Github user michaelandrepearce commented on the issue:

https://github.com/apache/activemq-artemis/pull/1832
  
We do the same as if message group which doesn’t increase the pos if it’s 
exclusive just like it doesn’t if exclusive.

We can enhance this if needed. Ping me on IRC tomorrow? happy to make 
further enhancements if needed.


> Support for exclusive consumers
> ---
>
> Key: ARTEMIS-853
> URL: https://issues.apache.org/jira/browse/ARTEMIS-853
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Matt Pavlovich
>Priority: Major
>
> Artemis should support a consumer feature where a single consumer receives 
> all messages, even when multiple consumers are present. This capability 
> maintains message ordering while allowing a HA consumer.
> ActiveMQ 5.x supports this, as does IBM MQ, Tibco EMS, etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-853) Support for exclusive consumers

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355781#comment-16355781
 ] 

ASF GitHub Bot commented on ARTEMIS-853:


Github user clebertsuconic commented on the issue:

https://github.com/apache/activemq-artemis/pull/1832
  
@michaelandrepearce  I think the logic should have been updated on 
QueueImpl for the exclusive consumer...


You should just had the pos always 0. or have a different logic without 
using counters at all. 

The code became non consistent. the pos increases but then there is a 
statement to always get position 0 if exclusive.


> Support for exclusive consumers
> ---
>
> Key: ARTEMIS-853
> URL: https://issues.apache.org/jira/browse/ARTEMIS-853
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Matt Pavlovich
>Priority: Major
>
> Artemis should support a consumer feature where a single consumer receives 
> all messages, even when multiple consumers are present. This capability 
> maintains message ordering while allowing a HA consumer.
> ActiveMQ 5.x supports this, as does IBM MQ, Tibco EMS, etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-853) Support for exclusive consumers

2018-02-07 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355590#comment-16355590
 ] 

ASF subversion and git services commented on ARTEMIS-853:
-

Commit 38c45c92142cd6a3b9f49f2d436d7a0665309c00 in activemq-artemis's branch 
refs/heads/master from [~michael.andre.pearce]
[ https://git-wip-us.apache.org/repos/asf?p=activemq-artemis.git;h=38c45c9 ]

ARTEMIS-853 Support for exclusive consumers

Rationalise and re-use URISupport.

> Support for exclusive consumers
> ---
>
> Key: ARTEMIS-853
> URL: https://issues.apache.org/jira/browse/ARTEMIS-853
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Matt Pavlovich
>Priority: Major
>
> Artemis should support a consumer feature where a single consumer receives 
> all messages, even when multiple consumers are present. This capability 
> maintains message ordering while allowing a HA consumer.
> ActiveMQ 5.x supports this, as does IBM MQ, Tibco EMS, etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-853) Support for exclusive consumers

2018-02-07 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355589#comment-16355589
 ] 

ASF subversion and git services commented on ARTEMIS-853:
-

Commit dc41f3ca491e96e199290a225fdaa07ac05d66df in activemq-artemis's branch 
refs/heads/master from [~michael.andre.pearce]
[ https://git-wip-us.apache.org/repos/asf?p=activemq-artemis.git;h=dc41f3c ]

ARTEMIS-853 Support for exclusive consumers

Support exlusive consumer
Allow default address level settings for exclusive consumer
Allow queue level setting in broker.xml
Add the ability to set queue settings via Core JMS using address. Similar to 
ActiveMQ 5.X
Allow for Core JMS client to define exclusive consumer using address parameters
Add tests

> Support for exclusive consumers
> ---
>
> Key: ARTEMIS-853
> URL: https://issues.apache.org/jira/browse/ARTEMIS-853
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Matt Pavlovich
>Priority: Major
>
> Artemis should support a consumer feature where a single consumer receives 
> all messages, even when multiple consumers are present. This capability 
> maintains message ordering while allowing a HA consumer.
> ActiveMQ 5.x supports this, as does IBM MQ, Tibco EMS, etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-853) Support for exclusive consumers

2018-02-07 Thread ASF subversion and git services (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355578#comment-16355578
 ] 

ASF subversion and git services commented on ARTEMIS-853:
-

Commit 47c9a90dcb16b70aeef3a09c89400669add083f5 in activemq-artemis's branch 
refs/heads/master from [~michael.andre.pearce]
[ https://git-wip-us.apache.org/repos/asf?p=activemq-artemis.git;h=47c9a90 ]

ARTEMIS-853 Support for exclusive consumers

Support exlusive consumer
Allow default address level settings for exclusive consumer
Allow queue level setting in broker.xml
Add the ability to set queue settings via Core JMS using address. Similar to 
ActiveMQ 5.X
Allow for Core JMS client to define exclusive consumer using address parameters
Add tests

> Support for exclusive consumers
> ---
>
> Key: ARTEMIS-853
> URL: https://issues.apache.org/jira/browse/ARTEMIS-853
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Matt Pavlovich
>Priority: Major
>
> Artemis should support a consumer feature where a single consumer receives 
> all messages, even when multiple consumers are present. This capability 
> maintains message ordering while allowing a HA consumer.
> ActiveMQ 5.x supports this, as does IBM MQ, Tibco EMS, etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1666) List of prepared transaction details returns Object.toString() instead of Json string

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1666?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355560#comment-16355560
 ] 

ASF GitHub Bot commented on ARTEMIS-1666:
-

GitHub user yersan opened a pull request:

https://github.com/apache/activemq-artemis/pull/1854

[ARTEMIS-1666] List of prepared transaction details returns 
Object.toString() instead of Json string

Issue: https://issues.apache.org/jira/browse/ARTEMIS-1666
JBEAP Issue: https://issues.jboss.org/browse/JBEAP-14177

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/yersan/activemq-artemis bugs/ARTEMIS-1666

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/activemq-artemis/pull/1854.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1854


commit ecc13750929f7969c7cd36da357af7273a88f607
Author: Yeray Borges 
Date:   2018-02-07T14:56:37Z

[ARTEMIS-1666] List of prepared transaction details returns 
Object.toString() instead of Json string




> List of prepared transaction details returns Object.toString() instead of 
> Json string
> -
>
> Key: ARTEMIS-1666
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1666
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 1.5.5
>Reporter: Yeray Borges
>Priority: Major
>
> {{JMSServerManagerImpl#listPreparedTransactionDetailsAsJSON}} returns a 
> {{JsonArrayBuilder}} string representation instead of the JSon representation.
> There is a missing {{JsonArrayBuilder#buid}} call in the method.
> This issue can be easily reproduced checking the output of 
> {{JMSServerControlTest#testListPreparedTransactionDetails}} test.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-853) Support for exclusive consumers

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-853?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355542#comment-16355542
 ] 

ASF GitHub Bot commented on ARTEMIS-853:


Github user franz1981 commented on the issue:

https://github.com/apache/activemq-artemis/pull/1832
  
@michaelandrepearce i don't have the chance to merge it yet :(
Anyway it seems that there aren't any objections so I suppose it is ok  


> Support for exclusive consumers
> ---
>
> Key: ARTEMIS-853
> URL: https://issues.apache.org/jira/browse/ARTEMIS-853
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Matt Pavlovich
>Priority: Major
>
> Artemis should support a consumer feature where a single consumer receives 
> all messages, even when multiple consumers are present. This capability 
> maintains message ordering while allowing a HA consumer.
> ActiveMQ 5.x supports this, as does IBM MQ, Tibco EMS, etc.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355535#comment-16355535
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user clebertsuconic commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1853#discussion_r166636796
  
--- Diff: 
artemis-server/src/main/java/org/apache/activemq/artemis/core/persistence/impl/journal/codec/PageCountPendingImpl.java
 ---
@@ -62,21 +67,41 @@ public long getPageID() {
   return pageID;
}
 
+   /**
+* @return the persistentSize
+*/
+   @Override
+   public long getPersistentSize() {
+  return persistentSize;
+   }
+
+   /**
+* @param persistentSize the persistentSize to set
+*/
+   public void setPersistentSize(long persistentSize) {
+  this.persistentSize = persistentSize;
+   }
+
@Override
public int getEncodeSize() {
-  return DataConstants.SIZE_LONG * 2;
+  return DataConstants.SIZE_LONG * 3;
}
 
@Override
public void encode(ActiveMQBuffer buffer) {
   buffer.writeLong(queueID);
   buffer.writeLong(pageID);
+  buffer.writeLong(persistentSize);
--- End diff --

JournalCompatibilityTest under compatibility-tests.


I don't think the test is using paging. we should just extend the test to 
use paging.


I can help you with that if you have questions.


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355515#comment-16355515
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user cshannon commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1853#discussion_r166632761
  
--- Diff: 
artemis-server/src/main/java/org/apache/activemq/artemis/core/persistence/impl/journal/codec/PageCountPendingImpl.java
 ---
@@ -62,21 +67,41 @@ public long getPageID() {
   return pageID;
}
 
+   /**
+* @return the persistentSize
+*/
+   @Override
+   public long getPersistentSize() {
+  return persistentSize;
+   }
+
+   /**
+* @param persistentSize the persistentSize to set
+*/
+   public void setPersistentSize(long persistentSize) {
+  this.persistentSize = persistentSize;
+   }
+
@Override
public int getEncodeSize() {
-  return DataConstants.SIZE_LONG * 2;
+  return DataConstants.SIZE_LONG * 3;
}
 
@Override
public void encode(ActiveMQBuffer buffer) {
   buffer.writeLong(queueID);
   buffer.writeLong(pageID);
+  buffer.writeLong(persistentSize);
--- End diff --

I can add a compatibility test. The value will just be a default 
(@michaelandrepearce wants me to use -1 instead of 0 and i guess we just would 
ignore it if not set for the count).

Where's the journal test located in the test suite?


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355503#comment-16355503
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user clebertsuconic commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1853#discussion_r166630869
  
--- Diff: 
artemis-server/src/main/java/org/apache/activemq/artemis/core/persistence/impl/journal/codec/PageCountPendingImpl.java
 ---
@@ -62,21 +67,41 @@ public long getPageID() {
   return pageID;
}
 
+   /**
+* @return the persistentSize
+*/
+   @Override
+   public long getPersistentSize() {
+  return persistentSize;
+   }
+
+   /**
+* @param persistentSize the persistentSize to set
+*/
+   public void setPersistentSize(long persistentSize) {
+  this.persistentSize = persistentSize;
+   }
+
@Override
public int getEncodeSize() {
-  return DataConstants.SIZE_LONG * 2;
+  return DataConstants.SIZE_LONG * 3;
}
 
@Override
public void encode(ActiveMQBuffer buffer) {
   buffer.writeLong(queueID);
   buffer.writeLong(pageID);
+  buffer.writeLong(persistentSize);
--- End diff --

OIC.. you already implemented it..


I would like to have a compatibility test validating that.. there's a 
journal test on the new compatibility testsuite already... but not one with 
paging.. and validating the counters...

If you have a way to do it.. it would be great.. otherwise let me know and 
I will do it.


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355496#comment-16355496
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user cshannon commented on the issue:

https://github.com/apache/activemq-artemis/pull/1853
  
@clebertsuconic - The metric in the page counters is persisted along with 
the page counters now.  When the page counters are written to the journal that 
metric is encoded to disk and reloaded on restart.

 Older versions of the journal are compatible, they will just not have that 
size value loaded as it won't have been saved previously.


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ARTEMIS-1668) The list of subscribers does not return json array of consumers

2018-02-07 Thread Yeray Borges (JIRA)

 [ 
https://issues.apache.org/jira/browse/ARTEMIS-1668?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yeray Borges updated ARTEMIS-1668:
--
Affects Version/s: (was: 2.4.0)

> The list of subscribers does not return json array of consumers
> ---
>
> Key: ARTEMIS-1668
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1668
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 1.5.5
>Reporter: Yeray Borges
>Priority: Major
>
> Output of {{listAllSubscriptionsAsJSON}}, {{listDurableSubscriptionsAsJSON}}, 
> {{listNonDurableSubscriptionsAsJSON}} contains attribute {{consumers}}. The 
> json produced by these operations contains {{consumers}} value escaped and 
> presented as a plain String. For example:
> {noformat}
> [
>   {
> "queueName": 
> "b7348eab-e13f-437b-a4ca-1e6f2be490c22.c740ec86-5cbe-4b7a-8ee5-073a746f7c3a2",
> "clientID": "b7348eab-e13f-437b-a4ca-1e6f2be490c22",
> "selector": null,
> "name": "c740ec86-5cbe-4b7a-8ee5-073a746f7c3a2",
> "durable": true,
> "messageCount": 0,
> "deliveringCount": 0,
> "consumers": 
> "[{\"consumerID\":0,\"connectionID\":\"4361e1bc-0c08-11e8-9e9e-a860b61ba3b9\",\"sessionID\":\"43622fe0-0c08-11e8-9e9e-a860b61ba3b9\",\"browseOnly\":false,\"creationTime\":1518009026461}]"
>   }
> ]
> {noformat}
> If some external tooling reads value of attribute {{consumers}}, it can not 
> be treated like a Json array of objects. It must be handled as a regular 
> String instead. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355475#comment-16355475
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user clebertsuconic commented on the issue:

https://github.com/apache/activemq-artemis/pull/1853
  
@cshannon although looking at the PR now you added persistent size into 
page counters... but as I read it, it is not persistent...


We should go all the way in.. i.e... persist the new size metric along with 
the page counters... or all the way back.. i.e... only give user's paging 
metrics through page size... 

Implementing the counter on the journal is no big deal.. but I would like 
to keep it compatible... older versions of the journal should still be 
compatible.


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ARTEMIS-1668) The list of subscribers does not return json array of consumers

2018-02-07 Thread Yeray Borges (JIRA)
Yeray Borges created ARTEMIS-1668:
-

 Summary: The list of subscribers does not return json array of 
consumers
 Key: ARTEMIS-1668
 URL: https://issues.apache.org/jira/browse/ARTEMIS-1668
 Project: ActiveMQ Artemis
  Issue Type: Bug
Affects Versions: 2.4.0, 1.5.5
Reporter: Yeray Borges


Output of {{listAllSubscriptionsAsJSON}}, {{listDurableSubscriptionsAsJSON}}, 
{{listNonDurableSubscriptionsAsJSON}} contains attribute {{consumers}}. The 
json produced by these operations contains {{consumers}} value escaped and 
presented as a plain String. For example:


{noformat}
[
  {
"queueName": 
"b7348eab-e13f-437b-a4ca-1e6f2be490c22.c740ec86-5cbe-4b7a-8ee5-073a746f7c3a2",
"clientID": "b7348eab-e13f-437b-a4ca-1e6f2be490c22",
"selector": null,
"name": "c740ec86-5cbe-4b7a-8ee5-073a746f7c3a2",
"durable": true,
"messageCount": 0,
"deliveringCount": 0,
"consumers": 
"[{\"consumerID\":0,\"connectionID\":\"4361e1bc-0c08-11e8-9e9e-a860b61ba3b9\",\"sessionID\":\"43622fe0-0c08-11e8-9e9e-a860b61ba3b9\",\"browseOnly\":false,\"creationTime\":1518009026461}]"
  }
]
{noformat}

If some external tooling reads value of attribute {{consumers}}, it can not be 
treated like a Json array of objects. It must be handled as a regular String 
instead. 




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355408#comment-16355408
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user cshannon commented on the issue:

https://github.com/apache/activemq-artemis/pull/1853
  
Oh ok I get it now.  Yeah you are right that the PagingStore interface has 
a method to get the number of pages and the page size which can be used to get 
an idea of consumption.  This value is exposed through AddressControl so users 
can see it.


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355388#comment-16355388
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user clebertsuconic commented on the issue:

https://github.com/apache/activemq-artemis/pull/1853
  
I was just saying paging metrics should be exposed. Even if the files are 
to be GCed but if something happened and they are not the user should have the 
metrics exposed about pages.  I think we do have them but i don’t remember now. 
I’m away from a computer and I can’t check now. 


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355384#comment-16355384
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user cshannon commented on the issue:

https://github.com/apache/activemq-artemis/pull/1853
  
@clebertsuconic - I don't think we need to re-calculate anything if the 
values are missing for paging.  The  point of this metric isn't to give the 
user information on storage consumption as that data already exists.  They can 
find out how many page files are being used and disk usage already, etc.

The point of these metrics is to know exactly how much data on a queue is 
left to consume.  So there might be a 5 megabyte page file but only 2 messages 
left to consume and the rest of the file is just waiting to be GC'd.  This 
metric only includes the 2 messages to be consumed and not the rest of the file.



> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355380#comment-16355380
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user clebertsuconic commented on the issue:

https://github.com/apache/activemq-artemis/pull/1853
  
I think paging should be measured just in number of pages (files) on the 
address. That would give users an idea about storage consumption.  It wouldn’t 
indeed be practical to load it to calculate sizes. 


> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355376#comment-16355376
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user cshannon commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1853#discussion_r166601621
  
--- Diff: 
artemis-server/src/main/java/org/apache/activemq/artemis/core/persistence/impl/journal/codec/PageCountRecordInc.java
 ---
@@ -26,17 +26,20 @@
 
private int value;
 
+   private long persistentSize;
--- End diff --

@michaelandrepearce  - That is fine I will make those values -1, but I 
don't think we would try and re-calculate a correct value.  When loading the 
journal you'd have to re-load the messages to calculate from the paging store 
which we don't want to do.  I think the proper behavior is to just ignore it 
and not use the value in the calculations.  Then over time as new records come 
in the values would be filled in and correct.  

If I change the value to -1 on the record, are you thinking we should just 
have the getter do the negative check and return 0 if it's -1 or were you 
thinking to just return -1 from the getter and then check for negative 
everywhere else the value is used?




> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ARTEMIS-1667) init pagingFactory with journalBufferTimeout_NIO

2018-02-07 Thread yangwei (JIRA)
yangwei created ARTEMIS-1667:


 Summary: init pagingFactory with journalBufferTimeout_NIO
 Key: ARTEMIS-1667
 URL: https://issues.apache.org/jira/browse/ARTEMIS-1667
 Project: ActiveMQ Artemis
  Issue Type: Bug
  Components: Broker
Affects Versions: 2.4.0
Reporter: yangwei


PagingFactory is wrongly initialized with journalBufferSize_NIO not 
journalBufferTimeout_NIO.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (ARTEMIS-1666) List of prepared transaction details returns Object.toString() instead of Json string

2018-02-07 Thread Yeray Borges (JIRA)

 [ 
https://issues.apache.org/jira/browse/ARTEMIS-1666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yeray Borges updated ARTEMIS-1666:
--
Summary: List of prepared transaction details returns Object.toString() 
instead of Json string  (was: Error returning the list of prepared transaction 
details as JSon)

> List of prepared transaction details returns Object.toString() instead of 
> Json string
> -
>
> Key: ARTEMIS-1666
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1666
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 1.5.5
>Reporter: Yeray Borges
>Priority: Major
>
> {{JMSServerManagerImpl#listPreparedTransactionDetailsAsJSON}} returns a 
> {{JsonArrayBuilder}} string representation instead of the JSon representation.
> There is a missing {{JsonArrayBuilder#buid}} call in the method.
> This issue can be easily reproduced checking the output of 
> {{JMSServerControlTest#testListPreparedTransactionDetails}} test.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (ARTEMIS-1666) Error returning the list of prepared transaction details as JSon

2018-02-07 Thread Yeray Borges (JIRA)
Yeray Borges created ARTEMIS-1666:
-

 Summary: Error returning the list of prepared transaction details 
as JSon
 Key: ARTEMIS-1666
 URL: https://issues.apache.org/jira/browse/ARTEMIS-1666
 Project: ActiveMQ Artemis
  Issue Type: Bug
Affects Versions: 1.5.5
Reporter: Yeray Borges


{{JMSServerManagerImpl#listPreparedTransactionDetailsAsJSON}} returns a 
{{JsonArrayBuilder}} string representation instead of the JSon representation.

There is a missing {{JsonArrayBuilder#buid}} call in the method.

This issue can be easily reproduced checking the output of 
{{JMSServerControlTest#testListPreparedTransactionDetails}} test.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (ARTEMIS-1663) Add enhanced message count and size metrics for Queues

2018-02-07 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/ARTEMIS-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16355123#comment-16355123
 ] 

ASF GitHub Bot commented on ARTEMIS-1663:
-

Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1853#discussion_r166545869
  
--- Diff: 
artemis-server/src/main/java/org/apache/activemq/artemis/core/persistence/impl/journal/codec/PageCountRecordInc.java
 ---
@@ -26,17 +26,20 @@
 
private int value;
 
+   private long persistentSize;
--- End diff --

Seems my comment is removed due to update. Should be -1.

Reason for this is that if it isn't set e.g. have read up an old journal as 
such decode wont set it, and you know you need to calculate it to get a correct 
value.




> Add enhanced message count and size metrics for Queues
> --
>
> Key: ARTEMIS-1663
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1663
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Affects Versions: 2.4.0
>Reporter: Christopher L. Shannon
>Assignee: Christopher L. Shannon
>Priority: Major
>
> The purpose of this Jira is to enhance the message count metrics and to add 
> size metrics for Queues.   By size metrics I mean the encoded size of all the 
> messages (for large messages this will include body as well).  Right now we 
> track memory usage but it is also very useful to know exactly how much data 
> is pending on a Queue to be consumed.  
> The scope of this will be support for tracking the count/size of pending 
> messages, count/size of delivering messages, and count/size of scheduled 
> messages.  For each of these categories durable size metrics will be tracked 
> as well. The paging store will also support tracking of size metrics as well.
> These new metrics will be exposed through JMX to allow users to view the 
> statistics.  Also by tracking these new values it will allow for enhanced 
> features in the future (ie new flow control options)
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)