Skip to content
This repository was archived by the owner on Jul 3, 2023. It is now read-only.
This repository was archived by the owner on Jul 3, 2023. It is now read-only.

Force pipeline termination from pipeline manager #397

Open

Description

@ryzhyk

The runner handles the /shutdown command by first calling controller.stop() and then sending a termination message to the actix dispatch loop. Both operations can be slow or even get stuck in some cases. We will need a way to enforce eventual termination from the pipeline manager by killing the process/pod after a timeout.

@lalithsuresh

Activity

  1. lalithsuresh commented on May 4, 2023

    @lalithsuresh
    Contributor

    @ryzhyk I get the operations being slow, but do we know when/why they get stuck? Because that would be a bug.

  2. ryzhyk commented on May 4, 2023

    @ryzhyk
    ContributorAuthor
    • controller.stop() waits for any in-progress iteration of the circuit to complete. Which should normally be fast, but can take a while if there's a perf issue in the circuit or we're processing a very large input batch. Another possible reason is buggy connectors that refuse to shutdown instantly or at all.
    • actix is not supposed to take long, but I think I've seen it take a while to shutdown. Not sure what's up with that.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions