PICurv 0.1.0
A Parallel Particle-In-Cell Solver for Curvilinear LES
 
Loading...
Searching...
No Matches
Namespaces | Functions
safety.py File Reference

Refusals: active jobs, runtime locks, and cold-payload requirements. More...

Go to the source code of this file.

Namespaces

namespace  picurv_cli
 
namespace  picurv_cli.storage
 
namespace  picurv_cli.storage.safety
 

Functions

list picurv_cli.storage.safety.cold_study_members (str study_path)
 Return numbered study members whose local payload was pruned.
 
None picurv_cli.storage.safety.require_storage_payload_local (str root_path, str operation, int checkpoint=None, checkpoints=None)
 Reject a workflow that requires payload currently held in cold storage.
 
None picurv_cli.storage.safety._require_free_space (str directory, int needed_bytes, str purpose)
 Refuse to begin staging work the destination filesystem cannot hold.
 
bool picurv_cli.storage.safety._lock_owner_active (str metadata_path)
 Conservatively determine whether a solver/post/storage owner marker is active.
 
set picurv_cli.storage.safety._collect_job_ids (payload)
 Recursively collect submitted Slurm job IDs from scheduler metadata.
 
dict picurv_cli.storage.safety._slurm_activity (str root)
 Query live Slurm state for every job recorded below an artifact scheduler directory.
 
None picurv_cli.storage.safety._assert_archive_safe (dict inventory)
 Refuse to package a changing or scheduler-ambiguous artifact.
 
 picurv_cli.storage.safety.storage_operation_lock (str root_path, str operation)
 Hold an exclusive local storage-operation marker for one artifact.
 
 picurv_cli.storage.safety.runtime_stage_lock (str root_path, str stage)
 Mark a locally executed solver/post stage as active for storage safety.
 

Detailed Description

Refusals: active jobs, runtime locks, and cold-payload requirements.

Definition in file safety.py.