Opened 7 months ago

Closed 7 months ago

#2822 closed help (fixed)

Issue with parameterized tasks in cylc

Reported by: c.c.symonds Owned by: um_support
Component: Rose/Cylc Keywords: parameterized task, ensemble
Cc: Platform: PUMA
UM Version: 11.2

Description

I am currently trying to set up an ensembled run, and I am having problems implementing the parameterised tasks in a UKESM suite. I have previously successfully set them up in a UKCA release job suite but now the environment variables are being written to the job script in the wrong order, with the first environment parameter that uses ${CYLC_TASK_PARAM_ens} being written to the script before the value of ${CYLC_TASK_PARAM_ens} is written. As a result the task fails saying that CYLC_TASK_PARAM_ens is unbound.
This is a known issue in cylc, and I have found it mentioned in cylc development groups here and here, and apparently a fix has been implemented in cylc 7.5.0, however I am using puma and archer which use cylc 6.11.4.
I am aware of the jinja2 method of parameterising a run but I was wondering if there was a known workaround that still uses the native cylc parameterised task system.
If you are wanting to see the suite in question, it is suite u-bg935.

Change History (3)

comment:1 Changed 7 months ago by grenville

Christopher

We have set you up with an account on pumatest - this is a replacement for PUMA, which runs the latest Rose and Cylc. Once logged on to pumtest, you will see the same infrastructure as on PUMA.

On ARCHER you should add

export FCM_VERSION=pumatest
export CYLC_VERSION=pumatest
export ROSE_VERSION=pumatest

to your .profile (at the end) to ensure consistent Rose/Cylc? versions (note if you run suites from PUMA, a mismatch will result).

I'd answered this ticket earlier to explain what we intended to do, but seemed not to have actually sent the answer. Sorry for the confusion.

Grenville

comment:2 Changed 7 months ago by c.c.symonds

Running using version 7.8.1 of cylc on pumatest seems to solve the problem - the task parameter is now defined earlier in the cylc job file than it was previously in version 6.11.4. Test run currently ongoing.

For later reference, Workaround attempted on PUMA by commenting out a previous declaration of the data output directory location which was preceding the call to the coupled task. This puts the variables in the correct order, however it prevents the clearout task from running as it relies on DATAM as a global variable defined in the root, as such this workaround cannot be used with UKESM if the clearout task is enabled

comment:3 Changed 7 months ago by willie

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.