Whenever I try to update the Google sheet using updater node, the google sheet gets updated but it throws the error Execute failed: Read timed out in the console.
Does this issue still persists at your end? Ideally faulty connections might be causing this. Also can you point me to the version of KNIME you are using?
Apologies for the late reply. I have been discussing this issue internally and I have not been able to reproduce it. So like it appears there can be one of the possible reasons (as suggested by @marvin.kickuth ):
Do you happen to do it on the company’s network? Maybe try it other than VPN or on other network? This might rule out any blockers on the company network.
Can you try to use Google Authenticator node instead for authentication and try again? This will rule out any unhandled exceptions (if Google has made some changes to the internal structure, that we are not aware of. Highly unlikely, but still lets consider this as a plausible scenario.)
Should the error still persist, can you share a sampe CSV file and log information from View → Open KNIME Log? Please be mindful that no sensitive information like tokens or client ids are shared in the log.
to clarify a bit: the Read timeout you’re running into suggests that a connection is successful, as is the update/write operation. However, receiving a reply from the server (e.g. a simple 200 “ok” response, or the now updated file) fails.
This may be an odd network limitation, hence Ali suggested that you try a non-corporate network, e.g. your home network while not connected to any VPN service.
It may also make sense to try connecting via the Google Authenticator node, to rule out any weirdness with the API key you’re using.
Lastly, should you still run into the error, it would be fantastic if you could share a workflow or data file that allows others to reproduce the issue. Maybe you can look into the data you’re writing and notice that this update fails if the data contains e.g. columns with special characters.
Thanks for all the suggestions. Things I have tried so far.
1.) Tried to run the workflow on an another network, with and without VPN.
2.) Tried to use the google authenticator node.
Both of the above did not solve the issue. I cannot provide the data file as it’s confidential data. Hoping this log might help to investigate the root cause.
2023-11-02 14:09:47,553 : ERROR : KNIME-Worker-30-Google Sheets Updater 4:101 : : Node : Google Sheets Updater : 4:101 : Execute failed: Read timed out
java.net.SocketTimeoutException: Read timed out
at java.base/sun.nio.ch.NioSocketImpl.timedRead(Unknown Source)
at java.base/sun.nio.ch.NioSocketImpl.implRead(Unknown Source)
at java.base/sun.nio.ch.NioSocketImpl.read(Unknown Source)
at java.base/sun.nio.ch.NioSocketImpl$1.read(Unknown Source)
at java.base/java.net.Socket$SocketInputStream.read(Unknown Source)
at java.base/sun.security.ssl.SSLSocketInputRecord.read(Unknown Source)
at java.base/sun.security.ssl.SSLSocketInputRecord.readHeader(Unknown Source)
at java.base/sun.security.ssl.SSLSocketInputRecord.bytesInCompletePacket(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl.readApplicationRecord(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl$AppInputStream.read(Unknown Source)
at java.base/java.io.BufferedInputStream.fill(Unknown Source)
at java.base/java.io.BufferedInputStream.read1(Unknown Source)
at java.base/java.io.BufferedInputStream.read(Unknown Source)
at java.base/sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
at java.base/sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at java.base/java.net.HttpURLConnection.getResponseCode(Unknown Source)
at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)
at com.google.api.client.http.javanet.NetHttpResponse.<init>(NetHttpResponse.java:36)
at com.google.api.client.http.javanet.NetHttpRequest.execute(NetHttpRequest.java:152)
at com.google.api.client.http.javanet.NetHttpRequest.execute(NetHttpRequest.java:84)
at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1012)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:552)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:493)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:603)
at org.knime.google.api.sheets.nodes.sheetupdater.GoogleSheetUpdaterModel.updateSpreadsheet(GoogleSheetUpdaterModel.java:171)
at org.knime.google.api.sheets.nodes.sheetupdater.GoogleSheetUpdaterModel.execute(GoogleSheetUpdaterModel.java:124)
at org.knime.core.node.NodeModel.executeModel(NodeModel.java:558)
at org.knime.core.node.Node.invokeFullyNodeModelExecute(Node.java:1274)
at org.knime.core.node.Node.execute(Node.java:1036)
at org.knime.core.node.workflow.NativeNodeContainer.performExecuteNode(NativeNodeContainer.java:595)
at org.knime.core.node.exec.LocalNodeExecutionJob.mainExecute(LocalNodeExecutionJob.java:98)
at org.knime.core.node.workflow.NodeExecutionJob.internalRun(NodeExecutionJob.java:201)
at org.knime.core.node.workflow.NodeExecutionJob.run(NodeExecutionJob.java:117)
at org.knime.core.util.ThreadUtils$RunnableWithContextImpl.runWithContext(ThreadUtils.java:367)
at org.knime.core.util.ThreadUtils$RunnableWithContext.run(ThreadUtils.java:221)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at org.knime.core.util.ThreadPool$MyFuture.run(ThreadPool.java:123)
at org.knime.core.util.ThreadPool$Worker.run(ThreadPool.java:246)