activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michele <michele.mazzi...@finconsgroup.com>
Subject Re: Active MQ - OutOfMemory in JbossFuse 6.2 context
Date Mon, 28 Mar 2016 09:09:07 GMT
Hi Tim

thanks a lot for your reply. 

What are your systemLimits, especially your storeUsage and memoryUsage? 
Default configuration
<systemUsage>
	<memoryUsage>
		<memoryUsage limit="64 mb"/>
	</memoryUsage>
	<storeUsage>
		<storeUsage limit="100 gb"/>
	</storeUsage>
	<tempUsage>
		<tempUsage limit="50 gb"/>
	</tempUsage>
</systemUsage>

Why is producerFlowControl="false"?  The sole purpose of PFC is to prevent 
the broker from OOMing when given more messages than it can store; you 
should have this on. 
Probably the false value is a test configuration.

What are the units for the number 40000 that you quoted?  Bytes?  Lines?
40000 lines in a single file 

Is the OOM happening after 500 lines of a single file (or of a few files), 
or after around 500 files (each of which produces many messages)?  I think 
you said the former, but want to be sure. 
After about 500 lines. I tried without consumer in the camel route (Read and
Store) and the result is the same OOM.

How large is each line (and therefore how large is each message)? 
Simple csv with 15 fields for row

What happens if you temporarily increase the heap to 1GB?  How many 
messages does it take in that scenario? 

Same result...and from Message History i see that the exception occured when
the component put the message in Active MQ
15:21:25,982 | ERROR | inbound_Worker-1 | DefaultErrorHandler              |
198 - org.apache.camel.camel-core - 2.15.1.redhat-620133 -
IF_INGESTATE-Inbound-Context - IMP-IF-Ingestate-20160326-152100 | Failed
delivery for (MessageId: ID-FGBAL201530-55754-1459002017865-1-275 on
ExchangeId: ID-FGBAL201530-55754-1459002017865-1-276). Exhausted after
delivery attempt: 1 caught:
org.springframework.jms.UncategorizedJmsException: Uncategorized exception
occured during JMS processing; nested exception is javax.jms.JMSException:
Java heap space

Message History
---------------------------------------------------------------------------------------------------------------------------------------
RouteId              ProcessorId          Processor                                      
                                
Elapsed (ms)
[FileRetriever_Rout] [FileRetriever_Rout]
[file://C:/CRT-2.0/IF-Ingestate/inbox?include=%5EEdenred_%5B0-9%5D%7B8%7D.csv&s]
[     25929]
[FileRetriever_Rout] [unmarshal5        ]
[unmarshal[ref:IncomingFileDataFormat]                                        
] [         0]
[FileRetriever_Rout] [setHeader33       ] [setHeader[CamelSplitIndex]                    
                              
] [         0]
[FileRetriever_Rout] [setBody2          ] [setBody[simple{${body[0]}}]                   
                              
] [        16]
[FileRetriever_Rout] [choice4           ]
[when[simple{${body[INGENICO_OPERATION_ID]} regex '[0-9]+'}]choice[]          
] [      1045]
[FileRetriever_Rout] [log41             ] [log                                           
                              
] [         0]
[FileRetriever_Rout] [to14              ]
[activemq:queue:IF_INGESTATE_Inbound                                          
] [      1030]

Exchange
---------------------------------------------------------------------------------------------------------------------------------------
Exchange[
	Id                  ID-FGBAL201530-55754-1459002017865-1-276
	ExchangePattern     InOnly
	Headers             {breadcrumbId=IMP-IF-Ingestate-20160326-152100,
CamelFileAbsolute=true,
CamelFileAbsolutePath=C:\CRT-2.0\IF-Ingestate\inbox\Edenred_15092015.csv,
CamelFileContentType=application/vnd.ms-excel,
CamelFileLastModified=1458774180380, CamelFileLength=6961789,
CamelFileName=Edenred_15092015.csv,
CamelFileNameConsumed=Edenred_15092015.csv,
CamelFileNameOnly=Edenred_15092015.csv,
CamelFileParent=C:\CRT-2.0\IF-Ingestate\inbox,
CamelFilePath=C:\CRT-2.0\IF-Ingestate\inbox\Edenred_15092015.csv,
CamelFileRelativePath=Edenred_15092015.csv, CamelRedelivered=false,
CamelRedeliveryCounter=0, CamelSplitIndex=58,
CrmRSActionPath=/tk_rt_ticket/ingestate/maintenance,
ImportDateTime=20160326-152100,
MsgCorrelationId=Inbound_INGESTATE_20160326-152100}
	BodyType            java.util.HashMap
	Body                {TICKET_ID=00108571, INGENICO_OPERATION_ID=1721709,
TERMINAL_NUMBEROFCONTACTS=1, TICKET_STATUS=1,
TERMINAL_LAST_CONTACT_DATE=2012-11-03 00:51:39.847,
TERMINAL_TECHNOLOGY=TELIUM, TERMINAL_SN=0000107370942739,
TERMINAL_INGESTATE_ID=ICT-TICKET-RESTAURANT:91229702,
TICKET_REGISTRATION_DATE=2012-11-02 10:08:00.000, TERMINAL_PN=M40,
TERMINAL_FIRST_CONTACT_DATE=2012-11-03 00:49:33.780, TERMINAL_ID=91229702,
RECORDER=EDENRED}
]

Stacktrace
---------------------------------------------------------------------------------------------------------------------------------------
org.springframework.jms.UncategorizedJmsException: Uncategorized exception
occured during JMS processing; nested exception is javax.jms.JMSException:
Java heap space
	at
org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:316)[208:org.apache.servicemix.bundles.spring-jms:3.2.12.RELEASE_1]
	at
org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168)[208:org.apache.servicemix.bundles.spring-jms:3.2.12.RELEASE_1]
	at
org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:469)[208:org.apache.servicemix.bundles.spring-jms:3.2.12.RELEASE_1]
	at
org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:235)[209:org.apache.camel.camel-jms:2.15.1.redhat-620133]
	at
org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:413)[209:org.apache.camel.camel-jms:2.15.1.redhat-620133]
	at
org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:367)[209:org.apache.camel.camel-jms:2.15.1.redhat-620133]
	at
org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:153)[209:org.apache.camel.camel-jms:2.15.1.redhat-620133]
	at
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:129)[198:org.apache.camel.camel-core:2.15.1.redhat-620133]

However, I'm working on both fronts in order to optimize Producer and
Consumer.
In this scenario, i prefer that the producer is fastest than the consumer in
order to don't overload the destination endpoint.

Thanks in advance.

Best Regards

Michele





--
View this message in context: http://activemq.2283324.n4.nabble.com/Active-MQ-OutOfMemory-in-JbossFuse-6-2-context-tp4709960p4709984.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Mime
View raw message