Announcement

Collapse
No announcement yet.

ACK delay and Derby Error

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

  • ACK delay and Derby Error

    Hi Everyone. Mirth 2.2.1.5861 here.
    I have a new interface that went live 2 days ago and there was one ORU that came in last night and didn't send an ACK for almost 30 minutes. The system that sends these ORUs to my Mirth channel will keep retrying until it gets an ACK. This REALLY messed things up for our client as they auto-print each report they get and mirth just kept on sending each message instance which I believe totaled about 70 times. Some of these printers continue to print despite their IT dept killing the jobs and replugging in the printers. These were addendums so they kept adding to the main report making a 97 page report after all was said and done within their RIS. Below are two errors I have during this time-frame. I truncated them due to text limits

    Obviously I can't let this happen again. So on to the questions....

    I see pruning begins at midnight for my Mirth and actually kicked off at 12:07 which is the exact time this addendum was received. Could that be the simple answer/culprit?
    Other addendums processed without issue along with other reports the rest of the night however.

    Is there is a way to automatically send an ACK if a report is received X number of times?

    Do these errors show any information as to what actually happend?

    If you need any other information let me know. Thank you in advance.


    FIRST ERROR:

    [2013-05-02 00:25:08,308] ERROR (com.mirth.connect.server.controllers.DefaultMessa geObjectController:229): Error updating message 6f6667df-9617-4ebb-b1f3-387bb67c6497 status due to a database problem
    com.ibatis.common.jdbc.exception.NestedSQLExceptio n: --- The error occurred in derby/derby-message.xml. --- The error occurred while executing update. --- Check the UPDATE MESSAGE SET STATUS = ? WHERE ID = ? . --- Check the SQL Statement (preparation failed). --- Cause: java.sql.SQLTransactionRollbackException: A lock could not be obtained within the time requested
    at com.ibatis.sqlmap.engine.mapping.statement.MappedS tatement.executeUpdate(MappedStatement.java:107)
    at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelega te.update(SqlMapExecutorDelegate.java:457)
    at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.up date(SqlMapSessionImpl.java:90)
    at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.upd ate(SqlMapClientImpl.java:66)
    at com.mirth.connect.server.controllers.DefaultMessag eObjectController.updateMessageStatus(DefaultMessa geObjectController.java:227)


    SECOND ERROR
    [2013-05-02 00:25:08,308] ERROR (com.mirth.connect.server.controllers.DefaultMessa geObjectController:254): could not log message: id=44f23c6e-3510-4ad4-8909-8ae386944ca7
    com.ibatis.common.jdbc.exception.NestedSQLExceptio n: --- The error occurred in derby/derby-message.xml. --- The error occurred while executing update. --- Check the

    INSERT IGNORE INTO

    MESSAGE (ID, SERVER_ID, CHANNEL_ID, SOURCE, TYPE, DATE_CREATED, VERSION, IS_ENCRYPTED, STATUS, RAW_DATA, RAW_DATA_PROTOCOL, TRANSFORMED_DATA, TRANSFORMED_DATA_PROTOCOL, ENCODED_DATA, ENCODED_DATA_PROTOCOL, CONNECTOR_NAME, ERRORS, CORRELATION_ID, CONNECTOR_MAP, CHANNEL_MAP, RESPONSE_MAP, ATTACHMENT)

    VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
    . --- Check the SQL Statement (preparation failed). --- Cause: java.sql.SQLTransactionRollbackException: A lock could not be obtained within the time requested
    at
    Last edited by Jaypell22; 05-03-2013, 10:51 AM. Reason: Subject changed based on new information re: Pruning being the cause

  • #2
    Message Pruner seems to be the culprit

    Well I changed the pruner job time because the issue below with no ACK going back to the sending interface occurred at the same time pruning kicked off. Today at 12pm the pruner kicked off and the same problem occurred with 3 different reports, 1 during each pruning job. Fortunately for a different client and different channel so that rules out issues with any specific channel. This is a newly implemented Mirth server, the old server ran more pruning jobs than this and never showed any signs of an issue that I have seen.

    Has anyone experienced this before?

    I also had trouble loading channel messages during this time and everything ended up crashing to the point where I had to kill the mcservice process. Should there be 2 mcservice processes running at a time?

    Thank you!
    Jay
    Last edited by Jaypell22; 05-03-2013, 10:14 AM.

    Comment

    Working...
    X