Skip to content

Problems with HttpServer not stopping on stop call #264

Open

Description

@MichaelTomlinsonTabmo

Hello,

I have noticed an issue concerning proxygen's http server (v2019.05.13.00) while trying to stop it gracefully under fairly intense http requesting conditions. Indeed, the http server will not stop and stay blocked on the void HTTPServer::stop() call (blocks on the bootstrap.join() call in stop method).

It also seems like the stopping call completes if the work load briefly decreases or stops.

Have you encountered this issue before, and if so are there any workarounds ?

Thanks,
Michael.

Activity

  1. lnicco commented on May 14, 2019

    @lnicco
    Contributor

    Thanks for reporting this @MichaelTomlinsonTabmo .
    We have seen this issue before and we have a fix in the pipeline, but no ETA as of now.
    Let's keep this Issue open and track the progress here.

  2. MichaelTomlinsonTabmo commented on May 7, 2021

    @MichaelTomlinsonTabmo
    Author

    Hi ! Any updates on this topic ?

  3. self-assigned this
    on Sep 18, 2024
  4. afrind commented on Sep 19, 2024

    @afrind
    Contributor

    I'm actually no longer able to reproduce the issue as described, but I'm not sure I like the new behavior. Once HTTPServer::stop is called, it will initiate drains on active connections (eg: HTTP/2 connections will send a GOAWAY, H1 will add Connection: close at next opportunity), but it will also forcibly drop open connections immediately after -- the server shuts down quickly.

    What we'd like to see is a draining period that allows running work to finish up before dropping everything.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions