Author: chatellier Date: 2009-11-05 09:29:50 +0000 (Thu, 05 Nov 2009) New Revision: 2740 Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/config/SSHLauncherConfigUI.jaxx isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties Log: Remove simultaneous simulation limit, prepare multijobs use. Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2009-11-04 18:15:48 UTC (rev 2739) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2009-11-05 09:29:50 UTC (rev 2740) @@ -514,28 +514,6 @@ } /** - * Retourne le nombre simultané de simulations authorisées sur - * caparmor. - * - * Utilisé pour l'envoie des simulations. - * - * @return le nombre de simulations authorisé - */ - public int getSimulatorSshMaxSimultaneousSimulation() { - int result = getOptionAsInt(Option.SIMULATOR_SSH_MAX_SIMULTANEOUS_SIMULATION.key); - return result; - } - - /** - * Change max simultaneous simulation at a time. - * - * @param max max - */ - public void setSimulatorSshMaxSimultaneousSimulation(int max) { - setOption(Option.SIMULATOR_SSH_MAX_SIMULTANEOUS_SIMULATION.key, String.valueOf(max)); - } - - /** * Retourne la clé privée de l'utilisteur courant. * * @return private ssh key path @@ -936,8 +914,6 @@ SIMULATOR_SSH_PBSBINPATH("simulation.ssh.pbsbinpath", _("isisfish.config.main.simulation.ssh.pbsbinpath.description"), "/usr/pbs/bin"), /** Serveur accessible par SSH : interval de check du fichier de control */ SIMULATOR_SSH_CONTROLCHECKINTERVAL("simulation.ssh.control.check.interval", _("isisfish.config.main.simulation.ssh.control.check.interval.description"), "120"), - /** Serveur accessible par SSH : nombre de simulations simultanées sur caparmor */ - SIMULATOR_SSH_MAX_SIMULTANEOUS_SIMULATION("simulation.ssh.max.simultaneous.simulation", _("isisfish.config.main.simulation.max.simultaneous.simulation.description"), "20"), LOCALE("locale", _("isisfish.config.main.locale.description"), "fr_FR"), // REGION_MAP("regionMap", _("isisfish.config.main.regionMap.description"), "maps"), Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2009-11-04 18:15:48 UTC (rev 2739) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2009-11-05 09:29:50 UTC (rev 2740) @@ -31,7 +31,6 @@ import java.util.List; import java.util.Map; import java.util.Properties; -import java.util.concurrent.Semaphore; import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; @@ -109,14 +108,6 @@ protected static Session sshSftpSession; /** - * Semaphore used to upload only 20 (default) simulations at a time. - * - * @deprecated this just a hack to not crash PBS - */ - protected static Semaphore semaphore = new Semaphore(IsisFish.config - .getSimulatorSshMaxSimultaneousSimulation()); - - /** * Constructor. * * Init freemarker. @@ -179,8 +170,7 @@ // par defaut, pour ssh, on utilise 20 secondes - int interval = (int) IsisFish.config - .getSimulatorSshControlCheckInterval(); + int interval = (int) IsisFish.config.getSimulatorSshControlCheckInterval(); return interval; } @@ -193,33 +183,6 @@ } /** - * Use semaphore to limit simultaneous simulation number on caparmor. - * @see Semaphore - */ - public void simulationStarted() { - try { - semaphore.acquire(); - if (log.isDebugEnabled()) { - log.debug("Semaphore have now " + semaphore.availablePermits() + " available resources"); - } - } catch (InterruptedException e) { - if (log.isErrorEnabled()) { - log.error("Semaphore aquiere has been interrupted", e); - } - } - } - - /** - * Release one resource on semaphore. - */ - protected void simulationEnded() { - semaphore.release(); - if (log.isDebugEnabled()) { - log.debug("Semaphore have now " + semaphore.availablePermits() + " available resources"); - } - } - - /** * {@inheritDoc} */ @Override @@ -238,8 +201,6 @@ } catch (SSHException e) { throw new RemoteException("Can't connect", e); } - - simulationEnded(); } /** @@ -260,11 +221,6 @@ throw new RemoteException("Username is empty"); } - // ask for available resources on caparmor - // blocking until available - message(control, _("isisfish.simulation.remote.message.waitingavailable")); - simulationStarted(); - // start ssh session try { @@ -293,7 +249,7 @@ // prescript uploaded, delete simulationScript.delete(); - sendStartSimulationRequest(sshSession, scriptRemotePath, simulationid); + //sendStartSimulationRequest(sshSession, scriptRemotePath, simulationid); } catch (Exception e) { if (log.isErrorEnabled()) { @@ -395,15 +351,8 @@ if (resultArchiveFile != null) { - // FIXME done here to not break upload during import - // FIXME je pense que les resources ne sont - // pas liberees si la simulation a commencé - // mais qu'elle a demandée a être arrêté - simulationEnded(); - // FIXME too slow methods //SimulationStorage.importZip(resultZipFile); - //Tbz2Util.uncompress(resultArchiveFile, SimulationStorage.getSimulationDirectory()); //ZipUtil.uncompress(resultArchiveFile, SimulationStorage.getSimulationDirectory()); // FIXME big hacks here, only extract non first simulation @@ -426,7 +375,7 @@ resultArchiveFile.delete(); - // TODO remove remote md5 and zip + // TODO remove remote md5 and zip on remote } else { if (log.isWarnEnabled()) { @@ -442,11 +391,7 @@ if (log.isDebugEnabled()) { log.debug(_("Can't download archive : %s", e.getMessage())); } - } /*catch (TopiaException e) { - if (log.isErrorEnabled()) { - log.error("Can't import result zip file", e); - } - }*/ + } // INFORMATION file try { Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/config/SSHLauncherConfigUI.jaxx =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/config/SSHLauncherConfigUI.jaxx 2009-11-04 18:15:48 UTC (rev 2739) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/config/SSHLauncherConfigUI.jaxx 2009-11-05 09:29:50 UTC (rev 2740) @@ -40,7 +40,6 @@ protected String currentSSHTempPath; protected String currentSSHPbsBinPath; protected String currentSSHControlInterval; - protected String currentSSHSimultaneousSimulation; // fill default values resetSSHConfiguration(); @@ -62,7 +61,6 @@ sshTemppathField.setText(IsisFish.config.getSimulatorSshTmpPath()); sshPbsBinPathField.setText(IsisFish.config.getSimulatorSshPbsBinPath()); sshControlIntervalField.setText(String.valueOf(IsisFish.config.getSimulatorSshControlCheckInterval())); - sshSimultaneousSimulationField.setText(String.valueOf(IsisFish.config.getSimulatorSshMaxSimultaneousSimulation())); doCheck(); } @@ -143,14 +141,6 @@ else { setColor(false, sshControlIntervalField); } - - currentSSHSimultaneousSimulation = sshSimultaneousSimulationField.getText().trim(); - if (!currentSSHSimultaneousSimulation.matches("\\d+")) { - setColor(true, sshSimultaneousSimulationField); - } - else { - setColor(false, sshSimultaneousSimulationField); - } } /** @@ -168,7 +158,6 @@ IsisFish.config.setSimulatorSshTmpPath(currentSSHTempPath); IsisFish.config.setSimulatorSshPbsBinPath(currentSSHPbsBinPath); IsisFish.config.setSimulatorSshControlCheckInterval(Long.parseLong(currentSSHControlInterval)); - IsisFish.config.setSimulatorSshMaxSimultaneousSimulation(Integer.parseInt(currentSSHSimultaneousSimulation)); IsisFish.config.saveForUser(); dispose(); @@ -434,17 +423,6 @@ onKeyReleased="doCheck()" /> </cell> </row> - <row fill='horizontal'> - <cell> - <JLabel id='sshSimultaneousSimulationLabel' text='isisfish.config.main.simulation.max.simultaneous.simulation' - toolTipText='isisfish.config.main.simulation.max.simultaneous.simulation.description' /> - </cell> - <cell> - <JTextField id='sshSimultaneousSimulationField' - toolTipText='isisfish.config.main.simulation.max.simultaneous.simulation.description' - onKeyReleased="doCheck()" /> - </cell> - </row> </Table> <Table> <row fill='horizontal'> Modified: isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties =================================================================== --- isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-11-04 18:15:48 UTC (rev 2739) +++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-11-05 09:29:50 UTC (rev 2740) @@ -166,8 +166,6 @@ isisfish.config.main.regionMap.description= isisfish.config.main.remoteCaparmor.description= isisfish.config.main.resultExport.description= -isisfish.config.main.simulation.max.simultaneous.simulation=Simultaneous simulation -isisfish.config.main.simulation.max.simultaneous.simulation.description=Simultaneous simulation to do on Caparmor isisfish.config.main.simulation.ssh.control.check.interval=Control check interval (seconds) isisfish.config.main.simulation.ssh.control.check.interval.description=Control check interval (seconds) isisfish.config.main.simulation.ssh.datapath=Isis-Fish database @@ -972,7 +970,6 @@ isisfish.simulation.remote.message.connection=Connecting to Caparmor isisfish.simulation.remote.message.downloadresults=Downloading results isisfish.simulation.remote.message.upload=Uploading simulation -isisfish.simulation.remote.message.waitingavailable=Waiting for available resource. isisfish.simulation.remote.message.waitingstart=Waiting for simulation start isisfish.simulation.restarting=Restarting... isisfish.simulation.title=Simulation launcher Modified: isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties =================================================================== --- isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-11-04 18:15:48 UTC (rev 2739) +++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-11-05 09:29:50 UTC (rev 2740) @@ -166,8 +166,6 @@ isisfish.config.main.regionMap.description=le nom du r\u00E9pertoire contenant les maps d'une r\u00E9gion isisfish.config.main.remoteCaparmor.description=lance les simulations sur un serveur distant isisfish.config.main.resultExport.description=TODO -isisfish.config.main.simulation.max.simultaneous.simulation=Nombre de simulations simultan\u00E9es -isisfish.config.main.simulation.max.simultaneous.simulation.description=Nombre maximum de simulations pouvant \u00EAtre envoy\u00E9es au serveur isisfish.config.main.simulation.ssh.control.check.interval=V\u00E9rification de la progression (secondes) isisfish.config.main.simulation.ssh.control.check.interval.description=Temps d'attente en secondes entre deux v\u00E9rifications de progression isisfish.config.main.simulation.ssh.datapath=Base de donn\u00E9es @@ -972,7 +970,6 @@ isisfish.simulation.remote.message.connection=Connexion \u00E0 Caparmor isisfish.simulation.remote.message.downloadresults=T\u00E9l\u00E9chargement des r\u00E9sultats isisfish.simulation.remote.message.upload=Upload de la simulation -isisfish.simulation.remote.message.waitingavailable=Attente d'une place de simulation isisfish.simulation.remote.message.waitingstart=Attente du d\u00E9marrage de la simulation isisfish.simulation.restarting=Red\u00E9marrage... isisfish.simulation.title=Lanceur de simulation