Products | Versions |
---|---|
TIBCO Data Virtualization | All Supported Version |
Below are the information on why this issue occurs and how one can solve this issue.
The major reason why this error occurs is there is the communication link between the driver and the data source to which the driver was connected failed before the function completed processing. In this scenario, try using the latest JDBC JAR for Microsoft SQL Server.
If this does not help to resolve the issue so the error is occurring because of the following reason:
(1) A network device closed the connection. This could mean that the device injected an RST packet into the connection stream between TIBCO Data Virtualization and SQL server to signal them that it needs them to close the connection.
(2) The network dropped some packets.
(3) A TCP/IP OS level setting (keep-alive/socket-related) closed the connection.
(4) The connection was closed by SQL Server, or by TIBCO Data Virtualization. Specifically, either TIBCO Data Virtualization or SQL Server could send a specific TCP IP packet type called a RST packet across the connection. When the receiver gets the packet, it will respond by closing the connection.
(5) Closure by an intermediate network device.
In some scenarios, user can try setting the below configuration parameters as mentioned:
(1) Set the Enable Flood Optimization setting to "false".
(2) Append the "requestTimeout" and "sessionTimeout" parameters to the JDBC connection string to explicitly set the timeout on the client side.
example: jdbc:compositesw:dbapi@localhost:9501domain=composite&dataSource=examples&requestTimeout=3000&sessionTimeout=3000
(3) Ensure that Studio >> Administration >> Configuration >> Server >> Client Drivers >> Session >> "Ignore Client Drivers Session Timeout" is set to "true".
(4) Type "timeout" into the Find box under Studio >> Administration >> Configuration. The timeout configuration settings for Requests and Sessions will appear. Review the following settings to ensure that they are at the default value of 0 (which means there is no timeout) with the exception of session timeout which has a default of 1800:
- Authentication and HandShake Timeout Window : 0
- Default Request Timeout : 0
- Default Session Timeout : 0
- Session Timeout : 1800
- Default Execution Timeout : 0
If the above recommendations do not resolve the issue, it means that the timeout is not occurring with the TICO Data Virtualization server, but is occurring externally i.e. one of the following is occurring:
(i) This is client-specific ==> the client application is closing the connection.
(ii) The back-end database server is closing the connection.
(iii) There is a Firewall or a Load Balancer sitting in between your client machine and the TDV server machine and it is terminating the connection.
Note: If the above suggestions don't help then the user needs to involve their Networking Team or directly reach out to the Microsoft team as this is a third-party JDBC driver and not shipped with the TIBCO Data Virtualization product.
Links to the online articles:
https://learn.microsoft.com/en-us/sql/odbc/reference/syntax/sqlnativesql-function?view=sql-server-ver16&redirectedfrom=MSDN
https://support.esri.com/en-us/knowledge-base/error-failure-to-access-the-dbms-server-08s01microsofts-000019181
https://www.ibm.com/support/pages/communication-link-failure-when-checking-out-schema
https://stackoverflow.com/questions/16459990/sql-error-0-sqlstate-08s01-communications-link-failure