hpcflow.sdk.persistence.pending.CommitResourceMap#

class hpcflow.sdk.persistence.pending.CommitResourceMap(commit_tasks=(), commit_loops=(), commit_submissions=(), commit_submission_parts=(), commit_elem_IDs=(), commit_elements=(), commit_element_sets=(), commit_elem_iter_IDs=(), commit_elem_iters=(), commit_elem_iter_EAR_IDs=(), commit_EARs_initialised=(), commit_EARs=(), commit_EAR_submission_indices=(), commit_EAR_skips=(), commit_EAR_starts=(), commit_EAR_ends=(), commit_js_metadata=(), commit_parameters=(), commit_files=(), commit_template_components=(), commit_param_sources=(), commit_loop_indices=(), commit_loop_num_iters=(), commit_loop_parents=())#

Bases: object

Map of PendingChanges commit method names to store resource labels, representing the store resources required by each commit_* method, for a given PersistentStore.

When PendingChanges.commit_all() is called, the resources specified will be opened in “update” mode, for each commit_* method.

Notes

Normally only of interest to implementations of persistent stores.

Methods

Attributes

commit_EAR_ends

Resources for commit_EAR_ends().

commit_EAR_skips

Resources for commit_EAR_skips().

commit_EAR_starts

Resources for commit_EAR_starts().

commit_EAR_submission_indices

Resources for commit_EAR_submission_indices().

commit_EARs

Resources for commit_EARs().

commit_EARs_initialised

Resources for commit_EARs_initialised().

commit_elem_IDs

Resources for commit_elem_IDs().

commit_elem_iter_EAR_IDs

Resources for commit_elem_iter_EAR_IDs().

commit_elem_iter_IDs

Resources for commit_elem_iter_IDs().

commit_elem_iters

Resources for commit_elem_iters().

commit_element_sets

Resources for commit_element_sets().

commit_elements

Resources for commit_elements().

commit_files

Resources for commit_files().

commit_js_metadata

Resources for commit_js_metadata().

commit_loop_indices

Resources for commit_loop_indices().

commit_loop_num_iters

Resources for commit_loop_num_iters().

commit_loop_parents

Resources for commit_loop_parents().

commit_loops

Resources for commit_loops().

commit_param_sources

Resources for commit_param_sources().

commit_parameters

Resources for commit_parameters().

commit_submission_parts

Resources for commit_submission_parts().

commit_submissions

Resources for commit_submissions().

commit_tasks

Resources for commit_tasks().

commit_template_components

Resources for commit_template_components().

groups

A dict whose keys are tuples of resource labels and whose values are lists of PendingChanges commit method names that require those resources.

Parameters:
  • commit_tasks (tuple[str, ...] | None) –

  • commit_loops (tuple[str, ...] | None) –

  • commit_submissions (tuple[str, ...] | None) –

  • commit_submission_parts (tuple[str, ...] | None) –

  • commit_elem_IDs (tuple[str, ...] | None) –

  • commit_elements (tuple[str, ...] | None) –

  • commit_element_sets (tuple[str, ...] | None) –

  • commit_elem_iter_IDs (tuple[str, ...] | None) –

  • commit_elem_iters (tuple[str, ...] | None) –

  • commit_elem_iter_EAR_IDs (tuple[str, ...] | None) –

  • commit_EARs_initialised (tuple[str, ...] | None) –

  • commit_EARs (tuple[str, ...] | None) –

  • commit_EAR_submission_indices (tuple[str, ...] | None) –

  • commit_EAR_skips (tuple[str, ...] | None) –

  • commit_EAR_starts (tuple[str, ...] | None) –

  • commit_EAR_ends (tuple[str, ...] | None) –

  • commit_js_metadata (tuple[str, ...] | None) –

  • commit_parameters (tuple[str, ...] | None) –

  • commit_files (tuple[str, ...] | None) –

  • commit_template_components (tuple[str, ...] | None) –

  • commit_param_sources (tuple[str, ...] | None) –

  • commit_loop_indices (tuple[str, ...] | None) –

  • commit_loop_num_iters (tuple[str, ...] | None) –

  • commit_loop_parents (tuple[str, ...] | None) –

commit_EAR_ends: tuple[str, ...] | None = ()#

Resources for commit_EAR_ends().

commit_EAR_skips: tuple[str, ...] | None = ()#

Resources for commit_EAR_skips().

commit_EAR_starts: tuple[str, ...] | None = ()#

Resources for commit_EAR_starts().

commit_EAR_submission_indices: tuple[str, ...] | None = ()#

Resources for commit_EAR_submission_indices().

commit_EARs: tuple[str, ...] | None = ()#

Resources for commit_EARs().

commit_EARs_initialised: tuple[str, ...] | None = ()#

Resources for commit_EARs_initialised().

commit_elem_IDs: tuple[str, ...] | None = ()#

Resources for commit_elem_IDs().

commit_elem_iter_EAR_IDs: tuple[str, ...] | None = ()#

Resources for commit_elem_iter_EAR_IDs().

commit_elem_iter_IDs: tuple[str, ...] | None = ()#

Resources for commit_elem_iter_IDs().

commit_elem_iters: tuple[str, ...] | None = ()#

Resources for commit_elem_iters().

commit_element_sets: tuple[str, ...] | None = ()#

Resources for commit_element_sets().

commit_elements: tuple[str, ...] | None = ()#

Resources for commit_elements().

commit_files: tuple[str, ...] | None = ()#

Resources for commit_files().

commit_js_metadata: tuple[str, ...] | None = ()#

Resources for commit_js_metadata().

commit_loop_indices: tuple[str, ...] | None = ()#

Resources for commit_loop_indices().

commit_loop_num_iters: tuple[str, ...] | None = ()#

Resources for commit_loop_num_iters().

commit_loop_parents: tuple[str, ...] | None = ()#

Resources for commit_loop_parents().

commit_loops: tuple[str, ...] | None = ()#

Resources for commit_loops().

commit_param_sources: tuple[str, ...] | None = ()#

Resources for commit_param_sources().

commit_parameters: tuple[str, ...] | None = ()#

Resources for commit_parameters().

commit_submission_parts: tuple[str, ...] | None = ()#

Resources for commit_submission_parts().

commit_submissions: tuple[str, ...] | None = ()#

Resources for commit_submissions().

commit_tasks: tuple[str, ...] | None = ()#

Resources for commit_tasks().

commit_template_components: tuple[str, ...] | None = ()#

Resources for commit_template_components().

groups: Mapping[tuple[str, ...], Sequence[str]]#

A dict whose keys are tuples of resource labels and whose values are lists of PendingChanges commit method names that require those resources.

This grouping allows us to batch up commit methods by resource requirements, which in turn means we can potentially minimise, e.g., the number of network requests.