activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ryan Witcher (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AMQ-1927) activemq producer hangs (using spring)
Date Sun, 23 Nov 2008 04:02:05 GMT

    [ https://issues.apache.org/activemq/browse/AMQ-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47573#action_47573
] 

Ryan Witcher commented on AMQ-1927:
-----------------------------------

We saw the same problem and turning off the producerFlowControl worked.  

We think the underlying issue is that the MemoryPercentageUsed never seemed to go down (as
seen in JConsole).  So once the MemoryPercentageUsed reached 100%, even if consumers removed
messages from it, the system would still block.  

This issue claims that was fixed in 5.1.0 but we aren't so sure.
https://issues.apache.org/activemq/browse/AMQ-1644

> activemq producer hangs (using spring)
> --------------------------------------
>
>                 Key: AMQ-1927
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1927
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: suse linux 10.3
> sun jdk "1.6.0_06"
> tomcat 6.0.16
> spring framework 2.0
>            Reporter: Randy
>             Fix For: 5.3.0
>
>
> We have an internal activemq queue configured using the spring framework (configuration
below). During a high volume message test, the message producer hangs. See stack trace below.
> May be related to bugs #AMQ-1641 or #AMQ-1490.
> "pool-2-thread-2" prio=10 tid=0x00002aaaf2c20000 nid=0x297e waiting on condition [0x000000004173f000..0x000000004173fc20]
>    java.lang.Thread.State: WAITING (parking)
> 	at sun.misc.Unsafe.park(Native Method)
> 	- parking to wait for  <0x00002aaae859af40> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
> 	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
> 	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925)
> 	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:317)
> 	at org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:40)
> 	at org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:80)
> 	at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1195)
> 	at org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1644)
> 	- locked <0x00002aaab3e433d8> (a java.lang.Object)
> 	at org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:227)
> 	at org.apache.activemq.pool.PooledProducer.send(PooledProducer.java:74)
> 	- locked <0x00002aaab3e42d08> (a org.apache.activemq.ActiveMQMessageProducer)
> 	at org.apache.activemq.pool.PooledProducer.send(PooledProducer.java:59)
> 	at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:534)
> 	at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:511)
> 	at org.springframework.jms.core.JmsTemplate$2.doInJms(JmsTemplate.java:477)
> 	at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
> 	at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:475)
> <amq:broker id="broker" useJmx="true" persistent="false"  brokerName="fb" >
> 	
>   		<amq:managementContext>
>         	<amq:managementContext connectorPort="2011" jmxDomainName="org.apache.activemq"/>
>         </amq:managementContext>
> 		<amq:transportConnectors>
> 			<amq:transportConnector uri="tcp://localhost:0" />
> 			<amq:transportConnector uri="tcp://localhost:61616" />
> 		</amq:transportConnectors>
> 	</amq:broker>
> 	<!--  ActiveMQ destinations to use  -->
> 	<amq:queue id="inboundEvents" physicalName="fb.inbound.events">
> 	</amq:queue>
>  
> 	<bean id="jmsFactory" class="org.apache.activemq.pool.PooledConnectionFactory">
> 		<property name="connectionFactory">
> 			<bean class="org.apache.activemq.ActiveMQConnectionFactory">
> 				<property name="brokerURL" value="vm://localhost"/>
> 			</bean>
> 		</property>
> 	</bean>
> 	<bean id="simpleJmsTemplate" class="org.springframework.jms.core.JmsTemplate">
> 		<property name="connectionFactory" ref="jmsFactory"/>
> 	</bean>
> 	<!-- consumers -->
> 	<bean id="inboundEventConsumer" class="jms.WrapperConsumer" init-method="start" destroy-method="stop">
> 		<property name="myId" value="fb.consumer.events"/>
> 		<property name="template" ref="simpleJmsTemplate"/>
> 		<property name="destination" ref="inboundEvents"/>
> 	</bean>
> 	<!-- producers -->
> 	<bean id="inboundEventProducer" class="jms.WrapperProducer">
> 		<property name="template" ref="simpleJmsTemplate"/>
> 		<property name="destination" ref="inboundEvents"/>
> 	</bean>

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


Mime
View raw message