Skip to content

Creates thousands of threads until it crashes on Linux #4

@MortenLohne

Description

@MortenLohne

Calling Scope::zoom() or Scope::recurse() from inside a job seems to create new system threads on Linux. I don't really know what's going on, does every waiting job gets its own thread? Anyway, thousands of threads are created until eventually the OS gives up and it crashes with "thread '' panicked at 'called Result::unwrap() on an Err value: Error { repr: Os { code: 11, message: "Resource temporarily unavailable" } }"
Relevant stacktrace:

   8:     0x557f33a19e1d - core::panicking::panic_fmt::he9c7f335d160b59d
                               at /checkout/src/libcore/panicking.rs:69
   9:     0x557f33995dfd - core::result::unwrap_failed::hf35eb5c4700747f4
  10:     0x557f3398af6f - scoped_pool::Pool::expand::h7f75d890a03c4eca
  11:     0x557f3398aa0f - scoped_pool::Pool::with_thread_config::hdf014a2bf1905926
  12:     0x557f33990ad7 - std::panicking::try::do_call::h87060de474abd462

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions