Description
The JavaActionExecutor#setLibFilesArchives method can be costly as its iterating through all the files, archives, lib files and share lib files added for an action. Its invoked twice per workflow at the moment, but the second call does make any difference.
public void setLibFilesArchives(Context context, Element actionXml, Path appPath, Configuration conf) throws ActionExecutorException { addWfApplicationLibs(appPath, conf, context.getProtoActionConf()); addActionXmlFilesAndArchives(actionXml, appPath, conf); initShareLibExcluder(conf, context); addActionLibs(appPath, conf); addAllShareLibs(appPath, conf, context, actionXml); }
First setLibFilesArchives is invoked in JavaActionExecutor#submitLauncher and then submitLauncher calls createLauncherConf, where its invoked again, but one of them is unnecessary.
I tested around a bit and its probably safe to remove the setLibFilesArchives call for example from submitLauncher.