Opened 4 years ago

Closed 4 years ago

#1269 closed enhancement (fixed)

Timeout while searching for existing files in the Release exporter

Reported by: Nicklas Nordborg Owned by: Nicklas Nordborg
Priority: major Milestone: Reggie v4.28
Component: net.sf.basedb.reggie Keywords:
Cc:

Description

The Release exporter need to search for existing files so that it can know which files that need to be copied and which files that can be linked to existing files. The search is made with several find commands. Unfortunately it seems like the search takes too long to complete. There is a hard-coded timeout of 30 seconds.

net.schmizz.sshj.connection.ConnectionException: Timeout expired 
at net.sf.basedb.opengrid.CmdResult.setException(CmdResult.java:106) 
at net.sf.basedb.opengrid.AbstractSession.execute(AbstractSession.java:145) 
at net.sf.basedb.opengrid.AbstractSession.executeCmd(AbstractSession.java:106) 
at net.sf.basedb.reggie.plugins.release.FileServerOutputLocation.findReleasedFile(FileServerOutputLocation.java:103) 
at net.sf.basedb.reggie.plugins.release.SpecimenWriter.exportHistologyImage(SpecimenWriter.java:173) 
at net.sf.basedb.reggie.plugins.release.SpecimenWriter.toJSONObjects(SpecimenWriter.java:142) 
at net.sf.basedb.reggie.plugins.release.JsonWriter.writeJsonData(JsonWriter.java:131) 
at net.sf.basedb.reggie.plugins.release.ReleaseExporter.exportCohortData(ReleaseExporter.java:201) 
at net.sf.basedb.reggie.plugins.release.ReleaseExporter.createAllReleaseFiles(ReleaseExporter.java:128) 
at net.sf.basedb.reggie.plugins.release.ReleaseExporterPlugin.run(ReleaseExporterPlugin.java:139) 
at net.sf.basedb.core.PluginExecutionRequest.invoke(PluginExecutionRequest.java:117) 
at net.sf.basedb.core.InternalJobQueue$JobRunner.run(InternalJobQueue.java:574) 
at java.base/java.lang.Thread.run(Thread.java:834) 

This time it happend to work after retrying. I think we need to extend the timeout, and possible we should have a mechanism that increases the value the more item that are included in the release.

Change History (1)

comment:1 by Nicklas Nordborg, 4 years ago

Resolution: fixed
Status: newclosed

In 6019:

Fixes #1269: Timeout while searching for existing files in the Release exporter

The timout is now set to the list size / 100. If this value below 30 or above 300 (corresponding to a list size between 3000 and 30000) it is set to the nearest value.

Note: See TracTickets for help on using tickets.