Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
91 commits
Select commit Hold shift + click to select a range
aeaef79
fix default worker bug with all steps
bgunnar5 May 4, 2023
ad75ed6
bugfix/worker-all-steps (#419)
bgunnar5 May 4, 2023
f7508dd
version bump and requirements fix
bgunnar5 May 4, 2023
c8c6a44
release/1.10.1 (#420)
bgunnar5 May 4, 2023
98e06f6
Bugfix/filename-special-vars (#425)
bgunnar5 May 25, 2023
b8dd2b2
Create dependabot-changelog-updater.yml
bgunnar5 May 26, 2023
4c40423
testing outputs of modifying changelog
bgunnar5 May 26, 2023
2d231fb
delete dependabot-changelog-updater
bgunnar5 May 26, 2023
6b142d9
feature/pdf-docs (#427)
bgunnar5 Jun 28, 2023
e3e1a30
bugfix/openfoam_singularity_issues (#426)
bgunnar5 Jun 28, 2023
12ff3d7
bugfix/output-path-substitution (#430)
bgunnar5 Jul 11, 2023
5c69c0b
bugfix/scheduler-permission-error (#436)
bgunnar5 Aug 4, 2023
c01f635
Release/1.10.2 (#437)
bgunnar5 Aug 4, 2023
9c52ba2
resolve develop to main merge issues (#439)
bgunnar5 Aug 5, 2023
d63661c
resolve merge conflicts
bgunnar5 Aug 5, 2023
b0f4d86
dependabot/certifi-requests-pygments (#441)
bgunnar5 Aug 17, 2023
c641c5c
bugfix/server-pip-redis-conf (#443)
bgunnar5 Aug 18, 2023
970a06f
bump to version 1.10.3 (#444)
bgunnar5 Aug 18, 2023
0384463
Merge branch 'main' into develop
bgunnar5 Aug 18, 2023
1977f1b
Merge remote-tracking branch 'origin/develop' into develop
bgunnar5 Aug 18, 2023
d8bfbdb
bugfix/sphinx-5.3.0-requirement (#446)
bgunnar5 Aug 22, 2023
8241bfe
feature/vlauncher (#447)
bgunnar5 Sep 28, 2023
50d0fb6
release/1.11.0 (#448)
bgunnar5 Sep 28, 2023
066bea1
resolve merge conflicts
bgunnar5 Oct 5, 2023
99d5659
bugfix/skewed-sample-hierarchy (#450)
bgunnar5 Oct 9, 2023
593dbcd
bugfix/lsf-gpu-typo (#453)
bgunnar5 Oct 23, 2023
f994f96
release/1.11.1 (#454)
bgunnar5 Oct 23, 2023
89093dd
resolve merge conflict
bgunnar5 Oct 23, 2023
5dc8206
Add Pytest Fixtures to Test Suite (#456)
bgunnar5 Nov 2, 2023
38651f2
Bugfix for WEAVE CI (#457)
bgunnar5 Nov 15, 2023
b9afbdb
bugfix/monitor-shutdown (#452)
bgunnar5 Dec 12, 2023
642f925
Add the missing restart keyword to the specification docs. (#459)
koning Jan 19, 2024
40930c2
docs/conversion-to-mkdocs (#460)
bgunnar5 Jan 25, 2024
f36c58d
openfoam tutorial modifications (#463)
xorJane Feb 14, 2024
320d12f
feature/revamped status (#464)
bgunnar5 Feb 14, 2024
d111565
release/1.12.0 (#465)
bgunnar5 Feb 14, 2024
801d0bf
resolve merge conflicts with version bump
bgunnar5 Feb 14, 2024
9390448
feature/retry_priority (#468)
bgunnar5 Feb 22, 2024
de5367a
docs/server-cross-node (#470)
bgunnar5 Apr 10, 2024
cdad6e5
bugfix/initial-status-issues (#471)
bgunnar5 Apr 15, 2024
51d6787
release/1.12.1 (#472)
bgunnar5 Apr 15, 2024
4a07800
resolve merge conflicts with main
bgunnar5 Apr 16, 2024
bba68ab
fix a lint issue that somehow slipped through the cracks
bgunnar5 Apr 16, 2024
eace86f
Fix filenames for OpenFoam tutorial (#475)
xorJane Apr 30, 2024
f476a98
bugfix/deep-merge-existing-keys (#476)
bgunnar5 May 10, 2024
dd96092
Improved Info (#477)
lucpeterson May 16, 2024
12f2398
Target is in source's history (#478)
lucpeterson May 16, 2024
897312f
Fix link to merlin banner image (#479)
lucpeterson May 16, 2024
297d9d5
bugfix/status_nested_workspace (#480)
bgunnar5 May 22, 2024
4b4fdee
bugfix/celery-chord-error (#481)
bgunnar5 Jun 5, 2024
f29aabb
release/1.12.2b1 (#482)
bgunnar5 Jun 5, 2024
35c2039
resolve merge conflicts
bgunnar5 Jun 5, 2024
0f6bebf
bugfix/flux-nodes (#484)
bgunnar5 Jun 10, 2024
831bc40
bugfix/flux-nodes-prior-versions (#487)
bgunnar5 Jun 11, 2024
e919ee8
Change Task ID to directory path (#486)
lucpeterson Jun 12, 2024
78ef619
Include celerymanager and update celeryadapter to check the status of…
Jul 23, 2024
8561a18
Fixed issue where the update status was outside of if statement for c…
Jul 23, 2024
1120dd7
Include worker status stop and add template for merlin restart
Aug 1, 2024
f41938f
Added comment to the CeleryManager init
Aug 2, 2024
690115e
Increment db_num instead of being fixed
Aug 2, 2024
de4ffd0
Added other subprocess parameters and created a linking system for re…
Aug 2, 2024
67e9268
Implemented stopping of celery workers and restarting workers properly
Aug 6, 2024
406e4c2
Update stopped to stalled for when the worker doesn't respond to restart
Aug 6, 2024
78e4525
Working merlin manager run but start and stop not working properly
Aug 7, 2024
eca74ac
Made fix for subprocess to start new shell and fixed manager start an…
Aug 7, 2024
ec8aa78
Added comments and update changelog
Aug 7, 2024
3f04d24
Include style fixes
Aug 7, 2024
5538f4b
Fix style for black
Aug 7, 2024
b6bcd33
Revert launch_job script that was edited when doing automated lint
Aug 7, 2024
9b97f8b
Move importing of CONFIG to be within redis_connection due to error o…
Aug 7, 2024
c9dfd31
Added space to fix style
Aug 7, 2024
a9bd865
Revert launch_jobs.py:
Aug 7, 2024
ddc7614
Update import of all merlin.config to be in the function
Aug 7, 2024
353a66b
suggested changes plus beginning work on monitor/manager collab
bgunnar5 Aug 17, 2024
1a4d416
move managers to their own folder and fix ssl problems
bgunnar5 Aug 22, 2024
875f137
final PR touch ups
bgunnar5 Sep 3, 2024
9020aa0
Merge pull request #2 from bgunnar5/monitor_manager_collab
ryannova Sep 3, 2024
58da9bc
Fix lint style changes
Sep 3, 2024
e75dcc2
Fixed issue with context manager
Sep 4, 2024
11f9e7c
Reset file that was incorrect changed
Sep 4, 2024
7204e46
Check for ssl cert before applying to Redis connection
Sep 4, 2024
53d8f32
Comment out Active tests for celerymanager
Sep 4, 2024
a5ccb2d
Fix lint issue with unused import after commenting out Active celery …
Sep 9, 2024
2b0e8a6
Fixed style for import
Sep 9, 2024
e49f378
Fixed kwargs being modified when making a copy for saving to redis wo…
Sep 12, 2024
352e7df
Added password check and omit if a password doesn't exist
Sep 13, 2024
75a9972
change testing log level to debug
bgunnar5 Sep 16, 2024
c27a208
add debug statement for redis_connection
bgunnar5 Sep 17, 2024
97a9cf1
change debug log to info so github ci will display it
bgunnar5 Sep 17, 2024
ce8bf37
attempt to fix password missing from Namespace error
bgunnar5 Sep 17, 2024
5851d9d
run checks for all necessary configurations
bgunnar5 Sep 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 19 additions & 2 deletions .github/workflows/push-pr_workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,29 @@ jobs:
if: github.event_name == 'pull_request'

steps:
- uses: actions/checkout@v1
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0 # Checkout the whole history, in case the target is way far behind

- name: Check if target branch has been merged
run: |
if git merge-base --is-ancestor ${{ github.event.pull_request.base.sha }} ${{ github.sha }}; then
echo "Target branch has been merged into the source branch."
else
echo "Target branch has not been merged into the source branch. Please merge in target first."
exit 1
fi

- name: Check that CHANGELOG has been updated
run: |
# If this step fails, this means you haven't updated the CHANGELOG.md file with notes on your contribution.
git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.sha }} | grep '^CHANGELOG.md$' && echo "Thanks for helping keep our CHANGELOG up-to-date!"
if git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.sha }} | grep -q '^CHANGELOG.md$'; then
echo "Thanks for helping keep our CHANGELOG up-to-date!"
else
echo "Please update the CHANGELOG.md file with notes on your contribution."
exit 1
fi

Lint:
runs-on: ubuntu-latest
Expand Down
38 changes: 38 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,44 @@ All notable changes to Merlin will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [unreleased]
### Added
- Merlin manager capability to monitor celery workers.

## [1.12.2b1]
### Added
- Conflict handler option to the `dict_deep_merge` function in `utils.py`
- Ability to add module-specific pytest fixtures
- Added fixtures specifically for testing status functionality
- Added tests for reading and writing status files, and status conflict handling
- Added tests for the `dict_deep_merge` function
- Pytest-mock as a dependency for the test suite (necessary for using mocks and fixtures in the same test)
- New github action test to make sure target branch has been merged into the source first, so we know histories are ok
- Check in the status commands to make sure we're not pulling statuses from nested workspaces
- Added `setuptools` as a requirement for python 3.12 to recognize the `pkg_resources` library
- Patch to celery results backend to stop ChordErrors being raised and breaking workflows when a single task fails
- New step return code `$(MERLIN_RAISE_ERROR)` to force an error to be raised by a task (mainly for testing)
- Added description of this to docs
- New test to ensure a single failed task won't break a workflow

### Changed
- `merlin info` is cleaner and gives python package info
- merlin version now prints with every banner message
- Applying filters for `merlin detailed-status` will now log debug statements instead of warnings
- Modified the unit tests for the `merlin status` command to use pytest rather than unittest
- Added fixtures for `merlin status` tests that copy the workspace to a temporary directory so you can see exactly what's run in a test
- Batch block and workers now allow for variables to be used in node settings
- Task id is now the path to the directory

### Fixed
- Bugfix for output of `merlin example openfoam_wf_singularity`
- A bug with the CHANGELOG detection test when the target branch isn't in the ci runner history
- Link to Merlin banner in readme
- Issue with escape sequences in ascii art (caught by python 3.12)
- Bug where Flux wasn't identifying total number of nodes on an allocation
- Not supporting Flux versions below 0.17.0


## [1.12.1]
### Added
- New Priority.RETRY value for the Celery task priorities. This will be the new highest priority.
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[![Pull requests](https://img.shields.io/github/issues-pr/LLNL/merlin)](https://github.com/LLNL/merlin/pulls)
[![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/LLNL/merlin.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/LLNL/merlin/context:python)

![Merlin](https://raw.githubusercontent.com/LLNL/merlin/main/docs/images/merlin.png)
![Merlin](https://raw.githubusercontent.com/LLNL/merlin/main/docs/assets/images/merlin_banner_white.png)

## A brief introduction to Merlin
Merlin is a tool for running machine learning based workflows. The goal of
Expand Down
26 changes: 13 additions & 13 deletions docs/tutorial/4_run_simulation.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,8 @@ In the `openfoam_wf_singularity` directory you should see the following:
<figcaption>Fig 3. openfoam_wf Directory Structure</figcaption>
</figure>

- `openfoam_wf.yaml` -- this spec file is partially blank. You will fill in the gaps as you follow this module's steps.
- `openfoam_wf_template.yaml` -- this is a complete spec file. You can always reference it as an example.
- `openfoam_wf_singularity.yaml` -- this spec file is partially blank. You will fill in the gaps as you follow this module's steps.
- `openfoam_wf_singularity_template.yaml` -- this is a complete spec file. You can always reference it as an example.
- `scripts` -- This directory contains all the necessary scripts for this module.
- We'll be exploring these scripts as we go with the tutorial.
- `requirements.txt` -- this is a text file listing this workflow's python dependencies.
Expand All @@ -87,22 +87,22 @@ We are going to build a spec file that produces this DAG:
<figcaption>Fig 4. OpenFOAM DAG</figcaption>
</figure>

**To start, open** `openfoam_wf.yaml` **using your favorite text editor.**
**To start, open** `openfoam_wf_singularity.yaml` **using your favorite text editor.**

It should look something like this:

???+ abstract "Initial Contents of the Spec"

<!--codeinclude-->
[openfoam_wf.yaml](../../merlin/examples/workflows/openfoam_wf_singularity/openfoam_wf.yaml)
[openfoam_wf_singularity.yaml](../../merlin/examples/workflows/openfoam_wf_singularity/openfoam_wf_singularity.yaml)
<!--/codeinclude-->

### Variables

First we specify some variables to make our life easier. Locate the `env` block in our yaml spec:

<!--codeinclude-->
[](../../merlin/examples/workflows/openfoam_wf_singularity/openfoam_wf.yaml) lines:9-15
[](../../merlin/examples/workflows/openfoam_wf_singularity/openfoam_wf_singularity.yaml) lines:9-15
<!--/codeinclude-->

The `OUTPUT_PATH` variable is set to tell Merlin where you want your output directory to be written. The default is the current working directory.
Expand Down Expand Up @@ -254,7 +254,7 @@ nonsimworkers:

### Putting It All Together

By the end, your `openfoam_wf.yaml` should look like the template version in the same directory:
By the end, your `openfoam_wf_singularity.yaml` should look like the template version in the same directory:

???+ abstract "Complete Spec File"

Expand All @@ -273,21 +273,21 @@ Now that you are done with the Specification file, use the following commands fr
Create the DAG and send tasks to the server with:

```bash
merlin run openfoam_wf.yaml
merlin run openfoam_wf_singularity.yaml
```

Open a new terminal window, then start the workers that will consume the tasks we just queued by using:

```bash
merlin run-workers openfoam_wf.yaml
merlin run-workers openfoam_wf_singularity.yaml
```

But wait! We realize that 10 samples is not enough to train a good model. We would like to restart with 100 samples instead of 10 (should take about 6 minutes):

After sending the workers to start on their queues, we need to first stop the workers:

```bash
merlin stop-workers --spec openfoam_wf.yaml
merlin stop-workers --spec openfoam_wf_singularity.yaml
```

!!! tip
Expand All @@ -297,25 +297,25 @@ merlin stop-workers --spec openfoam_wf.yaml
We stopped these tasks from running but if we were to run the workflow again (with 100 samples instead of 10), we would continue running the 10 samples first! This is because the queues are still filled with the previous attempt's tasks. This can be seen with:

```bash
merlin status openfoam_wf.yaml
merlin status openfoam_wf_singularity.yaml
```

We need to purge these queues first in order to repopulate them with the appropriate tasks. This is where we use the `merlin purge` command:

```bash
merlin purge openfoam_wf.yaml
merlin purge openfoam_wf_singularity.yaml
```

Now we are free to repopulate the queues with the 100 samples. In our terminal window that's not designated for our workers, we'll queue up tasks again, this time with 100 samples:

```bash
merlin run openfoam_wf.yaml --vars N_SAMPLES=100
merlin run openfoam_wf_singularity.yaml --vars N_SAMPLES=100
```

Then in our window for workers, we'll execute:

```bash
merlin run-workers openfoam_wf.yaml
merlin run-workers openfoam_wf_singularity.yaml
```

To see your results, look inside the `learn` output directory. You should see a png that looks like this:
Expand Down
1 change: 1 addition & 0 deletions docs/user_guide/variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -252,3 +252,4 @@ If necessary, users can raise their own return codes within steps. The table bel
| <pre>`$(MERLIN_SOFT_FAIL)`</pre> | Mark this step as a failure, note in the warning log but keep executing the workflow. Unknown return codes get translated to soft fails, so that they can be logged. | <pre><code><span>echo "Uh-oh, this sample didn't work"</span></br><span>exit $(MERLIN_SOFT_FAIL)</span></code></pre> |
| <pre>`$(MERLIN_HARD_FAIL)`</pre> | Something went terribly wrong and we need to stop the whole workflow. Raises a `HardFailException` and stops all workers connected to that step. Workers will stop after a 60 second delay to allow the step to be acknowledged by the server. <div class="admonition note"><p class="admonition-title">Note</p><p>Workers in isolated parts of the workflow not consuming from the bad step will continue. you can stop all workers with `$(MERLIN_STOP_WORKERS)`</p></div> | <pre><code><span>echo "Oh no, we've created skynet! Abort!"</span></br><span>exit $(MERLIN_HARD_FAIL)</span></code></pre> |
| <pre>`$(MERLIN_STOP_WORKERS)`</pre> | Launch a task to stop all active workers. To allow the current task to finish and acknowledge the results to the server, will happen in 60 seconds. | <pre><code><span># send a signal to all workers to stop</span></br><span>exit $(MERLIN_STOP_WORKERS)</span></code></pre> |
| <pre>`$(MERLIN_RAISE_ERROR)`</pre> | Purposefully raise a general exception. *This is intended to be used for testing, you'll likely want to use `$(MERLIN_SOFT_FAIL)` instead.* | <pre><code><span># send a signal to raise an exception</span></br><span>exit $(MERLIN_RAISE_ERROR)</span></code></pre> |
4 changes: 2 additions & 2 deletions merlin/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down Expand Up @@ -38,7 +38,7 @@
import sys


__version__ = "1.12.1"
__version__ = "1.12.2b1"
VERSION = __version__
PATH_TO_PROJ = os.path.join(os.path.dirname(__file__), "")

Expand Down
14 changes: 9 additions & 5 deletions merlin/ascii_art.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand All @@ -30,6 +30,9 @@

# pylint: skip-file

from merlin import VERSION


"""
Holds ascii art strings.
"""
Expand Down Expand Up @@ -93,11 +96,11 @@


__ __ _ _
| \/ | | (_)
| \ / | ___ _ __| |_ _ __
| |\/| |/ _ \ '__| | | '_ \
| \\/ | | (_)
| \\ / | ___ _ __| |_ _ __
| |\\/| |/ _ \\ '__| | | '_ \\
| | | | __/ | | | | | | |
|_| |_|\___|_| |_|_|_| |_|
|_| |_|\\___|_| |_|_|_| |_|

Machine Learning for HPC Workflows

Expand Down Expand Up @@ -127,6 +130,7 @@ def _make_banner():
for hat_line, name_line in zip(hat_lines, name_lines):
banner = banner + hat_line + name_line + "\n"

banner = banner + f" v. {VERSION}\n"
return banner


Expand Down
39 changes: 36 additions & 3 deletions merlin/celery.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down Expand Up @@ -36,8 +36,10 @@
from typing import Dict, Optional, Union

import billiard
import celery
import psutil
from celery import Celery
from celery import Celery, states
from celery.backends.redis import RedisBackend # noqa: F401 ; Needed for celery patch
from celery.signals import worker_process_init

import merlin.common.security.encrypt_backend_traffic
Expand All @@ -50,6 +52,37 @@
LOG: logging.Logger = logging.getLogger(__name__)


def patch_celery():
"""
Patch redis backend so that errors in chords don't break workflows.
Celery has error callbacks but they do not work properly on chords that
are nested within chains.

Credit to this function goes to: https://danidee10.github.io/2019/07/09/celery-chords.html
"""

def _unpack_chord_result(
self,
tup,
decode,
EXCEPTION_STATES=states.EXCEPTION_STATES,
PROPAGATE_STATES=states.PROPAGATE_STATES,
):
_, tid, state, retval = decode(tup)

if state in EXCEPTION_STATES:
retval = self.exception_to_python(retval)
if state in PROPAGATE_STATES:
# retval is an Exception
retval = f"{retval.__class__.__name__}: {str(retval)}"

return retval

celery.backends.redis.RedisBackend._unpack_chord_result = _unpack_chord_result

return celery


# This function has to have specific args/return values for celery so ignore pylint
def route_for_task(name, args, kwargs, options, task=None, **kw): # pylint: disable=W0613,R1710
"""
Expand Down Expand Up @@ -82,7 +115,7 @@ def route_for_task(name, args, kwargs, options, task=None, **kw): # pylint: dis
RESULTS_BACKEND_URI = None

# initialize app with essential properties
app: Celery = Celery(
app: Celery = patch_celery().Celery(
"merlin",
broker=BROKER_URI,
backend=RESULTS_BACKEND_URI,
Expand Down
2 changes: 1 addition & 1 deletion merlin/common/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down
2 changes: 1 addition & 1 deletion merlin/common/abstracts/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down
3 changes: 2 additions & 1 deletion merlin/common/abstracts/enums/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down Expand Up @@ -48,3 +48,4 @@ class ReturnCode(IntEnum):
DRY_OK = 103
RETRY = 104
STOP_WORKERS = 105
RAISE_ERROR = 106
2 changes: 1 addition & 1 deletion merlin/common/dumper.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1
# This file is part of Merlin, Version: 1.12.2b1
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down
2 changes: 1 addition & 1 deletion merlin/common/openfilelist.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down
2 changes: 1 addition & 1 deletion merlin/common/opennpylib.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down
2 changes: 1 addition & 1 deletion merlin/common/sample_index.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# LLNL-CODE-797170
# All rights reserved.
# This file is part of Merlin, Version: 1.12.1.
# This file is part of Merlin, Version: 1.12.2b1.
#
# For details, see https://github.com/LLNL/merlin.
#
Expand Down
Loading