[
https://issues.apache.org/jira/browse/AMQ-3516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13117207#comment-13117207
]
Gary Tully commented on AMQ-3516:
---------------------------------
looks like the inner if needs to be pulled up to the same level as the outer if.
> Failover Transport MessageAck commands aren't filtered in oneway
> ----------------------------------------------------------------
>
> Key: AMQ-3516
> URL: https://issues.apache.org/jira/browse/AMQ-3516
> Project: ActiveMQ
> Issue Type: Bug
> Components: Transport
> Affects Versions: 5.x
> Reporter: Timothy Bish
> Assignee: Timothy Bish
> Priority: Minor
>
> There's some code in FailoverTransport.oneway that was intended to MessageAck
> commands when the transport was in a failed state that will never be called.
> {code}
> if (isShutdownCommand(command) && connectedTransport.get() ==
> null) {
> if (command.isShutdownInfo()) {
> // Skipping send of ShutdownInfo command when not
> // connected.
> return;
> }
> if (command instanceof RemoveInfo ||
> command.isMessageAck()) {
> // Simulate response to RemoveInfo command or ack (as
> it
> // will be stale)
> stateTracker.track(command);
> Response response = new Response();
> response.setCorrelationId(command.getCommandId());
> myTransportListener.onCommand(response);
> return;
> }
> }
> {code}
> The inner if statement that looks for MessageAck will never be reachable
> since a MessageAck is not a RemoveInfo or ShutdownInfo command which is the
> condition for getting into the outer if.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira