Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update snow obs preprocessing job #2946

Open
wants to merge 25 commits into
base: develop
Choose a base branch
from

Conversation

jiaruidong2017
Copy link
Contributor

Description

This PR modifies the workflow XML configuration so that the prep snow obs job only runs on the 00z cycle.

This PR also renames the snow_obs and snowobs to the snowcover for highlighting the input IMS data source as snow cover.

Resolves (#2902)

Type of change

  • Maintenance (code refactor, clean-up, new CI test, etc.)

Change characteristics

  • Is this a breaking change (a change in existing functionality)? NO
  • Does this change require a documentation update? NO
  • Does this change require an update to any of the following submodules? NO

How has this been tested?

  • Forecast-only on Hera

Checklist

  • Any dependent changes have been merged and published
  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • New and existing tests pass with my changes
  • I have made corresponding changes to the documentation if necessary

if self._app_config.do_jedisnowda:
sdate_snocvr = self._base['SDATE']
edate_snocvr = self._base['EDATE']
interval_snocvr = to_timedelta(f"24:00:00H")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
interval_snocvr = to_timedelta(f"24:00:00H")
interval_snocvr = to_timedelta('24H')

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Made changes. Thanks.

task_dict = {'task_name': task_name,
'resources': resources,
'dependency': dependencies,
'envars': self.envars,
'cycledef': self.run.replace('enkf', ''),
'command': f'{self.HOMEgfs}/jobs/rocoto/prepsnowobs.sh',
'cycledef': cycledef,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
'cycledef': cycledef,
'cycledef': 'gdas_prep_snocvr',

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Made changes as suggested. Thanks.


deps = []
dep_dict = {'type': 'task', 'name': f'{self.run}prep'}
deps.append(rocoto.add_dependency(dep_dict))
dependencies = rocoto.create_dependency(dep=deps)

resources = self.get_resource('prepsnowobs')
task_name = f'{self.run}prepsnowobs'
cycledef = 'gdas_prep_snocvr'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
cycledef = 'gdas_prep_snocvr'

@@ -591,7 +592,10 @@ def prepsnowobs(self):
def snowanl(self):

deps = []
dep_dict = {'type': 'task', 'name': f'{self.run}prepsnowobs'}
if f'@H' == '00':
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@H is a rocoto thing, so this doesn't have any meaning to python when this function is run and this won't work as-is. #2928 is adding support for the undocumented rocoto dependency <taskvalid>. Once that is in, we can use it to make a dependency that works here:

<or>
    <and>
        <not><taskvalid task="{self.run}prepsnowcover"/></not>
        <taskdep task="{self.run}prep"/>
    </and>
    <taskdep task="{self.run}prepsnowcover"/>
</or>

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @WalterKolczynski-NOAA for the information. Your introduced <taskvalid> above is exactly what we want here. For now, I made some changes here for a place holder.

                <or>
                        <taskdep task="gdasprep"/>
                        <taskdep task="gdasprepsnowcover"/>
                </or>

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@WalterKolczynski-NOAA Do you want me to wait for your PR #2928 or proceed to review this PR? I can update to use <taskvalid> after your PR is merged. Please let me know. Thanks.

@WalterKolczynski-NOAA WalterKolczynski-NOAA added the blocked Issue is currently being blocked by another issue label Oct 1, 2024
@CoryMartin-NOAA
Copy link
Contributor

@jiaruidong2017 can you resolve conflicts and then, if all his comments are addressed, re-request review from @WalterKolczynski-NOAA ?

@jiaruidong2017
Copy link
Contributor Author

@WalterKolczynski-NOAA The <taskvalid> is used to update the task dependency as below.

image

I conducted the test run, and the run was successful. Would you please review this PR? Thanks.

@WalterKolczynski-NOAA WalterKolczynski-NOAA removed the blocked Issue is currently being blocked by another issue label Oct 23, 2024
@emcbot emcbot added the CI-Hera-Failed **Bot use only** CI testing on Hera for this PR has failed label Oct 24, 2024
@emcbot
Copy link

emcbot commented Oct 24, 2024

CI Failed on Hera in Build# 3
Built and ran in directory /scratch1/NCEPDEV/global/CI/2946


Experiment C48mx500_3DVarAOWCDA_ed78b8c4 Terminated with  tasks failed and  dead at Thu Oct 24 17:01:00 UTC 2024
Experiment C48mx500_3DVarAOWCDA_ed78b8c4 Terminated: **
Experiment C96_atm3DVar_ed78b8c4 Terminated with  tasks failed and  dead at Thu Oct 24 17:01:11 UTC 2024
Experiment C96_atm3DVar_ed78b8c4 Terminated: **
Experiment C96C48_hybatmDA_ed78b8c4 Terminated with  tasks failed and  dead at Thu Oct 24 17:01:13 UTC 2024
Experiment C96C48_hybatmDA_ed78b8c4 Terminated: **
Experiment C96C48_ufs_hybatmDA_ed78b8c4 Terminated with  tasks failed and  dead at Thu Oct 24 17:01:13 UTC 2024
Experiment C96C48_ufs_hybatmDA_ed78b8c4 Terminated: **
Experiment C48_S2SW_ed78b8c4 Terminated with  tasks failed and  dead at Thu Oct 24 17:01:13 UTC 2024
Experiment C48_S2SW_ed78b8c4 Terminated: **
Experiment C48_S2SWA_gefs_ed78b8c4 Terminated with  tasks failed and  dead at Thu Oct 24 17:01:32 UTC 2024
Experiment C48_S2SWA_gefs_ed78b8c4 Terminated: **
Experiment C48_ATM_ed78b8c4 Terminated with  tasks failed and  dead at Thu Oct 24 17:06:42 UTC 2024
Experiment C48_ATM_ed78b8c4 Terminated: **
Experiment C96_S2SWA_gefs_replay_ics_ed78b8c4 Terminated with  tasks failed and  dead at Thu Oct 24 17:06:42 UTC 2024
Experiment C96_S2SWA_gefs_replay_ics_ed78b8c4 Terminated: **

@TerrenceMcGuinness-NOAA TerrenceMcGuinness-NOAA added CI-Hera-Running **Bot use only** CI testing on Hera for this PR is in-progress CI-Hera-Building **Bot use only** CI testing is cloning/building on Hera and removed CI-Hera-Failed **Bot use only** CI testing on Hera for this PR has failed CI-Hera-Running **Bot use only** CI testing on Hera for this PR is in-progress labels Oct 24, 2024
@emcbot emcbot added CI-Hera-Running **Bot use only** CI testing on Hera for this PR is in-progress CI-Hera-Failed **Bot use only** CI testing on Hera for this PR has failed and removed CI-Hera-Building **Bot use only** CI testing is cloning/building on Hera CI-Hera-Running **Bot use only** CI testing on Hera for this PR is in-progress labels Oct 24, 2024
@emcbot
Copy link

emcbot commented Oct 24, 2024

Experiment C48_ATM FAILED on Hera in Build# 4 in
/scratch1/NCEPDEV/global/CI/2946/RUNTESTS/EXPDIR/C48_ATM_ed78b8c4

@WalterKolczynski-NOAA WalterKolczynski-NOAA removed the CI-Hera-Failed **Bot use only** CI testing on Hera for this PR has failed label Oct 25, 2024
@emcbot
Copy link

emcbot commented Oct 25, 2024

Experiment C96C48_hybatmaerosnowDA FAILED on Hera in Build# 4 with error logs:

/scratch1/NCEPDEV/global/CI/2946/RUNTESTS/COMROOT/C96C48_hybatmaerosnowDA_ed78b8c4/logs/2021122100/gdas_snowanl.log

Follow link here to view the contents of the above file(s): (link)

@emcbot emcbot added the CI-Hera-Failed **Bot use only** CI testing on Hera for this PR has failed label Oct 25, 2024
@emcbot
Copy link

emcbot commented Oct 25, 2024

Experiment C96C48_hybatmaerosnowDA FAILED on Hera in Build# 4 in
/scratch1/NCEPDEV/global/CI/2946/RUNTESTS/EXPDIR/C96C48_hybatmaerosnowDA_ed78b8c4

@emcbot emcbot added CI-Hera-Failed **Bot use only** CI testing on Hera for this PR has failed and removed CI-Hera-Failed **Bot use only** CI testing on Hera for this PR has failed labels Oct 25, 2024
@emcbot
Copy link

emcbot commented Oct 25, 2024

CI Failed on Hera in Build# 4
Built and ran in directory /scratch1/NCEPDEV/global/CI/2946


**CI Failed** on Hera in Build# 3<br>Built and ran in directory `/scratch1/NCEPDEV/global/CI/2946`

Experiment C48mx500_3DVarAOWCDA_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 17:01:00 UTC 2024
Experiment C48mx500_3DVarAOWCDA_ed78b8c4 Terminated: **
Experiment C96_atm3DVar_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 17:01:11 UTC 2024
Experiment C96_atm3DVar_ed78b8c4 Terminated: **
Experiment C96C48_hybatmDA_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 17:01:13 UTC 2024
Experiment C96C48_hybatmDA_ed78b8c4 Terminated: **
Experiment C96C48_ufs_hybatmDA_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 17:01:13 UTC 2024
Experiment C96C48_ufs_hybatmDA_ed78b8c4 Terminated: **
Experiment C48_S2SW_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 17:01:13 UTC 2024
Experiment C48_S2SW_ed78b8c4 Terminated: **
Experiment C48_S2SWA_gefs_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 17:01:32 UTC 2024
Experiment C48_S2SWA_gefs_ed78b8c4 Terminated: **
Experiment C48_ATM_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 17:06:42 UTC 2024
Experiment C48_ATM_ed78b8c4 Terminated: **
Experiment C96_S2SWA_gefs_replay_ics_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 17:06:42 UTC 2024
Experiment C96_S2SWA_gefs_replay_ics_ed78b8c4 Terminated: **
Experiment C48_ATM_ed78b8c4 Terminated with tasks failed and dead at Thu Oct 24 19:12:43 UTC 2024
Experiment C48_ATM_ed78b8c4 Terminated: **
Experiment C48mx500_3DVarAOWCDA_ed78b8c4 Completed 2 Cycles: SUCCESS at Fri Oct 25 01:06:01 UTC 2024
Experiment C96_S2SWA_gefs_replay_ics_ed78b8c4 Completed 1 Cycles: SUCCESS at Fri Oct 25 06:56:27 UTC 2024
Experiment C48_S2SW_ed78b8c4 Completed 2 Cycles: SUCCESS at Fri Oct 25 08:43:42 UTC 2024
Experiment C96C48_hybatmaerosnowDA_ed78b8c4 Terminated with 0
FAIL
FAIL tasks failed and 1 dead at Fri Oct 25 08:56:18 UTC 2024
Experiment C96C48_hybatmaerosnowDA_ed78b8c4 Terminated: FAIL
Error logs:
/scratch1/NCEPDEV/global/CI/2946/RUNTESTS/COMROOT/C96C48_hybatmaerosnowDA_ed78b8c4/logs/2021122100/gdas_snowanl.log
Experiment C48_S2SWA_gefs_ed78b8c4 Completed 1 Cycles: SUCCESS at Fri Oct 25 09:18:51 UTC 2024
Experiment C96C48_hybatmDA_ed78b8c4 Completed 3 Cycles: SUCCESS at Fri Oct 25 10:16:27 UTC 2024
Experiment C96C48_ufs_hybatmDA_ed78b8c4 Completed 3 Cycles: SUCCESS at Fri Oct 25 11:10:55 UTC 2024
Experiment C96_atm3DVar_ed78b8c4 Completed 3 Cycles: SUCCESS at Fri Oct 25 11:11:15 UTC 2024

@DavidHuber-NOAA
Copy link
Contributor

It seems the gdas_prepsnowcover job did not materialize when generating the XML for the C96C48_hybatmaerosnowDA case. It's not clear to me why it didn't.

@jiaruidong2017
Copy link
Contributor Author

It seems the gdas_prepsnowcover job did not materialize when generating the XML for the C96C48_hybatmaerosnowDA case. It's not clear to me why it didn't.

@DavidHuber-NOAA Thanks for checking this. I don't why the gdas_prepsnowcover job didn't start in your CI test. When I checked the XML, the gdas_prepsnowcover job was available in your XML.

I have generated the gdas_prepsnowcover job locally and conducted the test run successfully. I will take further look on this.

@DavidHuber-NOAA
Copy link
Contributor

@jiaruidong2017 My apologies, you are correct. It did get written to the XML, but rocotostat does not show the task. I wonder if there is an issue with the dependencies.

@DavidHuber-NOAA
Copy link
Contributor

Ah, I see the issue. The cycledefs for the task is incorrect. It reads

<task name="gdas_prepsnowcover" cycledefs="gdas_prep_snocvr" maxtries="&MAXTRIES;">

but should be

<task name="gdas_prepsnowcover" cycledefs="gdas" maxtries="&MAXTRIES;">

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI-Hera-Failed **Bot use only** CI testing on Hera for this PR has failed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants