Announcement

Collapse

Mirth Connect 3.12.0 Released!

Mirth Connect 3.12.0 is now available as an appliance update and on our GitHub page. This release includes database performance improvements, improves visual HL7 representation, message pruning, keystore handling, PDF generation, community contributions, and fixes several security vulnerabilities. This release also contains many improvements to commercial extensions. See the release notes for the list of fixes and updates.

Download | See What's New | Upgrade Guide | Release Notes

For discussion on this release, see this thread.
See more
See less

Problems with a Mysql Listener channel

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problems with a Mysql Listener channel

    Hi,
    today I had some problems in a channel, which is in a stable production state since June. Mirth is running on an OpenVz virtual machine environment, and the mysql server too. The channel reads information from a Mysql database, transforms it into HL7 and sends messages to a RIS system. The mirth channel seemed to be stopped itself, while an ecception occured; I was able to do a manual restarting to the channel, and now all seemes came back to normal. Logging traced the same exception for about 30 minutes, as I can see from the Events panel. During this period, I saw a strandge thing by reading the messages log: I can corretly see the 'TRANSFORMED' message, but I cannot see the relative 'SENT' message: it seems that I have correctly read all information from the database, but I couldn't be able to send HL7 messages to RIS: notice that i haven't any error message.
    I can report you below the error sequence: the first exception that occurred is:
    Code:
    org.mule.providers.ConnectException: Initialisation Failure: Communications link failure due to underlying exception: 
    
    ** BEGIN NESTED EXCEPTION ** 
    
    com.mysql.jdbc.CommunicationsException
    MESSAGE: Communications link failure due to underlying exception: 
    
    ** BEGIN NESTED EXCEPTION ** 
    
    java.io.EOFException
    
    STACKTRACE:
    
    java.io.EOFException
    	at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1956)
    	at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2368)
    	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2867)
    	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:870)
    	at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3333)
    	at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1232)
    	at com.mysql.jdbc.Connection.createNewIO(Connection.java:2749)
    	at com.mysql.jdbc.Connection.<init>(Connection.java:1553)
    	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
    	at java.sql.DriverManager.getConnection(DriverManager.java:525)
    	at java.sql.DriverManager.getConnection(DriverManager.java:171)
    	at com.webreach.mirth.server.mule.providers.jdbc.JdbcConnector.getConnection(JdbcConnector.java:451)
    	at com.webreach.mirth.server.mule.providers.jdbc.JdbcMessageReceiver.getMessages(JdbcMessageReceiver.java:215)
    	at org.mule.providers.TransactedPollingMessageReceiver.poll(TransactedPollingMessageReceiver.java:108)
    	at org.mule.providers.PollingMessageReceiver.run(PollingMessageReceiver.java:73)
    	at org.mule.impl.work.WorkerContext.run(WorkerContext.java:290)
    	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
    	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
    	at java.lang.Thread.run(Thread.java:595)
    
    
    ** END NESTED EXCEPTION **
    after this exception,an during the 30 mins as explained above, for every new information polled by the Mysql listener, I can see the same exception, and I found a 'TRANSFORMED' trace into the messages panel, but not the corrispondent 'SENT'. This exception is:

    Code:
    org.mule.umo.routing.RoutingException: Failed to route event via endpoint: ImmutableMuleEndpoint{connec[email protected]50a69b6b, endpointUri=jdbc://query, transformer=Transformer{name='ResultMapToXML', returnClass=false, returnClass=false, sourceTypes=[class java.util.HashMap]}, name='_jdbcEndpoint#1605092130', type='receiver', properties={}, [email protected], filter=null, deleteUnacceptedMessages=false, initialised=true, securityFilter=null, synchronous=true, initialState=started, createConnector=0}. Message payload is of type: org.apache.commons.dbutils.BasicRowProcessor$CaseInsensitiveHashMap
    	at org.mule.routing.inbound.InboundMessageRouter.route(InboundMessageRouter.java:139)
    	at org.mule.providers.AbstractMessageReceiver$DefaultInternalMessageListener.onMessage(AbstractMessageReceiver.java:492)
    	at org.mule.providers.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:271)
    	at org.mule.providers.AbstractMessageReceiver.routeMessage(AbstractMessageReceiver.java:234)
    	at com.webreach.mirth.server.mule.providers.jdbc.JdbcMessageReceiver.processMessage(JdbcMessageReceiver.java:149)
    	at org.mule.providers.TransactedPollingMessageReceiver$MessageProcessorWorker.doInTransaction(TransactedPollingMessageReceiver.java:159)
    	at org.mule.transaction.TransactionTemplate.execute(TransactionTemplate.java:72)
    	at org.mule.providers.TransactedPollingMessageReceiver$MessageProcessorWorker.run(TransactedPollingMessageReceiver.java:149)
    	at org.mule.impl.work.WorkerContext.run(WorkerContext.java:290)
    	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
    	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
    	at java.lang.Thread.run(Thread.java:595)
    Caused by: org.mule.umo.ComponentException: Cannot route event as component "9e646282-4b5b-4970-b515-1bc2ecd00171" is stopped. Connector that caused exception is: 9e646282-4b5b-4970-b515-1bc2ecd00171. Message payload is of type: org.apache.commons.dbutils.BasicRowProcessor$CaseInsensitiveHashMap
    	at org.mule.impl.model.AbstractComponent.sendEvent(AbstractComponent.java:258)
    	at org.mule.impl.MuleSession.sendEvent(MuleSession.java:201)
    	at org.mule.routing.inbound.InboundMessageRouter.send(InboundMessageRouter.java:161)
    	at org.mule.routing.inbound.InboundMessageRouter.route(InboundMessageRouter.java:128)
    	... 11 more
    
    {}
    unfortunately, I am not able to say what was the channel state during the 30 mins of problems, because I was not logged into.....What I can say is that after I found the channel stopped and all these log, and I was able to simply restart the channel, letting it to function properly......
    Any ideas of what could be happened???? I'm sorry for the long topic, but the problem is not easy to explain, and it is very important (production channel!!!!)

    Thanks and regards,
    Alessandro
Working...
X