[
https://issues.apache.org/jira/browse/AMQCPP-361?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Timothy Bish resolved AMQCPP-361.
---------------------------------
Resolution: Fixed
Fix Version/s: 3.4.0
This should have been fixed, reopen if its still an issue.
> Destroying a consumer may cause a crash
> ---------------------------------------
>
> Key: AMQCPP-361
> URL: https://issues.apache.org/jira/browse/AMQCPP-361
> Project: ActiveMQ C++ Client
> Issue Type: Bug
> Components: CMS Impl
> Affects Versions: 3.2.5
> Environment: all
> Reporter: Teemu Torma
> Assignee: Timothy Bish
> Fix For: 3.4.0
>
>
> ActiveMQSessionExecutor::dispatch gets a consumer and calls consumer's
> dispatch method without holding any locks in between. This leaves a window
> when a consumer can be no longer valid on a dispatch call causing a crash.
> Since this is a timing issue it is hard to demonstrate as such. If one adds
> let's say one second sleep in ActiveMQSessionExecutor::dispatch before the
> call to the consumer->dispatch, and destroys a consumer on a destination
> which has messages incoming will likely crash the application.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira