• e

    Eddie Atkinson

    1 year ago
    Would anyone be able to share what
    ECSRun
    is doing under the hood to run tasks? I have set a subnet for the service I am running my Prefect tasks in and have disabled public IPs, but when I call
    ECSRun
    my tasks are running with a public IP address in a different subnet. From reading the documentation for
    ecs.run_task
    it seems as though you are required to specify a subnet ID if you are running a task on Fargate, which I am. Therefore, I’m wondering what subnet ID Prefect is using and whether it can forced to use the default subnet ID of the service. I am aware that you can override the arguments passed to
    run_task
    by
    ECSRun
    , however I don’t want to do this as I want to make my config agnostic to the account that it is being deployed in (I am deploying the same infra to different AWS accounts and don’t want to hard code the subnet ID which is passed to
    ECSRun
    )
    e
    Kevin Kho
    28 replies
    Copy to Clipboard
  • Dotan Asselmann

    Dotan Asselmann

    1 year ago
    Hi! can I force prefect to re-run the entire flow when task failed? instead of continuing from the failing task on the retry?
    Dotan Asselmann
    Greg Roche
    2 replies
    Copy to Clipboard
  • b

    Bastian Röhrig

    1 year ago
    Hey, quick question: Is there a way to access results as documented here https://docs.prefect.io/core/idioms/task-results.html when starting a flow with StartFlowRun?
    b
    Kevin Kho
    4 replies
    Copy to Clipboard
  • v

    Vincent Chéry

    1 year ago
    Hi! I've been running a prefect server instance (version 0.14.11) in production for a few months, running a dozen flows, some of them every minute. The UI is getting extremely slow when clicking on a flow run or task run. Is this known to happen ? Should I delete old flow and task runs to limit the size of flow_runs and task_runs tables ? If yes, what's the best way to do it ? Thanks in advance !
    v
    Kevin Kho
    10 replies
    Copy to Clipboard
  • Tense Fragile

    Tense Fragile

    1 year ago
    Hello! I have Linux server that runs the agent that schedules new prefect flows' runs. And I have a GitLab CD pipeline that connects to this server on push to master and pulls master on that server. On push to master I have the latest version of the code on the server but I want the agent to start using the latest code while it keeps scheduling jobs with old code. Is there any kinda autoreload feature for prefect agent? Maybe some of you faced with that problem so I'm curious about how you solved it?
    Tense Fragile
    1 replies
    Copy to Clipboard
  • Mehdi Nazari

    Mehdi Nazari

    1 year ago
    Hi folks, I have a Flow defined with a few tasks involved. Plan is to call a task from another task that’s called from a flow
    With
    context. Has anyone been able to successfully do that?
    Mehdi Nazari
    Kevin Kho
    19 replies
    Copy to Clipboard
  • st dabu

    st dabu

    1 year ago
    I run a prefect pipeline like this.
    prefect run -n hello-flow --param args={'a':'alpha','b':bravo'}
    Why cant i pass a dictionary to the param object instead of individual params
    Error: No such command 'args ..blah
    st dabu
    Kevin Kho
    7 replies
    Copy to Clipboard
  • b

    Brett Naul

    1 year ago
    if I return a lot of data serialized with GCS results, is it expected that the only thing dask will transfer is the result metadata as opposed to the data itself? say for example I do
    lots_of_dataframes_in_gcs = task(
        process_data,    
        result=GCSResult(
            PandasSerializer(file_type="parquet")
            )
        )
    ).map(input_files)
    task(notify_data_is_ready).set_dependencies(upstream_tasks=[lots_of_dataframes])
    I don't actually want the data passed to the downstream task, just to enforce the ordering. but based on my exploding daskworker memory it seems that the downstream task is actually collecting all of the outputs themselves(!), even though each transferred object shows up in the dask dashboard as a 48-byte
    Cached
    state object (so the memory is 99.999% untracked by dask) I can imagine a workaround that involves just skipping Results altogether and returning True or a file path explicitly, but it seems like this might be a bug and the
    state.result
    should be getting purged before we ship it around? @Chris White @Michael Adkins or anyone else have thoughts on whether this is expected?
    b
    Chris White
    9 replies
    Copy to Clipboard
  • Jean Da Rolt

    Jean Da Rolt

    1 year ago
    Folks, I need help with this warning message:
    Flow run RUNNING: terminal tasks are incomplete.
    
    Waiting for next available Task run at 2021-08-25T18:52:50.186382+00:0
    that happens apparently in the end of the flow, but then it restarts the flow and execute everything again...
    Jean Da Rolt
    Kevin Kho
    4 replies
    Copy to Clipboard
  • a

    Andre Muraro

    1 year ago
    A couple of issues came up when I tried tor register a new flow: I develop my flows in a remote docker container, with local path /workspaces/prefect-dev/flows. When I try to register with working directory at prefect-dev using:
    prefect register --project "some-project" --path flows/some_flow.py
    my flow will get registered using the entire path(/workspaces....) . My agent searches for flows at ~/.prefect/flows, so I get a "Failed to load and execute Flow's environment" error. At the same time, even though I did not specify any labels, and there's no reference to any label whatsoever in any part of the source code, that flow gets created with one label that looks like an id of some sort (ie. 447c6079d9b5). My local agent is created using:
    prefect agent local start --name $$(hostname) --no-hostname-label
    Both of these issues came up with my latest flow, but I have used the same setup for a few months now without any of these issues. Any idea on what might be going on?
    a
    Kevin Kho
    +1
    40 replies
    Copy to Clipboard