Skip to content

Using io uring after some seconds all the requests has 408 response #3666

@lfdominguez

Description

@lfdominguez

Expected Behavior

Any request will be responded using the defined routes.

Current Behavior

All requests are responded with 408

Possible Solution

Knowing how io_uring works, maybe a pool waiting for a response on the queue of io_uring is blocking all the requests.

Steps to Reproduce (for bugs)

  1. Start the app
  2. Wait some seconds (30s)
  3. Do any request to any endpoint
  4. Get 408 response

Context

I'm using:

actix-web = { version = "4.11", features = ["experimental-io-uring"] }
actix-files = { version = "0.6", features = ["experimental-io-uring"] }
HttpServer::new(|| {
            App::new()
                // .wrap(TracingLogger::default())
                // .wrap(sentry_actix::Sentry::new())
                // .service(api::get_mpd_stream)
        })  // Disconnect timeout
        .bind(("127.0.0.1", 8080)).expect("Failed to bind server")
        .run()
        .await.map_err(|io_error| {
            CustomError::WebServerError(format!("IO Error: {}", io_error))
        })?;

Tried all kind of things, like disabling my only 1 service and all extra wrap, always get 408 response

Your Environment

  • Rust Version (I.e, output of rustc -V): rustc 1.87.0 (17067e9ac 2025-05-09)
  • Actix Web Version: 4.11.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions