Skip to content

cargo test -p iceberg-sqllogictest fails to compile: missing tokio rt-multi-thread feature #2385

@toutane

Description

@toutane

Apache Iceberg Rust version

None

Describe the bug

Running cargo test -p iceberg-sqllogictest in isolation fails to compile with:

error[E0599]: no function or associated item named `new_multi_thread`
found for struct `tokio::runtime::Builder`
--> crates/sqllogictest/tests/sqllogictests.rs:28:39

tests/sqllogictests.rs calls tokio::runtime::Builder::new_multi_thread(), which requires the tokio rt-multi-thread feature. But crates/sqllogictest/Cargo.toml declares tokio = { workspace = true }, and the workspace root sets default-features = false with no features - so rt-multi-thread is never enabled for this crate.

To Reproduce

git clone https://github.com/apache/iceberg-rust
cd iceberg-rust
cargo test -p iceberg-sqllogictest

Expected behavior

The crate should compile and tests should run successfully when built in isolation.

Note: the bug is invisible with make build (--all-features --workspace) because crates/examples enables tokio = { features = ["full"] }, and Cargo features are additive across the workspace graph.

Willingness to contribute

I can contribute a fix for this bug independently

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions