SingleQuantumExecutor#

class lsst.ctrl.mpexec.SingleQuantumExecutor(*args, **kwargs)#

Bases: SingleQuantumExecutor

Executor class which runs one Quantum at a time.

This is a deprecated backwards-compatibility shim for lsst.pipe.base.single_quantum_executor.SingleQuantumExecutor, which has the same functionality with very minor interface changes.

Parameters#

butlerButler or None

Data butler, None means that Quantum-backed butler should be used instead.

taskFactoryTaskFactory

Instance of a task factory.

skipExistingInAny

Expressions representing the collections to search for existing output datasets. See Ordered collection searches for allowed types. This class only checks for the presence of butler output run in the list of collections. If the output run is present in the list then the quanta whose complete outputs exist in the output run will be skipped. None or empty string/sequence disables skipping.

clobberOutputsbool, optional

If True, then outputs from a quantum that exist in output run collection will be removed prior to executing a quantum. If skipExistingIn contains output run, then only partial outputs from a quantum will be removed. Only used when butler is not None.

enableLsstDebugbool, optional

Enable debugging with lsstDebug facility for a task.

limited_butler_factoryCallable, optional

A method that creates a LimitedButler instance for a given Quantum. This parameter must be defined if butler is None. If butler is not None then this parameter is ignored.

resourcesExecutionResources, optional

The resources available to this quantum when executing.

skipExistingbool, optional

If True, skip quanta whose metadata datasets are already stored. Unlike skipExistingIn, this works with limited butlers as well as full butlers. Always set to True if skipExistingIn matches butler.run.

assumeNoExistingOutputsbool, optional

If True, assume preexisting outputs are impossible (e.g. because this is known by higher-level code to be a new RUN collection), and do not look for them. This causes the skipExisting and clobberOutputs options to be ignored, but unlike just setting both of those to False, it also avoids all dataset existence checks.

raise_on_partial_outputsbool, optional

If True raise exceptions chained by lsst.pipe.base.AnnotatedPartialOutputError immediately, instead of considering the partial result a success and continuing to run downstream tasks.

job_metadataMapping

Mapping with extra metadata to embed within the quantum metadata under the “job” key. This is intended to correspond to information common to all quanta being executed in a single process, such as the time taken to load the quantum graph in a BPS job.

Deprecated since version v30: The SingleQuantumExecutor class has moved to lsst.pipe.base.single_quantum_executor. This forwarding shim will be removed after v30.

Attributes Summary

Methods Summary

checkExistingOutputs(quantum, task_node, /, ...)

initGlobals(quantum)

runQuantum(task, quantum, task_node, /, ...)

updatedQuantumInputs(quantum, task_node, /, ...)

writeMetadata(quantum, metadata, task_node, ...)

Attributes Documentation

assumeNoExistingOutputs#
butler#
clobberOutputs#
enableLsstDebug#
job_metadata#
limited_butler_factory#
raise_on_partial_outputs#
resources#
skipExisting#
taskFactory#

Methods Documentation

checkExistingOutputs(quantum: Quantum, task_node: TaskNode, /, limited_butler: LimitedButler, log_extra: _ExecutionLogRecordsExtra) bool#
initGlobals(quantum: Quantum) None#
runQuantum(task: PipelineTask, quantum: Quantum, task_node: TaskNode, /, limited_butler: LimitedButler, quantum_id: uuid.UUID | None = None) tuple[QuantumSuccessCaveats, list[uuid.UUID], ButlerMetrics]#
updatedQuantumInputs(quantum: Quantum, task_node: TaskNode, /, limited_butler: LimitedButler) Quantum#
writeMetadata(quantum: Quantum, metadata: Any, task_node: TaskNode, /, limited_butler: LimitedButler) None#