Skip to content

Inconsistency in treatment of undefined environmental variables between SMOKE ASSIGNS_FILE and IOAPI ENVYN #116

@hnqtran

Description

@hnqtran

Currently upon source $ASSIGNS_FILE is called in SMOKE, several controlling environmental variables (e.g., DAY_SPECIFIC_YN, HOUR_SPECIFIC_YN, SMK_PING_METHOD, etc.) are assigned with ' ' (blank space; length = 1) if they were not defined in the run scripts when $ASSIGNS_FILE calls check_settings.csh.

These controlling variables are then queried in SMOKE program using IOAPI function ENVYN(). Per ENVYN() documentation, undefined environmental variable are supposed to assigned with default values and return In/Out status (IOS) = -2.

However, since these controlling variables are assigned with ' ' by $ASSIGNS_FILE in earlier step, ENVYN() realizes these variables as defined but with unrecognized value. Consequently, ENVYN() applies default values to these variables but return IOS = 1.

Implementing hard QA check in SMOKE for proper values of controlling environmental variables (e.g., hafting SMOKE execution if ENVYN() return IOS = 1 when check on DAY_SPECIFIC_YN) requires modifications to how check_settings.csh handle undefined environmental variables

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions