Open Spreadsheet TIMEOUT

Hey there,

I’m getting the following error when attempting to open spreadsheet:

Error executing OpenSpreadsheetAction
com.workfusion.studio.rpa.recorder.playback.PlaybackException: Error executing OpenSpreadsheetAction[id=1185,name=Optional[OpenSpreadsheetAction],parent=1095,children=[1186, 1187, 1188, 1189],arguments=ActionArguments[delay=[0],timeoutMs=[10000],filePath=[E:\Sage Data Reconciliation\Process Documentation\Output_Template.xlsx],xsi:type=[recorder:OpenSpreadsheetAction, recorder:OpenSpreadsheetAction],pollingInterval=[300],active=[true],awaitTimeout=[5000]]]
at com.workfusion.studio.rpa.recorder.playback.action.OpenSpreadsheetAction.tryExecuteScript(OpenSpreadsheetAction.java:108)
at com.workfusion.studio.rpa.recorder.playback.action.OpenSpreadsheetAction.execute(OpenSpreadsheetAction.java:71)
at com.workfusion.studio.rpa.recorder.playback.action.OpenSpreadsheetAction.execute(OpenSpreadsheetAction.java:16)
at com.workfusion.studio.rpa.recorder.playback.player.ActionPlayer.next(ActionPlayer.java:81)
at com.workfusion.studio.rpa.recorder.player.PlaybackLogic.playNextAction(PlaybackLogic.java:154)
at com.workfusion.studio.rpa.recorder.player.PlaybackLogic.run(PlaybackLogic.java:112)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.openqa.selenium.WebDriverException: Session [ca631c1b-3395-4e34-aedb-e24369bc65fd] was terminated due to TIMEOUT
Command duration or timeout: 0 milliseconds
Build info: version: ‘9.3.0.5’, revision: ‘63553f3f1c’, time: ‘2019-03-15T13:41:27.26Z’
System info: host: ‘RPA-EXPRESS’, ip: ‘192.168.1.15’, os.name: ‘Windows Server 2012 R2’, os.arch: ‘amd64’, os.version: ‘6.3’, java.version: ‘1.8.0_121’
Driver info: com.freedomoss.crowdcontrol.webharvest.selenium.wrapper.RemoteDriverWrapper
Capabilities [{imageSimilarityThreshold=0.8, extra.executor.id={Name=RPA Recorder}, CLOSE_ALL_WINDOWS=false, browserName=universal, javascriptEnabled=true, extra.capabilities.context={“browserType”:“universal”,“startInPrivate”:false,“blockImages”:false,“maximizeOnStartup”:false,“customCapabilities”:{“platform”:“WINDOWS”,“javascriptEnabled”:true,“SEARCH_ALL_WINDOWS”:true,“CLOSE_ALL_WINDOWS”:false,“imageSimilarityThreshold”:“0.8”},“executorId”:{“Name”:“RPA Recorder”}}, platformName=WINDOWS, SEARCH_ALL_WINDOWS=true, platform=WINDOWS}]
Session ID: ca631c1b-3395-4e34-aedb-e24369bc65fd
at sun.reflect.GeneratedConstructorAccessor86.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:216)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:168)
at org.openqa.selenium.remote.http.JsonHttpResponseCodec.reconstructValue(JsonHttpResponseCodec.java:41)
at org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:82)
at org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:45)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:164)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:741)
at org.openqa.selenium.remote.RemoteWebDriver.executeScript(RemoteWebDriver.java:677)
at com.workfusion.rpa.helpers.Excel.openExcel(Excel.java:48)
at com.workfusion.rpa.helpers.Excel$openExcel.callStatic(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:55)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:197)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:209)
at Script106.run(Script106.groovy:1)
at com.workfusion.studio.rpa.recorder.playback.shell.GroovyShellWrapper.executeScript(GroovyShellWrapper.java:48)
at com.workfusion.studio.rpa.recorder.playback.player.PlaybackContext.executeScript(PlaybackContext.java:108)
at com.workfusion.studio.rpa.recorder.playback.action.OpenSpreadsheetAction.tryExecuteScript(OpenSpreadsheetAction.java:99)
at com.workfusion.studio.rpa.recorder.playback.action.OpenSpreadsheetAction.execute(OpenSpreadsheetAction.java:71)
at com.workfusion.studio.rpa.recorder.playback.action.OpenSpreadsheetAction.execute(OpenSpreadsheetAction.java:16)
at com.workfusion.studio.rpa.recorder.playback.player.ActionPlayer.next(ActionPlayer.java:81)
at com.workfusion.studio.rpa.recorder.player.PlaybackLogic.playNextAction(PlaybackLogic.java:154)
at com.workfusion.studio.rpa.recorder.player.PlaybackLogic.run(PlaybackLogic.java:112)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.openqa.grid.common.exception.GridException: Session [ca631c1b-3395-4e34-aedb-e24369bc65fd] was terminated due to TIMEOUT
at org.openqa.grid.internal.ActiveTestSessions.getExistingSession(ActiveTestSessions.java:105)
at org.openqa.grid.internal.Registry.getExistingSession(Registry.java:398)
at org.openqa.grid.web.servlet.handler.RequestHandler.getSession(RequestHandler.java:230)
at org.openqa.grid.web.servlet.handler.RequestHandler.process(RequestHandler.java:115)
at org.openqa.grid.web.servlet.DriverServlet.process(DriverServlet.java:84)
at org.openqa.grid.web.servlet.DriverServlet.doPost(DriverServlet.java:68)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.seleniumhq.jetty9.servlet.ServletHolder.handle(ServletHolder.java:841)
at org.seleniumhq.jetty9.servlet.ServletHandler.doHandle(ServletHandler.java:535)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
at org.seleniumhq.jetty9.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
at org.seleniumhq.jetty9.server.handler.ContextHandler.doHandle(ContextHandler.java:1253)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
at org.seleniumhq.jetty9.servlet.ServletHandler.doScope(ServletHandler.java:473)
at org.seleniumhq.jetty9.server.session.SessionHandler.doScope(SessionHandler.java:1564)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
at org.seleniumhq.jetty9.server.handler.ContextHandler.doScope(ContextHandler.java:1155)
at org.seleniumhq.jetty9.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.seleniumhq.jetty9.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.seleniumhq.jetty9.server.Server.handle(Server.java:564)
at org.seleniumhq.jetty9.server.HttpChannel.handle(HttpChannel.java:317)
at org.seleniumhq.jetty9.server.HttpConnection.onFillable(HttpConnection.java:251)
at org.seleniumhq.jetty9.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
at org.seleniumhq.jetty9.io.FillInterest.fillable(FillInterest.java:110)
at org.seleniumhq.jetty9.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
at org.seleniumhq.jetty9.util.thread.Invocable.invokePreferred(Invocable.java:128)
at org.seleniumhq.jetty9.util.thread.Invocable$InvocableExecutor.invoke(Invocable.java:222)
at org.seleniumhq.jetty9.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:294)
at org.seleniumhq.jetty9.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:199)
at org.seleniumhq.jetty9.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672)
at org.seleniumhq.jetty9.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590)
at java.lang.Thread.run(Thread.java:745)

Any ideas?
Thanks!

Hi @wwylie.
What’s the size of your Excel file?

12 KB. I’ve used this same process frequently opening the same file and have just recently had this issue.

Did the file content change since last time that you started process? Also does the exist after restarting Studio?

Yes, the file was last edited earlier this week. Yes, I’m still having the issue after restarting.

Some context:
The process I’m running opens an excel input file, reads data, restructures the data, then opens a template excel file and saves the restructured data as a new file. The last step (open template) is where I’m having the issue. Currently, when I run the process on a smaller input file (ex. 86 KB vs 379 KB), the entire process runs successfully.

I’ve never seen this issue before - it’s not a very long process at all.

Update:
I replaced the data restructuring portion of the process with a wait time. First run - 5 minutes and the script finished successfully. Second run - 10 minutes and the script failed with the same TIMEOUT error.

So it seems this is some sort of runtime issue.

Hi @wwylie.

How much data is in your spreadsheet after the first run?
Also I can suggest to increase timeout.
Please close RPA Express and go to the folder C:\RPAExpress\RPA\rpa-grid. Find hub.json and change “timeout” parameter. Default value is 5 minutes, but this is reflected in seconds.
image

@Lera adjusting the timeout to 15 minutes worked, thank you!

2 Likes

:grinning: Congratulations! Many thanks for the response! :blush:

Hi @Lera my team and I continue to get this timeout error when attempting to open excel from time to time. In my experience, it happens when I have one or more excel actions early on in a script, then loop through a data set, then when attempting to open the same excel file I get the timeout error. Before, the increased hub.json timeout value helped but that is no longer working. I do not get this error when running smaller data sets, but always with larger sets. So the issue seems to be caused by the amount of time between open spreadsheet actions. FYI - this is a script running in control tower, not in studio. Should I just continue to increase the hub.json timeout value? Can you explain what these timeout values actually do? We are seeing this issue a lot in version 2.3.

Thank You!

Hello @wwylie.
Can you please advise which version of RPA Express do you have now? Is it installed on Windows Server?

Version 2.3.0 and yes, it is installed on Windows Server. I’ve gotten the same error on my desktop version which is also 2.3.0.

Do you mean in your local Control Tower? Can you please send me RPA logs from C:\RPAExpress\RPA\logs\ when you have this exception again?

rpa-node2-2019-08-22.0.zip (32.1 KB)

Hey @Lera were you able to look into this further? I’m still getting these “was terminated due to TIMEOUT” error messages.

Hi @wwylie.

Yes, I had a look at your file, but didn’t find a lot. My guess that as you have more issues with big datasets, so the issue may also be with Java that tries to process data. So this can be 2 points:

  • timeout in hub.json (server_hub.json for Windows Server machine) that means that processing of data on RPA node takes more time and standard timeout with 5 minutes doesn’t suit.
  • timeout due to JVM takes a lot of memory and bot cannot process all data in time due to lack of memory.

As about solution, I can only suggest to increase timeout in json file. Also you can try to play with parameters -Xms and -Xmx in files setenv.bat and workfusion-studio.ini (separate for Studio and for Control Tower). It may help, but please take into account that may cause an issue with whole performance of your server.

2 Likes

Increasing the timeout value in the server_hub.json file seemed to do the trick - thank you!

2 Likes

Thanks for the response. Glad to know that I could help :smile: