https://dagster.io/ logo
#announcements
Title
# announcements
c

Chris Roth

03/24/2020, 8:28 PM
eg, have two solids feed into one solid, only one of the two runs, downstream solid conditionally receives input from one of them and runs
a

alex

03/24/2020, 8:29 PM
i think for this you could just use
Optional[Type]
as the input type and have the upstream solids return
None
instead of not omitting an
is_required=False
output
the conditional outputs stuff basically just exists for the skipping behavior
c

Chris Roth

03/24/2020, 8:32 PM
still getting
Dependencies for step esri.import_layer.compute failed: ['esri.extract_geojson.compute']. Not executing.
Copy code
@solid(
    input_defs=[
        InputDefinition(
            'geojson_result',
            Optional[Any]
        ),
        InputDefinition(
            'objects_result',
            Optional[Any]
        )
    ]
)
a

alex

03/24/2020, 8:34 PM
the upstream solid has to explicitly return
None
instead of omitting it / not yielding it
if its already
Any
you might not need the
Optional
bit
c

Chris Roth

03/24/2020, 8:37 PM
yeah that's what i've got and still happening
maybe i'm doing something wrong
a

alex

03/24/2020, 8:42 PM
are you just doing
return None
or
yield Output(None)
?
also did you change the
OutputDefinition
to remove the optionality
c

Chris Roth

03/25/2020, 12:11 AM
yes to both
a

alex

03/25/2020, 12:14 AM
huh weird, can you share the relevant slice of the event stream including the output events from the previous step