default queue is served with (containerized + custom entrypoint) venv workers (agent services just wasn't working great for me, gave up)
I really can't provide a script that matches exactly (though I do plan to publish something like this soon enough), but here's one that's quite close / similar in style:
None where I tried function-steps out instead, but it's a similar architecture for the pipeline (the point of the example was to show how to do a dynamic pipeline)
are you running this locally or are you enqueueing the task (controller)?
yeah, it just shows what I see in the Console, but then immediately goes back to polling for more work (so... instead of running backtest, it exits, no completion message)
odd bc I thought I was controlling this... maybe I'm wrong and the env is mis-set.
it happens consistently with this one task that really should be all cache.
I disabled cache in the final step and it seems to run now.
do you have the agent logs that is supposed to run your pipeline? Maybe there is a clue there. I would also suggest to try enqueuing the pipeline to some other queue, maybe even run the agent on your on machine if you do not already and see what happens
would it be on the pipeline task itself then, since that's what's disappearing?
that likely the case
but maybe here's a clue. after hanging like that for a while... it seems like the agent restarts (the container it runs in does not)
would it be on the pipeline task itself then, since that's what's disappearing?
I will do some experiment comparisons and see if there are package diffs. thanks for the tip.
ugh. again. it launched all these tasks and then just died. logs go silent.
Hi SmallTurkey79 !Prior runs of this pipeline worked just fine
What SDK version were you using for the prior runs? Does this still happen if you revert to that version?
Can you provide a script that imitates what you are doing?
In the pipeline you are running, are you creating new tasks/pipelines/datasets?
I think i've narrowed this down to the ssh connection approach.
regarding the container that runs the pipeline:
- when I made it stop using autossh tunnels and instead put it on the same machine as the clearml server + used docker network host mode, suddenly the problematic pipeline started completing.
it's just so odd that the pipeline controller task is the only one with an issue. the modeling / data-creation tasks really all seem to complete consistently just fine.
so yeah, best guess now is that its unrelated to clearml verison but rather to the connectivity of the pipeline controller task to the api server.
when I run this pipeline controller locally (also using the same ssh tunnel approach for comms), the pipeline completes just fine. so it's something specific about how its working inside the container vs on my machine, it seems.
its odd... I really dont see tasks except the controller one dying
damn. I can't believe it. It disappeared again despite having 1.15.1 be the task's clearml version.
I'm going to try running the pipeline locally.
Hi SmallTurkey79 ! I will take a look at this and try to replicate the issue. In the meantime, I suggest you look into other dependencies you are using. Maybe some dependency got upgraded and the upgrade now triggers this behaviour in clearml.
do you have any STATUS REASON
under the INFO
section of the controller task?
let me downgrade my install of clearml and try again.
trying to run the experiment that kept failing right now, watching logs (they go by fast)... will try to spot anything anamolous
did you take a look at my connect.sh
script? I dont think it's a problem since only the controller task is the problem.
Is there some sort of culling procedure that kills tasks by any chance? the lack of logs makes me think it's something like that.
I can also try different agent versions.
I have tried other queues, they're all running the same container.
so far the only thing reliable is pipe.start_locally()
(the "magic" of the env detection is nice but man... it has its surprises)
the workers connect to the clearml server via ssh-tunnels, so they all talk to "localhost" despite being deployed in different places. each task creates artifacts and metrics that are used downstream
yeah locally it did run. I then ran another via UI spawned from the successful one, it showed cached steps and then refused to run the bottom one, disappearing again. No status message, no status reason. (not running... actually dead)