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 JobDefinition
JobDefinition
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:
-
A Python primitive type that resolves to a Dagster config type (
python:int
,python:float
,python:bool
,python:str
, orpython:list
). -
A Dagster config type:
Int
,Float
,Bool
,String
, StringSourceStringSource
,Any
, ArrayArray
, NoneableNoneable
, EnumEnum
, SelectorSelector
, ShapeShape
, or PermissivePermissive
. -
A bare python dictionary, which will be automatically wrapped in Shape
Shape
. Values of the dictionary are resolved recursively according to the same rules. -
A bare python list of length one which itself is config type. Becomes Array
Array
with list element as an argument. -
An instance of Field
Field
.
-
- 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
isTrue
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 eitherFalse
or an instance of TypeCheckTypeCheck
whosesuccess
member isFalse
.
- 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 DagsterInstance
DagsterInstance
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. Theoriginal_exc_info
argument to the constructor is meant to be a tuple of the type returned bysys.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.