djanand opened a new issue, #3993:
URL: https://github.com/apache/iggy/issues/3993

   ### Bug description
   
   ## Bug description
   `iggy-server` panics immediately at startup on Intel macOS (x86_64) and 
never binds a listener. The build succeeds; the failure is at runtime. The 
guard in `core/server_common/src/executor.rs:87` applies thread_pool_limit(0)` 
on every target except macOS **aarch64**
   ```rust
   #[cfg(not(all(target_os = "macos", target_arch = "aarch64")))]
   proactor.thread_pool_limit(0);
   ```
   On macOS x86_64 the condition is therefore true and the zero limit is 
applied. compio's polling driver (used on macOS, since there is no io_uring) 
routes fs operations through the blocking pool, so the first fs operation 
panics.
   
   The comment directly above that line describes the exclusion as applying to 
macOS generally, with no architecture qualifier
   
   **Expected:** server starts on Intel macOS.
   **Actual:** panics before binding any listener.
   
   ### Why CI did not catch it
   The only macOS Rust job is `build-macos-aarch64` on `macos-14` 
(`.github/workflows/_test.yml:44`). `macos-15-intel` appears only in 
`_build_python_wheels.yml`. Intel macOS has no Rust build or test coverage.
   
   ## Affected area / component
   - Iggy server
   
   ## Deployment
   Compiled from source
   
   ## Versions
   server 0.9.0-edge.6 (commit 996ac04c8, master)
   
   
   ### Affected area / component
   
   Iggy server
   
   ### Deployment
   
   Compiled from source
   
   ### Versions
   
   0.9.0 (commit 996ac04c8, master)
   
   ### Hardware / environment
   
   Local Intel Mac, macOS 15.7.4, x86_64, APFS/SSD. rustc 1.98.0 (88d9e12ae 
2026-08-18)
   
   ### Sample code
   
   _No response_
   
   ### Logs
   
   thread 'main' (3217100) panicked at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-driver-0.12.4/src/asyncify.rs:118:25:
   the thread pool is needed but no worker thread is running
   stack backtrace:
      0: __rustc::rust_begin_unwind
                at 
/rustc/88d9e12ae178fab0fb5cc050a94da85685d449ea/library/std/src/panicking.rs:679:5
      1: core::panicking::panic_fmt
                at 
/rustc/88d9e12ae178fab0fb5cc050a94da85685d449ea/library/core/src/panicking.rs:80:14
      2: 
<compio_driver::asyncify::AsyncifyPool>::dispatch::<<compio_driver::sys::driver::poll::Driver>::push_blocking::{closure#0}>
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-driver-0.12.4/src/asyncify.rs:118:25
      3: <compio_driver::sys::driver::poll::Driver>::push_blocking
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-driver-0.12.4/src/sys/driver/poll/mod.rs:388:38
      4: <compio_driver::sys::driver::poll::Driver>::push
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-driver-0.12.4/src/sys/driver/poll/mod.rs:320:22
      5: 
<compio_driver::Proactor>::push_with_extra::<compio_driver::sys::op::fs::poll::PathStat<compio_driver::sys::pal::unix::CurrentDir>>
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-driver-0.12.4/src/lib.rs:266:27
      6: 
<compio_driver::Proactor>::push::<compio_driver::sys::op::fs::poll::PathStat<compio_driver::sys::pal::unix::CurrentDir>>
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-driver-0.12.4/src/lib.rs:255:14
      7: 
compio_runtime::future::submit_raw::<compio_driver::sys::op::fs::poll::PathStat<compio_driver::sys::pal::unix::CurrentDir>>
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-runtime-0.12.3/src/future/mod.rs:51:24
      8: 
<compio_runtime::future::future::Submit<compio_driver::sys::op::fs::poll::PathStat<compio_driver::sys::pal::unix::CurrentDir>>
 as core::future::future::Future>::poll
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-runtime-0.12.3/src/future/future.rs:147:33
      9: 
compio_fs::metadata::sys::metadata_impl::<compio_driver::sys::pal::unix::CurrentDir,
 &std::path::Path>::{closure#0}
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-fs-0.12.0/src/metadata/unix.rs:29:57
     10: compio_fs::metadata::sys::metadata::<&std::path::Path>::{closure#0}
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-fs-0.12.0/src/metadata/unix.rs:34:43
     11: compio_fs::metadata::metadata::<&std::path::Path>::{closure#0}
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-fs-0.12.0/src/metadata/mod.rs:17:25
     12: 
server_common::bootstrap::walk_dir::<&alloc::string::String>::{closure#0}
                at ./core/server_common/src/bootstrap.rs:126:47
     13: 
server_common::bootstrap::remove_dir_all::<&alloc::string::String>::{closure#0}
                at ./core/server_common/src/bootstrap.rs:160:33
     14: 
server_common::bootstrap::create_directories::<alloc::sync::Arc<configs::common::system::SystemConfig<configs::server_config::sharding::ShardingConfig>>>::{closure#0}
                at ./core/server_common/src/bootstrap.rs:99:75
     15: server::bootstrap::prepare_runtime_dirs::{closure#0}
                at ./core/server/src/bootstrap.rs:595:40
     16: iggy_server::main::{closure#0}
                at ./core/server/src/main.rs:77:65
     17: 
<compio_runtime::Runtime>::block_on::<iggy_server::main::{closure#0}>::{closure#0}
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-runtime-0.12.3/src/lib.rs:178:62
     18: 
<scoped_tls::ScopedKey<compio_runtime::Runtime>>::set::<<compio_runtime::Runtime>::block_on<iggy_server::main::{closure#0}>::{closure#0},
 core::result::Result<configs::server_config::server::ServerConfig, 
server::server_error::ServerError>>
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scoped-tls-1.0.1/src/lib.rs:137:9
     19: 
<compio_runtime::Runtime>::enter::<core::result::Result<configs::server_config::server::ServerConfig,
 server::server_error::ServerError>, 
<compio_runtime::Runtime>::block_on<iggy_server::main::{closure#0}>::{closure#0}>
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-runtime-0.12.3/src/lib.rs:152:25
     20: <compio_runtime::Runtime>::block_on::<iggy_server::main::{closure#0}>
                at 
/Users/jogeshanand/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/compio-runtime-0.12.3/src/lib.rs:173:14
     21: iggy_server::main
                at ./core/server/src/main.rs:75:81
     22: <fn() -> core::result::Result<(), server::server_error::ServerError> 
as core::ops::function::FnOnce<()>>::call_once
                at 
/Users/jogeshanand/.rustup/toolchains/1.98.0-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5
   note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose 
backtrace.
   
   ### Iggy server config
   
   Stock `core/server/config.toml`, no overrides, no `IGGY_*` env vars beyond 
the
   `--with-default-root-credentials` flag.
   
   ### Reproduction
   
   1. On an Intel Mac (x86_64), `cargo build --bin iggy-server`  (succeeds)
   3. `cargo run --bin iggy-server -- --with-default-root-credentials`
   4. Panics before binding; no listener on 3000/8080/8090/8092.
   
   ### Contribution
   
   - [x] I'm willing to submit a pull request to fix this bug
   
   ### Good first issue
   
   - [x] I think this could be a good first issue for a new contributor


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to