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

Bruce Snyder updated AMQ-2459:
------------------------------

    Fix Version/s: 5.5.0
                       (was: 5.4.1)

> MasterBroker logs the same 'Slave Failed' error for all exceptions, whether 
> or not the Master/Slave connection has been terminated
> ----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-2459
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2459
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.2.0, 5.3.0
>            Reporter: Kyle Anderson
>            Priority: Minor
>             Fix For: 5.5.0
>
>   Original Estimate: 30 minutes
>  Remaining Estimate: 30 minutes
>
> The sendSyncToSlave method of MasterBroker on line 393 logs a 'Slave Failed' 
> error if the slave returns an exception response for a particular replicated 
> command.
> This doesn't cause master/slave communication to stop, but it's the same 
> error that's logged when a slave dies.  This can cause some confusion.
> I found this issue pops up when recovering a master from a slave's data 
> directory.
> 1. Create a producer & consumer on the master/slave (where master is set to 
> wait for slave)
> 2. Send a few messages to the master/slave
> 3. Kill the master/slave, and recover from the slave's data directory, and 
> restart them
> 4. Receive messages on the consumer (whose failover connection was waiting 
> for the master/slave during the recovery)
> Any messages that were pre-fetched on the consumer will cause the master to 
> report that the Slave Failed with "Could not correlate acknowledgment with 
> dispatched message".  Perhaps this points to an issue in PrefetchSubscription 
> too - but aside from the initial noise, the recovery works as expected  with 
> no message loss.
> Incidentally, I would think that while the exception repose from 
> sendSyncToSlave shouldn't stop the MasterBroker, the catch all (on line 395) 
> should stop processing the same way that a sendAsyncToSlave failure does.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to