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

Batch script stdout no longer prints the path to cpl/cesm log file on failure #89

Closed
quantheory opened this issue Aug 4, 2015 · 2 comments

Comments

@quantheory
Copy link
Member

As of beta06 (with updated CIME and CAM tags), if I have a CESM run crash (e.g. by segfaulting), I'm no longer seeing a message printing whether the run failed, with the log file location. The last stdout message is simply:

Mon Aug  3 18:38:55 2015 CESM EXECUTION BEGINS HERE
Mon Aug  3 18:48:05 2015 CESM EXECUTION HAS FINISHED

(To make this message easier to find, it should be in stdout rather than stderr I think, but for the record there's nothing printed to stderr, either.)

I see that the batch script still has Perl logic to do this, including this line:

appendCaseStatus("Model did not complete - see $config{'RUNDIR'}/$cesmlogfile");

However, there must be something wrong with the logic used to reach this point, since the log file exists, but nothing is printed.

@bandre-ucar
Copy link

I've had the same problem with segfaults not showing up in the log correctly. For what it's worth, my branch is based off of version d1b03ad (not blaming Bill, just demonstrating that the the problem goes back at least to mid-June).

It would be nice if the error message was dumped to both stdout and stderr.

sholly pushed a commit that referenced this issue Nov 16, 2015
…nto jedwards4b-moduleloader_fix

Fix Moduleloader message, fix logger issues

Currently modules are loaded several times in the course of a model build, on yellowstone we
are setting an environment variable MP_MPILIB to the internal value of MPILIB, but modules are
loaded before this internal variable is set and that was generating an error due to an undefined
variable in perl. Change this error to a warning. In the course of this fix I noticed that not
all logger messages were making it to stdout. In particular messages from subprograms called
with the qx command or with backtics were lost. Changing these calls to system calls fixed this
problem. Finally I also converted the check_input_data script to use logger.

Test suite: yellowstone driver prealpha suite
Test baseline: none
Test namelist changes: none
Test status: bit for bit

Fixes: #304 possibly #89
sholly pushed a commit that referenced this issue Nov 16, 2015
Fix Moduleloader message, fix logger issues

Currently modules are loaded several times in the course of a model build, on yellowstone we
are setting an environment variable MP_MPILIB to the internal value of MPILIB, but modules are
loaded before this internal variable is set and that was generating an error due to an undefined variable in perl. Change this error to a warning. In the course of this fix I noticed that not all logger messages were making it to stdout. In particular messages from subprograms called with the qx command or with backtics were lost. Changing these calls to system calls fixed this problem. Finally I also converted
the check_input_data script to use logger.

Test suite: yellowstone driver prealpha suite
Test baseline: none
Test namelist changes: none
Test status: bit for bit

Fixes: #304 possibly #89
@sholly
Copy link

sholly commented Jan 4, 2016

fixed in #307

@sholly sholly closed this as completed Jan 4, 2016
jedwards4b pushed a commit to jedwards4b/cime that referenced this issue May 31, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants