web stats
Newest version of Mirth still deadlocks - Page 2 - Mirth Community

Go Back   Mirth Community > Mirth Connect > Support

Reply
 
Thread Tools Display Modes
  #11  
Old 05-19-2014, 12:56 PM
wayneh wayneh is offline
OBX.3 Kenobi
 
Join Date: May 2012
Posts: 102
wayneh is on a distinguished road
Default

Do you have control of the source system and if so, is it also a Mirth Connect channel? If it is you can increase the Response Timeout on the TCP Sender. That setting determines how long the sender will wait for a reponse. It's possible that the channel simply takes more time to process than how long its currently waiting for the response.
Reply With Quote
  #12  
Old 05-19-2014, 06:17 PM
wayneh wayneh is offline
OBX.3 Kenobi
 
Join Date: May 2012
Posts: 102
wayneh is on a distinguished road
Default

OK a lot of progress has been made on this in the last day. First of all, you can read about why things are deadlocking here and why its really only a MySQL issue. We may not be able to prevent the deadlocks from happening altogether, but we will be dealing with them more gracefully in 3.1.0.

The deadlock itself is pretty harmless, but in 3.0.0, 3.0.1, and 3.0.2 the message that it happened on basically gets skipped until the channel is restarted. In 3.0.3 (which will be released very soon) this will longer happen. The current message will simply be retried and should complete successfully in this case so you won't need to intervene manually by restarting the channel. So you will still see the deadlocks in the error log but they will automatically be recovered. However, note that when this happens, the preprocessor and source transformer will execute again when that message is retried.

Furthermore, as a temporary workaround in 3.0.2, you can try adding the following line to a source transformer Javascript step on channels that are deadlocking with the source queue on

java.lang.Thread.sleep(20);

This will probably alleviate at least 90% if not more of the deadlocks you are seeing. The reason is because the deadlocks occur because certain queries are happening within too close a proximity of each other. By modifying the time where one of the queries occurs, the deadlocks become much more unlikely. Obviously this slows the throughput of the channel a bit, but for now its probably better than having to restart your channel all the time. If it doesn't work, try increasing the sleep time and see if it helps.
Reply With Quote
  #13  
Old 05-20-2014, 09:23 AM
spaterson spaterson is offline
OBX.2 Kenobi
 
Join Date: Feb 2012
Posts: 61
spaterson is on a distinguished road
Default

Hi wayneh,

I do not have control over the source system.

So you think the error would not happen if I use MS SQL? I am going to try it now with SQL 08, and ill update this thread with the outcome.

Thanks,
Scott

Last edited by spaterson; 05-20-2014 at 09:29 AM.
Reply With Quote
  #14  
Old 05-20-2014, 01:55 PM
spaterson spaterson is offline
OBX.2 Kenobi
 
Join Date: Feb 2012
Posts: 61
spaterson is on a distinguished road
Default

Update. So Mirth is now running on MS SQL 08 on my server. I have done some testing (30 or so messages through) and I have not had the error once yet! Will do more testing tomorrow and hopefully won't have any errors.

Thanks,
Scott
Reply With Quote
  #15  
Old 03-11-2015, 12:30 PM
wayneh wayneh is offline
OBX.3 Kenobi
 
Join Date: May 2012
Posts: 102
wayneh is on a distinguished road
Default

Just to give some closure, this bug will finally be fixed in the next upcoming release (3.2.1). See MIRTH-3280 for more information.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -8. The time now is 10:34 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2020, vBulletin Solutions, Inc.
Mirth Corporation