https://prefect.io logo
b

brian

01/19/2022, 7:57 PM
Is anyone seeing issues with prefect cloud rn? I have a task run that says
Trigger was "all_successful" but some of the upstream tasks failed.
but all the upstream tasks were successful. Am I missing something?
k

Kevin Kho

01/19/2022, 7:59 PM
Could you give me a screen shot of your schematic?
b

brian

01/19/2022, 7:59 PM
yes, one sec
k

Kevin Kho

01/19/2022, 8:01 PM
That is weird
Does this happen everytime? Could you DM me the flow script?
b

brian

01/19/2022, 8:03 PM
This is the first time I’ve seen this and have been running this flow almost every day for about 1w I’ll send you the script
k

Kevin Kho

01/19/2022, 8:11 PM
I honestly can’t see something immediate. Could you tell me if it happens again?
a

Anna Geller

01/19/2022, 10:31 PM
This thread seems to provide an answer to this - it looks like the List task is the culprit here. @brian could you try to rewrite the List task so that it’s passed to the downstream parcels-silver* task as data dependency rather than as a List collection?
b

brian

01/19/2022, 11:06 PM
I’m happy to try that @Anna Geller what does it mean to have it be a data dependency?
a

Anna Geller

01/19/2022, 11:26 PM
this thread has an example that shows exactly that
upvote 1
b

brian

01/19/2022, 11:54 PM
Nice, thanks for sharing that @Anna Geller I’ll give that a whirl. Why would this issue show up just on that one task run though? There are sibling tasks on that same flow run that also accept a List task that completed successfully.
k

Kevin Kho

01/20/2022, 7:28 AM
I think it would imply there is maybe something with the content of one of the specific lists but i’m honestly not sure
upvote 1
👍 1
b

brian

01/21/2022, 8:25 PM
@Kevin Kho @Anna Geller thank you very much for your help. I’ve made an attempt to convert this particular part of the flow from an implicit List task to a data dependency per the example code y’all shared above. However, this seems to have broken the register step in our CI/CD pipeline since we are using the azure pipelines Bash task to call
prefect register
and have failOnStderr set to
true
(which I don’t really want to change) I now get a warning on stderr that looks like this
Copy code
/Users/brian.sorahan/Library/Python/3.9/lib/python/site-packages/prefect/storage/base.py:154: UserWarning: Task <Task: Bar> has retry settings but some upstream dependencies do not have result types. See <https://docs.prefect.io/core/concepts/results.html> for more details.
  _healthcheck.result_check(self._flows.values(), quiet=True)  # type: ignore
This is actually me calling register from my laptop, but it’s the same warning we get on azure pipelines. The script I’m trying to register is a small toy script that reproduces the warning. The
list_task
in this script is my workaround for the implicit List task issue we were discussing above, maybe I’m doing that wrong?
k

Kevin Kho

01/21/2022, 8:32 PM
Trying it now
b

brian

01/21/2022, 8:41 PM
I modified the prefect lib locally and have determined that this warning happens because the result of list_task is None
k

Kevin Kho

01/21/2022, 8:44 PM
So I looked at it. And I am more confused why it’s not raised for the other upstream tasks that don’t have result. I think the message makes sense and is expected. It will also raise even
list_task
is something like:
Copy code
@task
def list_task():
    return 2
and then
Copy code
bar_task = bar(host_name, list_task())
The error makes sense since the retry will grab the output of the last time from its result (especially if Restarting as failed flow run)
b

brian

01/21/2022, 11:37 PM
I’m confused. The warning seems to complain about the result of list_task not having a type, but it seems like it should have a list type.
k

Kevin Kho

01/22/2022, 1:33 AM
It’s not complaining about output types. It’s complaining about Prefect Result types
👍 1
3 Views