[
https://issues.apache.org/jira/browse/AMQ-7140?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Matt Pavlovich updated AMQ-7140:
--------------------------------
Affects Version/s: 5.11.0
5.14.5
> Misleading documentation about ActiveMQ-Spring configuration
> ------------------------------------------------------------
>
> Key: AMQ-7140
> URL: https://issues.apache.org/jira/browse/AMQ-7140
> Project: ActiveMQ
> Issue Type: Bug
> Components: Documentation
> Affects Versions: 5.11.0, 5.14.5
> Environment: Tomcat 8, ActiveMQ 5.11.0 or 5.14.5, Spring Framework
> 4.3, Java 7.
> Reporter: Mauro Molinari
> Priority: Major
>
> While investigating about a memory leak I have in production (about which I
> wrote both at
> [https://stackoverflow.com/questions/54143172/configuring-activemq-properly-to-avoid-producer-memory-leaks]
> and
> [http://activemq.2283324.n4.nabble.com/Help-with-memory-leak-td4746710.html|http://activemq.2283324.n4.nabble.com/Help-with-memory-leak-td4746710.html,],
> with no reply at all), which I hope is related to AMQ-6603 (please advise!),
> I discovered that, as stated by Christopher L. Shannon on that issue, it's
> not advisable to use a pooling/caching connection factory with a Spring
> message container. Reading SpringĀ {{DefaultMessageListenerContainer}} Javadoc
> confirms this. However, ActiveMQ documentation says exactly the opposite at
> [http://activemq.apache.org/spring-support.html:]
> {quote}Spring's
> [MessagListenerContainer|http://static.springsource.org/spring/docs/2.5.x/reference/jms.html#jms-mdp]
> should be used for message consumption. This provides all the power of MDBs
> - efficient JMS consumption and pooling of the message listeners - but
> without requiring a full EJB container.
> *You can use the {{activemq-pool}}
> {{org.apache.activemq.pool.PooledConnectionFactory}} for efficient pooling of
> the connections and sessions for your collection of consumers, or you can use
> the Spring JMS
> {{org.springframework.jms.connection.CachingConnectionFactory}} to achieve
> the same effect.*
> {quote}
> This indeed drove me to the wrong direction.
> So, I think ActiveMQ documentation should be clear about it, if
> {{org.apache.activemq.pool.PooledConnectionFactory}} and
> {{org.springframework.jms.connection.CachingConnectionFactory}} should be
> used only when writing message producers and/or when dealing with
> {{JmsTemplate}},
> Please also note that Spring Integration JMS message-driven inbound channel
> adapter is impacted as well, because it uses a
> {{DefaultMessageListenerContainer}} by default, unless otherwise configured.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)