Test execution stops without any relevant error

Problem:
we were forced to update JDBC library for denodo Denodo is a leader in data management due to SSL communication. Unfortunately, tests that were using JDBC connection stops to work.
Test is cycling thru some test data and send requests using JDBC to denodo. This test was OK before we change JDBC driver to newest one.
After some time(no of cycles) test stops - no sign that it’s running in console, log shows just Connection timed out. Most strange thing is that Log viewer just stops showing anything right after the start where script opens connection to Denodo.
What Was tested:
I adapt whole script to be able to run as pure Groovy script and it worked as intended.
Execution from command line fails too.
I suspect:
that there is some collision in libraries that are used by Katalon Studio and new JDBC driver.
I need help:
I need help to focus down which libraries are colliding so i can talk to Denodo/Katalon dev teams to try to fix this issue. Any idea how to log on lower level (or where can i find those logs) is much appreciated.

Windows 7 enterprise
ANY Katalon Studio version (5.9.0-5.10.1)

Katalon Studio logs

Wed Jan 23 13:29:50 CET 2019
java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:673)
at sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:173)
at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)
at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1199)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1050)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream0(HttpURLConnection.java:1334)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1309)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:259)
at com.kms.katalon.application.utils.ServerAPICommunicationUtil.sendAndReceiveData(ServerAPICommunicationUtil.java:220)
at com.kms.katalon.application.utils.ServerAPICommunicationUtil.invoke(ServerAPICommunicationUtil.java:115)
at com.kms.katalon.application.utils.ServerAPICommunicationUtil.post(ServerAPICommunicationUtil.java:47)
at com.kms.katalon.tracking.service.TrackingApiService.post(TrackingApiService.java:24)
at com.kms.katalon.tracking.service.TrackingService.sendEventPayload(TrackingService.java:41)
at com.kms.katalon.tracking.service.TrackingService.lambda$0(TrackingService.java:25)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java: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)



Wed Jan 23 13:29:50 CET 2019
Cannot send request, retry to send.

Connect function is implemented like this:

@Keyword
def connect(String URI, String userName, String userPwd){
  System.setProperty("javax.net.ssl.keyStore", "C:/Users/XXXX/src/katalon/YYY/ZZZ/keys/keystore.jks")
  System.setProperty("javax.net.ssl.keyStorePassword", "********")
  System.setProperty("javax.net.ssl.trustStore", "C:/Users/XXXX/src/katalon/YYYY/ZZZ/keys/keystore.jks")
  System.setProperty("javax.net.ssl.trustStorePassword", "********")
  try {
    Class.forName("com.denodo.vdp.jdbc.Driver")
  } catch (ClassNotFoundException e) {
    e.printStackTrace()
return
  }
  try {
    connection = DriverManager.getConnection(URI, userName, userPwd)
  } catch (Exception e) {
    e.printStackTrace()
    return
  }
  if (connection != null) {
  } else {
    println("Failed to make connection!")
  }
  return connection
}

script:

CustomKeywords.'com.swre.rmis_denodo_train.connect'(GlobalVariable.denodoJdbcUrl,
				GlobalVariable.denodoUsername,
				GlobalVariable.denodoPassword)


def r = 1

while (r < 100){
  println "********************** cycle: ${r}"
  r++
}

CustomKeywords.'com.swre.rmis_denodo_train.close'()

just to add - connection to Denodo is successful, also i can execute queries.

You might be able to add this to the Katalon log.properties to get more information from the Denodo driver.

logging.level.com.denodo=TRACE

This is mentioned here, under the heading “Logs Configuration”:
https://docs.katalon.com/katalon-studio/docs/working-with-execution-log.html#logs-configuration

Thank you for answer, i already have that set, but no meaningful messages.
i just realised that basically i’m changing JKS in my connect keyword … could this be an issue? i need to investigate this option.

So after installing my certificate to default truststore, nothing changes. W/O key connection fails (as expected) with key connection is successful but test stops.
It seems to me like something that process Console output stops working, does not consume Console and buffer of console is full and therefore it stops executing anything else.
@Katalon_team please help

Is it possible to turn off Log Viewer?

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.