Skip to content

Commit e6ca76c

Browse files
committed
use touch for failedtasks
Signed-off-by: Sarah Yurick <sarahyurick@gmail.com>
1 parent bee0130 commit e6ca76c

2 files changed

Lines changed: 4 additions & 11 deletions

File tree

nemo_curator/backends/failed_task_markers.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
from pathlib import Path
1818

1919
from nemo_curator.tasks.sentinels import FailedTask
20-
from nemo_curator.utils.atomic_io import write_json_atomically
2120
from nemo_curator.utils.retry_manifest import METADATA_DIRNAME
2221

2322
FAILED_TASKS_DIR_ENV_VAR = "NEMO_CURATOR_FAILED_TASKS_DIR"
@@ -74,12 +73,8 @@ def record_failed_tasks(failed_tasks: list[FailedTask]) -> None:
7473
if manifest_path.is_file():
7574
return
7675

77-
write_json_atomically(
78-
manifest_path,
79-
{"status": "failed_tasks"},
80-
separators=(",", ":"),
81-
sort_keys=True,
82-
)
76+
manifest_path.parent.mkdir(parents=True, exist_ok=True)
77+
manifest_path.touch()
8378

8479

8580
def failed_task_manifest_exists(manifest_dir: str | Path | None = None) -> bool:

tests/backends/test_failed_task_markers.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
import pytest
1919
from pytest import MonkeyPatch
2020

21-
import nemo_curator.backends.failed_task_markers as failed_task_markers_module
2221
from nemo_curator.backends.failed_task_markers import (
2322
FAILED_TASK_MANIFEST_FILENAME,
2423
FAILED_TASKS_DIR_ENV_VAR,
@@ -87,7 +86,6 @@ def test_record_failed_tasks_writes_single_manifest(
8786

8887
manifest_files = list(manifest_dir.glob("*.json"))
8988
assert manifest_files == [manifest_dir / FAILED_TASK_MANIFEST_FILENAME]
90-
assert manifest_files[0].read_text() == '{"status":"failed_tasks"}\n'
9189
assert failed_task_manifest_exists()
9290

9391
def test_additional_failed_tasks_leave_existing_manifest_unchanged(
@@ -131,11 +129,11 @@ def test_record_failed_tasks_propagates_manifest_write_failure(
131129
manifest_dir = tmp_path / "failed-tasks"
132130
monkeypatch.setenv(FAILED_TASKS_DIR_ENV_VAR, str(manifest_dir))
133131

134-
def fail_write(*_args: object, **_kwargs: object) -> None:
132+
def fail_touch(self: Path, mode: int = 0o666, exist_ok: bool = True) -> None:
135133
msg = "storage unavailable"
136134
raise OSError(msg)
137135

138-
monkeypatch.setattr(failed_task_markers_module, "write_json_atomically", fail_write)
136+
monkeypatch.setattr(Path, "touch", fail_touch)
139137

140138
with pytest.raises(OSError, match="storage unavailable"):
141139
record_failed_tasks([_failed_task()])

0 commit comments

Comments
 (0)