Announcement

Collapse
No announcement yet.

SSL error in database writer since upgrade to 3.6.2

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

  • SSL error in database writer since upgrade to 3.6.2

    We upgraded both appliance and mirthconnect to

    Appliance: 3.11.3
    Connect: 3.6.2
    Java: 1.8.0_181-b13
    Support case: 05440551


    And since the upgrade we're now getting failures on several legacy database writers:

    1: LINE NUMBER:
    57DETAILS:
    Wrapped com.microsoft.sqlserver.jdbc.SQLServerException: The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "SQL Server did not return a response. The connection has been closed. ClientConnectionId:ec407322-024a-4061-8cbe-644524da7b58".
    at a54c2358-edaf-41c3-96f0-1f7046946df8:57 (executeDBQuery)
    at a54c2358-edaf-41c3-96f0-1f7046946df8:1303 (doScript)
    at a54c2358-edaf-41c3-96f0-1f7046946df8:1305
    at com.mirth.connect.connectors.js.JavaScriptDispatch er$JavaScriptDispatcherTask.doCall(JavaScriptDispa tcher.java:184)
    at com.mirth.connect.connectors.js.JavaScriptDispatch er$JavaScriptDispatcherTask.doCall(JavaScriptDispa tcher.java:122)
    at com.mirth.connect.server.util.javascript.JavaScrip tTask.call(JavaScriptTask.java:113)
    at java.util.concurrent.FutureTask.run(FutureTask.jav a:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker( ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "SQL Server did not return a response. The connection has been closed. ClientConnectionId:ec407322-024a-4061-8cbe-644524da7b58".
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.t erminate(SQLServerConnection.java:2400)
    at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL( IOBuffer.java:1762)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.c onnectHelper(SQLServerConnection.java:1977)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.l ogin(SQLServerConnection.java:1628)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.c onnectInternal(SQLServerConnection.java:1459)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.c onnect(SQLServerConnection.java:773)
    at com.microsoft.sqlserver.jdbc.SQLServerDriver.conne ct(SQLServerDriver.java:1168)
    at com.mirth.connect.connectors.jdbc.CustomDriver.con nect(CustomDriver.java:153)
    at com.mirth.connect.server.userutil.DatabaseConnecti on.<init>(DatabaseConnection.java:100)
    at com.mirth.connect.server.userutil.DatabaseConnecti onFactory.createDatabaseConnection(DatabaseConnect ionFactory.java:60)
    at sun.reflect.GeneratedMethodAccessor85.invoke(Unkno wn Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.mozilla.javascript.MemberBox.invoke(MemberBox. java:126)
    at org.mozilla.javascript.NativeJavaMethod.call(Nativ eJavaMethod.java:225)
    at org.mozilla.javascript.Interpreter.interpretLoop(I nterpreter.java:1479)
    at org.mozilla.javascript.Interpreter.interpret(Inter preter.java:815)
    at org.mozilla.javascript.InterpretedFunction.call(In terpretedFunction.java:109)
    at org.mozilla.javascript.ContextFactory.doTopCall(Co ntextFactory.java:393)
    at org.mozilla.javascript.ScriptRuntime.doTopCall(Scr iptRuntime.java:3282)
    at org.mozilla.javascript.InterpretedFunction.exec(In terpretedFunction.java:120)
    at com.mirth.connect.server.util.javascript.JavaScrip tTask.executeScript(JavaScriptTask.java:150)
    at com.mirth.connect.connectors.js.JavaScriptDispatch er$JavaScriptDispatcherTask.doCall(JavaScriptDispa tcher.java:149)
    ... 6 moreCaused by: java.io.IOException: SQL Server did not return a response. The connection has been closed. ClientConnectionId:ec407322-024a-4061-8cbe-644524da7b58
    at com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandsha keInputStream.ensureSSLPayload(IOBuffer.java:711)
    at com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandsha keInputStream.readInternal(IOBuffer.java:768)
    at com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandsha keInputStream.read(IOBuffer.java:760)
    at com.microsoft.sqlserver.jdbc.TDSChannel$ProxyInput Stream.readInternal(IOBuffer.java:955)
    at com.microsoft.sqlserver.jdbc.TDSChannel$ProxyInput Stream.read(IOBuffer.java:943)
    at sun.security.ssl.InputRecord.readFully(InputRecord .java:465)
    at sun.security.ssl.InputRecord.read(InputRecord.java :503)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocke tImpl.java:983)
    at sun.security.ssl.SSLSocketImpl.performInitialHands hake(SSLSocketImpl.java:1385)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLS ocketImpl.java:1413)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLS ocketImpl.java:1397)
    at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL( IOBuffer.java:1688)
    ... 27 more
    We are using the ms-sql driver 4.2 in custom-libs and the connection string of (for some reason its inserting a gap between r and u on the forum):

    jdbc:sqlserver://SERVER\INSTANCE;databaseName=DBNAME;integratedSecu rity=false;multisubnetfailover=true;
    Username: ***
    Password: ***

    I'm guessing a security parameter has changed somewhere but just not sure where to look. I've tried adding the below to the connection string:

    encrypt=true and trustServerCertificate=true;

    ans also changed to:

    integratedSecurity=true


    Any ideas on where to look? These all worked fine up until we brought the updated versions back online.
    Last edited by amble; 10-08-2019, 02:20 AM.

  • #2
    For info and anyone wondering, we eventually decided to change from the sqljdbc42.jar from Microsoft and replace with a simple jtds driver connection instead and a different connection string.

    conn.String: 'jdbc:jtds:sqlserver://SERVER;databasename=DBNAME;instance=INSTANCE';
    driver = 'net.sourceforge.jtds.jdbc.Driver';

    Comment

    Working...
    X