Why Octopus.Server tries to upgrade offline Tentacles?

Hi guys,

Why does Octopus.Server try to upgrade offline Tentacles?

I mean, when we upgrade Octopus.Server, it runs several tasks, including:

  • HealthCheck of all Tentacles
  • Upgrade of all Tentacles.

But during Tentacles upgrade Octopus.Server tries to upgrade all Tentacles even those one which it marked as offline.

Is this a bug or a known behaviour?

Thank you in advance!

Kind regards,
Denis Titusov

Hi Deis,

Thanks for reaching out. Octopus shouldn’t be upgrading Offline drop targets because there’s no client on the other end to upgrade. I did a quick test just to make sure I’m not crazy (see attached screenshot)

Can you me a screenshot of where are you seeing this behavior? Also let me know which version of Octopus are you running.

Thanks!
Dalmiro

Hi Dalmiro,

Thank you for your response!

I should point out, Octopus.Server doesn’t upgrade offline targets, but tries to do it :slight_smile:

And this behaviour is ok when Octopus tries to upgrade listening tentacles, but updating offline polling tentacles takes too much time.

I captured video of this process: click. You can watch it from 00:00 to 00:25 and from 10:19 to 10:31.

P.S.: In our case it takes 10 minutes, because we set Halibut.PollingRequestQueueTimeout param to 10 minutes.
P.P.S.: We run Octopus 3.3.22

Kind regards,
Denis Titusov

Hi Denis,

In a nutshell Polling Tentacles work like this: The Octopus server adds a task to a queue and then it waits for the Polling Tentacle to pick it up. The server will fail the task only after a certain amount of time passed and the Tentacle didn’t pick it up. This is what’s happening here.

This behavior is quite different with Listening Tentacles, as in that case the Octopus Server sends the task order to the Tentacle and it immediately waits for an answer. If the answer doesn’t come back right away, then the Octopus server fails the task.

To answer your initial question Why Octopus.Server tries to upgrade offline Tentacles?. When we upgrade a Tentacle we first attempt a health check at it. and then we try to upgrade. The reason for this delay is because the Octopus server is waiting for the Polling Tentacle to pick up the task.

Best regards,
Dalmiro

Hi Dalmiro,

Thank you for response. I see, it’s an expected behaviour.

Kind regards,
Denis Titusov