AccessHomeMigration - ACCESS-NRI/accessdev-Trac-archive GitHub Wiki

ACCESS home (~access) migration

The ACCESS home directory ~access was migrated from Gadi's non-persistent /scratch filesystem to the persistent /g/data filesystem on 2020-12-14.

The new location of ~access is /g/data/access/projects/access. Any references to ~access will work normally, references to the old location /projects/access will need to be updated.

Generic fixes

You can check what needs to be changed in a configuration directory with the command

grep 'projects/access' . -r --exclude-dir .svn

A sed command that will fix a script is

sed -e 's:\(^\|\W\)/projects/access:\1~access:' FILE

This will match either the start of a line or a non-word character (\W, e.g. a quote mark or a space) followed by /projects/access, and then replace that with the starting character followed by 'access'. Note you should use the full path /g/data/access/projects/access for source code, since Fortran/C/Python won't understand '' by default.

Error reading STASETS_DIR

Error Message

FORT_GET_ENV: Environment Variable STASETS_DIR
FORT_GET_ENV: Value /g/data/access/projects/access/umdir/vn7.3/ctldata/stasets
FORT_GET_ENV: Value too long for Allocated Storage

In some versions the length of variables within the model are too small for the full path. A workaround is to use a symbolic link to the working directory

ln -sn ~access accesshome
export UMDIR=accesshome/umdir

Missing libgrib_api

Error message

error while loading shared libraries: libgrib_api_f90.so.0: cannot open shared object file: No such file or directory

Make sure your model run loads the modules 'grib-api' and 'openjpeg'

Changes to specific models

See below for changes needed to specific models

Rose/Cylc UM 10+

In the storage directive in your suite replace scratch/access with gdata/access, otherwise the job won't be able to find cylc on gadi.

Rose/Cylc ACCESS-CM 2

For an example of changes required for a suite, see [180955] of historical suite u-bx616, https://code.metoffice.gov.uk/trac/roses-u/changeset/180955/b/x/6/1/6/trunk

Restarting an existing suite is a little more complicated because some files with the old paths were created at start-up. The install_ancil task creates cylc-run/SUITE/share/data/etc/um_ancils_gl. This has a line

export UM_ANCIL_N96EO1DIR_CM2=/projects/access/data/ancil/access_cm2_n96e/O1

which must be changed.

If the suite includes the ozone redistribution, share/ozone_redistribution/qrparm.orog will be a link to the old location and must be replaced.

rm qrparm.orog
ln -s ~access/data/ancil/access_cm2_n96e/O1/qrparm.orog .

Payu ACCESS-ESM 1.5

No changes required

Shell Script ACCESS-CM 1.x

Replace occurrences of /projects/access with ~access in the $RUNID and $RUNID.init scripts

Add to the end of the '$RUNID.init' script

# Create symlinks so file paths aren't too long
ln -sn ~access accesshome

export UMDIR=accesshome/umdir

# Use the symlink when loading files
for file in $atmrundir/tmp*/*; do
   sed 's:\(^\|\W\)\(/projects/access\):\1accesshome:' -i $file
done

UMUI UM 7.3

Add the hand edit '~access/gadi/handedits/accesshomemigration' to the bottom of the hand edit list in the UMUI (under Input/Output Control and Resources -> User hand edit files)

Modules in ~access/apps

# Module Version OWNER Status
ants 0.10.0 Wenming
ants 0.13.0 Wenming
ants 0.14.0 Wenming
xxdiff Wenming
nwptools_py2 2019.11 Wenming
odbserver 0.16.2