ESCOMP / CAM

Community Atmosphere Model
74 stars 136 forks source link

FCHIST test fails for ocnemis #214

Closed gold2718 closed 2 years ago

gold2718 commented 4 years ago

Test is: SMS_D_Ln9.f09_f09_mg17.FCHIST.cheyenne_intel.cam-outfrq9s_ocnemis

Error message is:

0: GETFIL: FAILED to get /glade/scratch/fischer/inputdata/atm/cam/chem/ocnexch/Csw
0: _DMS_HiResML_f09f09_1990_2019_20190616a.nc

Cause is not listing csw_specifier as a special variable in check_input_files.

fvitt commented 4 years ago

Try this fix:

diff --git a/bld/build-namelist b/bld/build-namelist
index 6f8f735..a48ed05 100755
--- a/bld/build-namelist
+++ b/bld/build-namelist
@@ -4233,7 +4233,7 @@ sub check_input_files {
     # These namelist variables are arrays of strings.
     my @vars = qw(aircraft_specifier ext_frc_specifier srf_emis_specifier mode_defs
                   rad_climate rad_diag_1 rad_diag_2 rad_diag_3 rad_diag_4 rad_diag_5
-                  rad_diag_6 rad_diag_7 rad_diag_8 rad_diag_9 rad_diag_10);
+                  rad_diag_6 rad_diag_7 rad_diag_8 rad_diag_9 rad_diag_10 csw_specifier);

     foreach my $var (@vars) {

@@ -4256,7 +4256,7 @@ sub check_input_files {
                 # Extract name and filename
                 if ($spec =~ m/\s*(\w+)      # name of species preceded by optional whitespace
                                \s*->\s*      # -> separator surrounded by optional whitespace
-                               (\S+)         # filename (all characters up to optional whitespace)
+                               (.*)          # filename (all characters including optional multiplier)
                               /xo) {
                     my $name = $1;
                     my $file = $2;
gold2718 commented 4 years ago

@fvitt, I had already mentioned this problem when I edited the failure reason (I originally put down the wrong reason). I am pretty far along with my regression test on this (and the other) fixes.

cacraigucar commented 2 years ago

It looks like this fix never got applied to cam_development? @gold2718 , should it be in cam_development?

cacraigucar commented 2 years ago

I am confused. It appears that this test is passing in cam_development, though I don't see any indication that the changes which were made on the two release branches have been made in the cam_development branch. @gold2718 or @fvitt - any ideas?

gold2718 commented 2 years ago

I think this test originally failed because Chris was pointing to a special file (in his scratch directory) that did not exist. It could take some finagling to get this to fail but applying the fix is easy and should probably be done.

cacraigucar commented 2 years ago

I will apply the same fixes that were made on the release branches to the cam_development branch and as long as it doesn't break any test, I will call it good.

fvitt commented 2 years ago

I believe this is Chris' special test where he changed inputdata location to his scratch directory to test that the necessary input files are in the inputdata repository and the scripts are able to successfully download the needed input files. The download was failing on that particular file. I don't if this problem was actually fixed anywhere. I suggested a fix above.

cacraigucar commented 2 years ago

@fvitt - Thanks for the info. I can try to replicate that test. As for the specific fix, it was applied to both release branches and involved changing two lines of code, I believe - I looked at the specifics yesterday. It did not use your suggested change. I plan on making an identical as to what was done for the release branches (for consistency).