dtcenter / MET

Model Evaluation Tools
https://dtcenter.org/community-code/model-evaluation-tools-met
Apache License 2.0
78 stars 24 forks source link

Fix Multivariate MODE to log it's output to a single log file. #1593

Closed JohnHalleyGotway closed 9 months ago

JohnHalleyGotway commented 3 years ago

Describe the Enhancement

This task is closely related to MET #1283. If all Multivariate MODE functionality is run by a single process, then the logging issue effectively goes away.

MET #1184 was included in the met-10.0.0-beta2 release to add the multi-variate MODE option. This version of the code spawns new processes to execute individual calls to the standard MODE prior to combining the output into a super object. This task is to figure out how to handle the writing of a log file in this context. Since multiple processes are spawned, having them write to the same output log file is non-trivial.

Since the calls to MODE are done sequentially, consider adding a no-clobber option to the logger so that each call to single MODE can open and append to the same log file without overwriting it.

Time Estimate

Estimate the amount of work required here. Issues should represent approximately 1 to 3 days of work.

Sub-Issues

Consider breaking the enhancement down into sub-issues. No sub-issues required.

Relevant Deadlines

List relevant project deadlines here or state NONE.

Funding Source

Define the source of funding and account keys here or state NONE.

Define the Metadata

Assignee

Labels

Projects and Milestone

Define Related Issue(s)

Consider the impact to the other METplus components.

Enhancement Checklist

See the METplus Workflow for details.

JohnHalleyGotway commented 2 years ago

Please note that any changes to how Multi-Variate MODE should be run based on this issue should be noted on the METplus issue for the Multi-Variate MODE wrapper (dtcenter/METplus#1585).

davidalbo commented 9 months ago

Closing this issue as it was fixed by refactoring multivariate mode to not spawn multiple instance of traditional mode. The newer design does not do this, it does sequential steps that depend on each other (so the original design no longer made sense).