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

Christopher L. Shannon updated AMQ-5686:
----------------------------------------
    Description: 
In ProxyMessageStore the method {{asyncAddTopicMessage}} does not call the 
delegate method as it should.  This causes a {{StackOverflowError}} if the 
method is called as it will just recursively keep calling the same method over 
and over again.

The problem is here on line 141 of {{ProxyMessageStore.java}}:

{code}
@Override
public ListenableFuture<Object> asyncAddTopicMessage(ConnectionContext context, 
Message message, boolean canOptimizeHint) throws IOException {
  return asyncAddTopicMessage(context,message,canOptimizeHint);
}
{code}

This simply should be changed to:

{code}
@Override
public ListenableFuture<Object> asyncAddTopicMessage(ConnectionContext context, 
Message message, boolean canOptimizeHint) throws IOException {
  return delegate.asyncAddTopicMessage(context,message,canOptimizeHint);
}
{code}

  was:
In ProxyMessageStore the method {{asyncAddTopicMessage}} does not call the 
delegate method as it should.  This causes a {{StackOverflowError}} if the 
method is called as it will just recursively keep calling the same method over 
and over again.

The problem is here on line 141 of {{ProxyMessageStore.java}}:

{code}
@Override
public ListenableFuture<Object> asyncAddTopicMessage(ConnectionContext context, 
Message message, boolean canOptimizeHint) throws IOException {
  return asyncAddTopicMessage(context,message,canOptimizeHint);
}
{code}

This simply should be changed to:

{code}
@Override
public ListenableFuture<Object> asyncAddTopicMessage(ConnectionContext context, 
Message message, boolean canOptimizeHint) throws IOException {
  return delegate.asyncAddtopicMessage(context,message,canOptimizeHint);
}
{code}


> ProxyMessageStore doesn't properly delegate
> -------------------------------------------
>
>                 Key: AMQ-5686
>                 URL: https://issues.apache.org/jira/browse/AMQ-5686
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.11.1
>            Reporter: Christopher L. Shannon
>              Labels: easyfix
>
> In ProxyMessageStore the method {{asyncAddTopicMessage}} does not call the 
> delegate method as it should.  This causes a {{StackOverflowError}} if the 
> method is called as it will just recursively keep calling the same method 
> over and over again.
> The problem is here on line 141 of {{ProxyMessageStore.java}}:
> {code}
> @Override
> public ListenableFuture<Object> asyncAddTopicMessage(ConnectionContext 
> context, Message message, boolean canOptimizeHint) throws IOException {
>   return asyncAddTopicMessage(context,message,canOptimizeHint);
> }
> {code}
> This simply should be changed to:
> {code}
> @Override
> public ListenableFuture<Object> asyncAddTopicMessage(ConnectionContext 
> context, Message message, boolean canOptimizeHint) throws IOException {
>   return delegate.asyncAddTopicMessage(context,message,canOptimizeHint);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to