Skip to main content

Errors

Core Dagster error classes.

All errors thrown by the Dagster framework inherit from DagsterErrorDagsterError. Users should not subclass this base class for their own exceptions.

There is another exception base class, DagsterUserCodeExecutionErrorDagsterUserCodeExecutionError, which is used by the framework in concert with the user_code_error_boundary()user_code_error_boundary().

Dagster uses this construct to wrap user code into which it calls. User code can perform arbitrary computations and may itself throw exceptions. The error boundary catches these user code-generated exceptions, and then reraises them wrapped in a subclass of DagsterUserCodeExecutionErrorDagsterUserCodeExecutionError.

The wrapped exceptions include additional context for the original exceptions, injected by the Dagster runtime.

exception dagster.DagsterError

Base class for all errors thrown by the Dagster framework.

Users should not subclass this base class for their own exceptions.

property is_user_code_error

Returns true if this error is attributable to user code.

exception dagster.DagsterConfigMappingFunctionError

Indicates that an unexpected error occurred while executing the body of a config mapping function defined in a JobDefinitionJobDefinition or ~dagster.GraphDefinition during config parsing.

exception dagster.DagsterEventLogInvalidForRun

Raised when the event logs for a historical run are malformed or invalid.

exception dagster.DagsterExecutionStepExecutionError

Indicates an error occurred while executing the body of an execution step.

exception dagster.DagsterExecutionStepNotFoundError

Thrown when the user specifies execution step keys that do not exist.

exception dagster.DagsterInvalidConfigError

Thrown when provided config is invalid (does not type check against the relevant config schema).

exception dagster.DagsterInvalidConfigDefinitionError

Indicates that you have attempted to construct a config with an invalid value.

Acceptable values for config types are any of:

  1. A Python primitive type that resolves to a Dagster config type (python:int, python:float, python:bool, python:str, or python:list).

  2. A Dagster config type: Int, Float, Bool, String, StringSourceStringSource, Any, ArrayArray, NoneableNoneable, EnumEnum, SelectorSelector, ShapeShape, or PermissivePermissive.

  3. A bare python dictionary, which will be automatically wrapped in ShapeShape. Values of the dictionary are resolved recursively according to the same rules.

  4. A bare python list of length one which itself is config type. Becomes ArrayArray with list element as an argument.

  5. An instance of FieldField.

exception dagster.DagsterInvalidDefinitionError

Indicates that the rules for a definition have been violated by the user.

exception dagster.DagsterInvalidSubsetError

Indicates that a subset of a pipeline is invalid because either:

  • One or more ops in the specified subset do not exist on the job.’
  • The subset produces an invalid job.
exception dagster.DagsterInvariantViolationError

Indicates the user has violated a well-defined invariant that can only be enforced at runtime.

exception dagster.DagsterResourceFunctionError

Indicates an error occurred while executing the body of the resource_fn in a ResourceDefinitionResourceDefinition during resource initialization.

exception dagster.DagsterRunNotFoundError

Thrown when a run cannot be found in run storage.

exception dagster.DagsterStepOutputNotFoundError

Indicates that previous step outputs required for an execution step to proceed are not available.

exception dagster.DagsterSubprocessError

An exception has occurred in one or more of the child processes dagster manages. This error forwards the message and stack trace for all of the collected errors.

exception dagster.DagsterTypeCheckDidNotPass

Indicates that a type check failed.

This is raised when raise_on_error is True in calls to the synchronous job and graph execution APIs (e.g. graph.execute_in_process(), job.execute_in_process() – typically within a test), and a DagsterTypeDagsterType’s type check fails by returning either False or an instance of TypeCheckTypeCheck whose success member is False.

exception dagster.DagsterTypeCheckError

Indicates an error in the op type system at runtime. E.g. a op receives an unexpected input, or produces an output that does not match the type of the output definition.

exception dagster.DagsterUnknownResourceError

Indicates that an unknown resource was accessed in the body of an execution step. May often happen by accessing a resource in the compute function of an op without first supplying the op with the correct required_resource_keys argument.

exception dagster.DagsterUnmetExecutorRequirementsError

Indicates the resolved executor is incompatible with the state of other systems such as the DagsterInstanceDagsterInstance or system storage configuration.

exception dagster.DagsterUserCodeExecutionError

This is the base class for any exception that is meant to wrap an python:Exception thrown by user code. It wraps that existing user code. The original_exc_info argument to the constructor is meant to be a tuple of the type returned by sys.exc_info at the call site of the constructor.

Users should not subclass this base class for their own exceptions and should instead throw freely from user code. User exceptions will be automatically wrapped and rethrown.

property is_user_code_error

Returns true if this error is attributable to user code.