You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Shailendra Kumar singh (JIRA)" <ji...@apache.org> on 2018/01/02 10:14:00 UTC

[jira] [Commented] (ARTEMIS-1577) Address-settings policies aren't being applied when using an older version of JMS client

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

Shailendra Kumar singh commented on ARTEMIS-1577:
-------------------------------------------------

Issue seem due to the old queue prefix  *"jms.queue."*
 
When getting the ProducerCredits [1], prefix is removed before getting the store from PagingManager.
{code:java}
public void requestProducerCredits(SimpleString address, final int credits) throws Exception {
      final SimpleString addr = removePrefix(address);
      PagingStore store = server.getPagingManager().getPageStore(addr);

      if (!store.checkMemory(new Runnable() {
         @Override
         public void run() {
            callback.sendProducerCreditsMessage(credits, address);
         }
      })) {
         callback.sendProducerCreditsFailMessage(credits, address);
      }
   }
{code}

However, while updating/inserting [2] a store address prefix is not removed which creates an additional store with key using jms.queue.

{code:java}
 private void setPagingStore(final Message message) throws Exception {
      PagingStore store = pagingManager.getPageStore(message.getAddressSimpleString());

      message.setContext(store);
   }
{code}

[1] https://github.com/apache/activemq-artemis/blob/master/artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/ServerSessionImpl.java#L1412-L1424

[2] https://github.com/apache/activemq-artemis/blob/master/artemis-server/src/main/java/org/apache/activemq/artemis/core/postoffice/impl/PostOfficeImpl.java#L1043-L1047

> Address-settings policies aren't being applied when using an older version of JMS client
> ----------------------------------------------------------------------------------------
>
>                 Key: ARTEMIS-1577
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1577
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 2.4.0
>            Reporter: Shailendra Kumar singh
>         Attachments: broker.xml
>
>
> Address-settings policies aren't being applied when using an older version of JMS client.
> Example:-
> #broker.xml
> {code:java}
> <address-setting match="exampleQueue">
>                 <address-full-policy>FAIL</address-full-policy>
>                 <max-size-bytes>10</max-size-bytes>
>  </address-setting>
> {code}
> When using JMS client(artemis-jms-client) version 1.5.5, Address-settings policies are not applied.
> When using latest client version, it works as expected.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)