Migration to ecflow 5 series is straightforward, if you are using ecFlow version 4.7.0 or later.
- Stop all jobs in the old server, then terminate. Check that the checkpoint file was written.
Load the latest ecflow 5
Code Block module load ecflow/5new
Start the new ecflow 5 server with the same port. It will automatically read the the checkpoint file that were created in version 4.7.X and above.
Code Block ecflow_start.sh -p <port> # Open with same port.
If you used the '-d' option for location of ECF_HOME directory(i.e. for checkpoint and log file, includes, etc), make sure you use the same location.
Code Block ecflow_start.sh -p <port> -d <dir> # Open with same port and -d dir as used for ecflow 4
For the very first use of ecflow_ui, then move aside the old .ecflowrc directory.
Code Block mv $HOME/.ecflowrc $HOME/.ecflowrc_old4
Migration( only required for ecflow < 4.7.0)
In most cases, we can easily migrate from one version of ecflow to another. Since the checkpoint file will be readable by the new version of ecflow.
However, occasionally this may not always be possible. (i.e. if there has been large internal re-factoring). On these occasions we can use ecflow_client --migrate.
...
If the backup servers functionality is used, then then backup servers should also be migrated at the same time.
The following notes provides provide more detail detailed guidance on the migration process.
This assumes you are migrating half way halfway through running some experiments, and want to continue where you left.
...
shut-down
Code Block language bash title shutdown ecflow_client --shutdown
suspend all suites
Code Block language bash title suspend CL="ecflow_client --port 3142 --host machineX" for s in $($CL --suites); do $CL --suspend /$s; done
- wait for active/submitted tasks to complete
halt the server:
Code Block language bash title halt ecflow_client --halt
Use --migrate to dump state and structure to a file:
Code Block language bash title migrate ecflow_client --migrate > all_suites.def
- terminate server *or* leave the server running but start a new server on a different machine to avoid port number clash.
- remove checkpt and backup checkpt files, to prevent new server from loading them
...