-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
h2/client(1.0.0-rc4): panic on a double poll on Select #3289
Labels
C-bug
Category: bug. Something is wrong. This is bad!
Comments
seanmonstar
pushed a commit
that referenced
this issue
Aug 21, 2023
This reworks http2 client connection task in order to avoid storing a `Select` future. Under some scheduling cases the future was polled multiple times, resulting in runtime panics: ``` thread 'main' panicked at 'cannot poll Select twice', /index.crates.io/futures-util-0.3.28/src/future/select.rs:112:42 stack backtrace: [...] 5: <futures_util::future::select::Select<A,B> as core::future::future::Future>::poll 6: <hyper::proto::h2::client::H2ClientFuture<B,T> as core::future::future::Future>::poll [...] ``` Closes #3289
lucab
added a commit
to lucab/hyper
that referenced
this issue
Aug 22, 2023
This reworks http2 client connection task in order to avoid storing a `Select` future. Under some scheduling cases the future was polled multiple times, resulting in runtime panics: ``` thread 'main' panicked at 'cannot poll Select twice', /index.crates.io/futures-util-0.3.28/src/future/select.rs:112:42 stack backtrace: [...] 5: <futures_util::future::select::Select<A,B> as core::future::future::Future>::poll 6: <hyper::proto::h2::client::H2ClientFuture<B,T> as core::future::future::Future>::poll [...] ``` Closes hyperium#3289
kdorosh
pushed a commit
to kdorosh/hyper
that referenced
this issue
Sep 13, 2023
This reworks http2 client connection task in order to avoid storing a `Select` future. Under some scheduling cases the future was polled multiple times, resulting in runtime panics: ``` thread 'main' panicked at 'cannot poll Select twice', /index.crates.io/futures-util-0.3.28/src/future/select.rs:112:42 stack backtrace: [...] 5: <futures_util::future::select::Select<A,B> as core::future::future::Future>::poll 6: <hyper::proto::h2::client::H2ClientFuture<B,T> as core::future::future::Future>::poll [...] ``` Closes hyperium#3289
kdorosh
pushed a commit
to solo-io/hyper
that referenced
this issue
Sep 13, 2023
This reworks http2 client connection task in order to avoid storing a `Select` future. Under some scheduling cases the future was polled multiple times, resulting in runtime panics: ``` thread 'main' panicked at 'cannot poll Select twice', /index.crates.io/futures-util-0.3.28/src/future/select.rs:112:42 stack backtrace: [...] 5: <futures_util::future::select::Select<A,B> as core::future::future::Future>::poll 6: <hyper::proto::h2::client::H2ClientFuture<B,T> as core::future::future::Future>::poll [...] ``` Closes hyperium#3289
0xE282B0
pushed a commit
to 0xE282B0/hyper
that referenced
this issue
Jan 12, 2024
This reworks http2 client connection task in order to avoid storing a `Select` future. Under some scheduling cases the future was polled multiple times, resulting in runtime panics: ``` thread 'main' panicked at 'cannot poll Select twice', /index.crates.io/futures-util-0.3.28/src/future/select.rs:112:42 stack backtrace: [...] 5: <futures_util::future::select::Select<A,B> as core::future::future::Future>::poll 6: <hyper::proto::h2::client::H2ClientFuture<B,T> as core::future::future::Future>::poll [...] ``` Closes hyperium#3289
0xE282B0
pushed a commit
to 0xE282B0/hyper
that referenced
this issue
Jan 16, 2024
This reworks http2 client connection task in order to avoid storing a `Select` future. Under some scheduling cases the future was polled multiple times, resulting in runtime panics: ``` thread 'main' panicked at 'cannot poll Select twice', /index.crates.io/futures-util-0.3.28/src/future/select.rs:112:42 stack backtrace: [...] 5: <futures_util::future::select::Select<A,B> as core::future::future::Future>::poll 6: <hyper::proto::h2::client::H2ClientFuture<B,T> as core::future::future::Future>::poll [...] ``` Closes hyperium#3289 Signed-off-by: Sven Pfennig <s.pfennig@reply.de>
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
Version
hyper 1.0.0-rc4
Platform
Linux 5.15.109+ SMP x86_64 GNU/Linux
Description
Deno is currently using the RC versions of hyper 1.0 and it recently upgraded from
-rc3
to-rc4
: denoland/deno#19987.After that we started seeing occasional but frequent panics due to a double poll on a Select future:
I don't have a reproducer or a test for this, which I think is the result of a race.
The text was updated successfully, but these errors were encountered: