Custom Table Data Empty in Insights

Custom Table Data Empty in Insights

Issue Description

Custom Table Data Empty in Insights. Under https://insightsURL/app/data, selecting the cube, the table is present but contains no data.

Root Cause

Typically this happens when there is a "java.net.SocketTimeoutException: Read timed out" that occurs when trying to update the schema for the table. This type of exception is different from a normal timeout and is much more rare. However, from testing, it has been found that the default java timeout can be too low for larger tables.

Diagnosing/Resolving

  1. Try rebuilding the cube.
  2. After the rebuild see if the data came in. If it did not check the log: %programdata%\Sisense\DataConnectors\JVMContainer\Connectors\UiFrost\Connector.log
  3. See if the following exception is encountered
    1. ERROR c.s.c.j.s.SchemaManager [SchemaManager] SchemaManager - Something happened.
      java.net.SocketTimeoutException: Read timed out
      at java.net.SocketInputStream.socketRead0(Native Method) ~[?:1.8.0_191-1-ojdkbuild]
      at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) ~[?:1.8.0_191-1-ojdkbuild]
      at java.net.SocketInputStream.read(SocketInputStream.java:171) ~[?:1.8.0_191-1-ojdkbuild]
      at java.net.SocketInputStream.read(SocketInputStream.java:141) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.security.ssl.InputRecord.readFully(InputRecord.java:465) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.security.ssl.InputRecord.read(InputRecord.java:503) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:975) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:933) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.security.ssl.AppInputStream.read(AppInputStream.java:105) ~[?:1.8.0_191-1-ojdkbuild]
      at java.io.BufferedInputStream.fill(BufferedInputStream.java:246) ~[?:1.8.0_191-1-ojdkbuild]
      at java.io.BufferedInputStream.read1(BufferedInputStream.java:286) ~[?:1.8.0_191-1-ojdkbuild]
      at java.io.BufferedInputStream.read(BufferedInputStream.java:345) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:735) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) ~[?:1.8.0_191-1-ojdkbuild]
      at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) ~[?:1.8.0_191-1-ojdkbuild]
      at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:347) ~[?:1.8.0_191-1-ojdkbuild]
      at com.google.api.client.http.javanet.NetHttpResponse.<init>(NetHttpResponse.java:37) ~[com.sisense.connectors.jdbc.UiFrost.jar:1.0]
      at com.google.api.client.http.javanet.NetHttpRequest.execute(NetHttpRequest.java:105) ~[com.sisense.connectors.jdbc.UiFrost.jar:1.0]
      at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:981) ~[com.sisense.connectors.jdbc.UiFrost.jar:1.0]
      at com.sisense.connectors.jdbc.client.SiSenseRestClient.buildElasticube(SiSenseRestClient.java:318) ~[com.sisense.connectors.jdbc.UiFrost.jar:1.0]
      at com.sisense.connectors.jdbc.schema.SchemaManager.refreshSchemaAndBuildCube(SchemaManager.java:85) ~[com.sisense.connectors.jdbc.UiFrost.jar:1.0]
      at com.sisense.connectors.jdbc.schema.SchemaManager.run(SchemaManager.java:51) [com.sisense.connectors.jdbc.UiFrost.jar:1.0]
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_191-1-ojdkbuild]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_191-1-ojdkbuild]
      at java.lang.Thread.run(Thread.java:748) [?:1.8.0_191-1-ojdkbuild]
  4. If the following is encountered, this is a bug. In the attached zip file is a jar that can be applied to fix the issue.
    1. Open Services.msc and stop the Sisense.JVMConnectorsContainer service
    2. Rename the log at C:\ProgramData\Sisense\DataConnectors\JVMContainer\Connectors\UiFrost\connector.log to OldConnectorLog.log (This is so we can compare the logs if needed)
    3. Go to: C:\Program Files\Sisense\DataConnectors\JVMContainer\Connectors\UiFrost and rename the file com.sisense.connectors.jdbc.UiFrost.jar - This file will be saved as a back up.
    4. Unzip the attached zip and place the jar file in C:\Program Files\Sisense\DataConnectors\JVMContainer\Connectors\UiFrost
    5. Restart the Sisense.JVMConnectorsContainer service.
    6. Wait 45 minutes (actually, only15 minutes is needed, but 45 minutes should be safe).
    7. After this, check to see if the data came into Insights.
    8. In the connector.log, there will now be a message that looks something like:
      • buildElasticcube() -- Post request: connectionTimeout=60000 readTimeout =120000 content=com.google.api.client.http.json.JsonHttpContent
      • In the message the new timeouts are included, they are increased significantly higher.
    9. Once this is done, if the issue continues, capture the new log at C:\ProgramData\Sisense\DataConnectors\JVMContainer\Connectors\UiFrost\connector.log
    10. If the issue still occurs, send the log to UiPath Support.
  5. If the exception in step two was not encountered, raise a ticket with UiPath and include the connector.log

Where can we find the zip file referenced in this thread? Thank you!

Hi Sean,

Can you please file a ticket with support? They will be able to send you the zip file