From 28a65c19c2a291fc803d0d46175548b5c6d43b40 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 16:33:36 -0800 Subject: [PATCH 01/54] CI: Windows compilation time --- .github/actions/setup-windows-builder/action.yaml | 3 ++- .github/workflows/rust.yml | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/actions/setup-windows-builder/action.yaml b/.github/actions/setup-windows-builder/action.yaml index 5e937358c7d7..a84379a9fe23 100644 --- a/.github/actions/setup-windows-builder/action.yaml +++ b/.github/actions/setup-windows-builder/action.yaml @@ -40,7 +40,8 @@ runs: run: | # Avoid self update to avoid CI failures: https://github.com/apache/datafusion/issues/9653 rustup toolchain install stable --no-self-update - rustup default stable + rustup default stable-x86_64-pc-windows-msvc rustup component add rustfmt + rustup component add llvm-tools-preview - name: Configure rust runtime env uses: ./.github/actions/setup-rust-runtime diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index f4e3d2fbf4d6..b5c77790a7f8 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -338,6 +338,7 @@ jobs: - name: Run tests (excluding doctests) shell: bash run: | + export RUSTFLAGS="-C link-arg=-fuse-ld=lld -C target-cpu=native" export PATH=$PATH:$HOME/d/protoc/bin cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From 91655bda129f6f2164e177cf2dabb190465482f8 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 16:35:51 -0800 Subject: [PATCH 02/54] CI: Windows compilation time --- .github/workflows/rust.yml | 551 ------------------------------------- 1 file changed, 551 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index b5c77790a7f8..f70f040b334e 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -39,293 +39,6 @@ on: workflow_dispatch: jobs: - # Check license header - license-header-check: - runs-on: ubuntu-20.04 - name: Check License Header - steps: - - uses: actions/checkout@v4 - - uses: korandoru/hawkeye@v5 - - # Check crate compiles - linux-build-lib: - name: cargo check - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - - name: Cache Cargo - uses: actions/cache@v4 - with: - path: | - ~/.cargo/bin/ - ~/.cargo/registry/index/ - ~/.cargo/registry/cache/ - ~/.cargo/git/db/ - ./target/ - ./datafusion-cli/target/ - key: cargo-cache-${{ hashFiles('**/Cargo.toml', '**/Cargo.lock') }} - - - name: Check datafusion without default features - # Some of the test binaries require the parquet feature still - #run: cargo check --all-targets --no-default-features -p datafusion - run: cargo check --no-default-features -p datafusion - - - name: Check datafusion-common without default features - run: cargo check --all-targets --no-default-features -p datafusion-common - - - name: Check datafusion-functions without default features - run: cargo check --all-targets --no-default-features -p datafusion-functions - - - name: Check datafusion-substrait without default features - run: cargo check --all-targets --no-default-features -p datafusion-substrait - - - name: Check workspace in debug mode - run: cargo check --all-targets --workspace - - - name: Check workspace with avro,json features - run: cargo check --workspace --benches --features avro,json - - - name: Check Cargo.lock for datafusion-cli - run: | - # If this test fails, try running `cargo update` in the `datafusion-cli` directory - # and check in the updated Cargo.lock file. - cargo check --manifest-path datafusion-cli/Cargo.toml --locked - - # Ensure that the datafusion crate can be built with only a subset of the function - # packages enabled. - - name: Check datafusion (nested_expressions) - run: cargo check --no-default-features --features=nested_expressions -p datafusion - - - name: Check datafusion (crypto) - run: cargo check --no-default-features --features=crypto_expressions -p datafusion - - - name: Check datafusion (datetime_expressions) - run: cargo check --no-default-features --features=datetime_expressions -p datafusion - - - name: Check datafusion (encoding_expressions) - run: cargo check --no-default-features --features=encoding_expressions -p datafusion - - - name: Check datafusion (math_expressions) - run: cargo check --no-default-features --features=math_expressions -p datafusion - - - name: Check datafusion (regex_expressions) - run: cargo check --no-default-features --features=regex_expressions -p datafusion - - - name: Check datafusion (string_expressions) - run: cargo check --no-default-features --features=string_expressions -p datafusion - - # Ensure that the datafusion-functions crate can be built with only a subset of the function - # packages enabled. - - name: Check datafusion-functions (crypto) - run: cargo check --all-targets --no-default-features --features=crypto_expressions -p datafusion-functions - - - name: Check datafusion-functions (datetime_expressions) - run: cargo check --all-targets --no-default-features --features=datetime_expressions -p datafusion-functions - - - name: Check datafusion-functions (encoding_expressions) - run: cargo check --all-targets --no-default-features --features=encoding_expressions -p datafusion-functions - - - name: Check datafusion-functions (math_expressions) - run: cargo check --all-targets --no-default-features --features=math_expressions -p datafusion-functions - - - name: Check datafusion-functions (regex_expressions) - run: cargo check --all-targets --no-default-features --features=regex_expressions -p datafusion-functions - - - name: Check datafusion-functions (string_expressions) - run: cargo check --all-targets --no-default-features --features=string_expressions -p datafusion-functions - - # Run tests - linux-test: - name: cargo test (amd64) - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run tests (excluding doctests) - run: cargo test --lib --tests --bins --features avro,json,backtrace - - name: Verify Working Directory Clean - run: git diff --exit-code - - linux-test-datafusion-cli: - name: cargo test datafusion-cli (amd64) - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run tests (excluding doctests) - run: | - cd datafusion-cli - cargo test --lib --tests --bins --all-features - - name: Verify Working Directory Clean - run: git diff --exit-code - - linux-test-example: - name: cargo examples (amd64) - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run examples - run: | - # test datafusion-sql examples - cargo run --example sql - # test datafusion-examples - ci/scripts/rust_example.sh - - name: Verify Working Directory Clean - run: git diff --exit-code - - - - # Run `cargo test doc` (test documentation examples) - linux-test-doc: - name: cargo test doc (amd64) - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run doctests - run: | - cargo test --doc --features avro,json - cd datafusion-cli - cargo test --doc --all-features - - name: Verify Working Directory Clean - run: git diff --exit-code - - # Run `cargo doc` to ensure the rustdoc is clean - linux-rustdoc: - name: cargo doc - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run cargo doc - run: ci/scripts/rust_docs.sh - - linux-wasm-pack: - name: build with wasm-pack - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Install wasm-pack - run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh - - name: Build with wasm-pack - working-directory: ./datafusion/wasmtest - run: wasm-pack build --dev - - # verify that the benchmark queries return the correct results - verify-benchmark-results: - name: verify benchmark results (amd64) - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Generate benchmark data and expected query results - run: | - mkdir -p datafusion/sqllogictest/test_files/tpch/data - git clone https://github.com/databricks/tpch-dbgen.git - cd tpch-dbgen - make - ./dbgen -f -s 0.1 - mv *.tbl ../datafusion/sqllogictest/test_files/tpch/data - - name: Verify that benchmark queries return expected results - run: | - export TPCH_DATA=`realpath datafusion/sqllogictest/test_files/tpch/data` - # use release build for plan verificaton because debug build causes stack overflow - cargo test plan_q --package datafusion-benchmarks --profile release-nonlto --features=ci -- --test-threads=1 - INCLUDE_TPCH=true cargo test --test sqllogictests - - name: Verify Working Directory Clean - run: git diff --exit-code - - sqllogictest-postgres: - name: "Run sqllogictest with Postgres runner" - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - services: - postgres: - image: postgres:15 - env: - POSTGRES_PASSWORD: postgres - POSTGRES_DB: db_test - POSTGRES_INITDB_ARGS: --encoding=UTF-8 --lc-collate=C --lc-ctype=C - ports: - - 5432/tcp - options: >- - --health-cmd pg_isready - --health-interval 10s - --health-timeout 5s - --health-retries 5 - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup toolchain - run: | - rustup toolchain install stable - rustup default stable - - name: Run sqllogictest - run: PG_COMPAT=true PG_URI="postgresql://postgres:postgres@localhost:$POSTGRES_PORT/db_test" cargo test --features=postgres --test sqllogictests - env: - POSTGRES_PORT: ${{ job.services.postgres.ports[5432] }} - windows: name: cargo test (win64) runs-on: windows-latest @@ -344,267 +57,3 @@ jobs: cd datafusion-cli cargo test --lib --tests --bins --all-features - macos: - name: cargo test (macos) - runs-on: macos-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-macos-builder - - name: Run tests (excluding doctests) - shell: bash - run: | - cargo test --lib --tests --bins --features avro,json,backtrace - cd datafusion-cli - cargo test --lib --tests --bins --all-features - - macos-aarch64: - name: cargo test (macos-aarch64) - runs-on: macos-14 - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-macos-aarch64-builder - - name: Run tests (excluding doctests) - shell: bash - run: | - cargo test --lib --tests --bins --features avro,json,backtrace - cd datafusion-cli - cargo test --lib --tests --bins --all-features - - test-datafusion-pyarrow: - name: cargo test pyarrow (amd64) - needs: [ linux-build-lib ] - runs-on: ubuntu-20.04 - container: - image: amd64/rust:bullseye # Workaround https://github.com/actions/setup-python/issues/721 - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - uses: actions/setup-python@v5 - with: - python-version: "3.8" - - name: Install PyArrow - run: | - echo "LIBRARY_PATH=$LD_LIBRARY_PATH" >> $GITHUB_ENV - python -m pip install pyarrow - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run datafusion-common tests - run: cargo test -p datafusion-common --features=pyarrow - - vendor: - name: Verify Vendored Code - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - - name: Run gen - run: ./regen.sh - working-directory: ./datafusion/proto - - name: Verify workspace clean (if this fails, run ./datafusion/proto/regen.sh and check in results) - run: git diff --exit-code - - check-fmt: - name: Check cargo fmt - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run - run: | - echo '' > datafusion/proto/src/generated/datafusion.rs - ci/scripts/rust_fmt.sh - - # Coverage job disabled due to - # https://github.com/apache/datafusion/issues/3678 - - # coverage: - # name: coverage - # runs-on: ubuntu-latest - # steps: - # - uses: actions/checkout@v4 - # with: - # submodules: true - # - name: Install protobuf compiler - # shell: bash - # run: | - # mkdir -p $HOME/d/protoc - # cd $HOME/d/protoc - # export PROTO_ZIP="protoc-21.4-linux-x86_64.zip" - # curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v21.4/$PROTO_ZIP - # unzip $PROTO_ZIP - # export PATH=$PATH:$HOME/d/protoc/bin - # protoc --version - # - name: Setup Rust toolchain - # run: | - # rustup toolchain install stable - # rustup default stable - # rustup component add rustfmt clippy - # - name: Cache Cargo - # uses: actions/cache@v4 - # with: - # path: /home/runner/.cargo - # # this key is not equal because the user is different than on a container (runner vs github) - # key: cargo-coverage-cache3- - # - name: Run coverage - # run: | - # export PATH=$PATH:$HOME/d/protoc/bin - # rustup toolchain install stable - # rustup default stable - # cargo install --version 0.20.1 cargo-tarpaulin - # cargo tarpaulin --all --out Xml - # - name: Report coverage - # continue-on-error: true - # run: bash <(curl -s https://codecov.io/bash) - - clippy: - name: clippy - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Install Clippy - run: rustup component add clippy - - name: Run clippy - run: ci/scripts/rust_clippy.sh - - # Check answers are correct when hash values collide - hash-collisions: - name: cargo test hash collisions (amd64) - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run tests - run: | - cd datafusion - cargo test --lib --tests --features=force_hash_collisions,avro - - cargo-toml-formatting-checks: - name: check Cargo.toml formatting - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Install taplo - run: cargo +stable install taplo-cli --version ^0.9 --locked - # if you encounter an error, try running 'taplo format' to fix the formatting automatically. - - name: Check Cargo.toml formatting - run: taplo format --check - - config-docs-check: - name: check configs.md and ***_functions.md is up-to-date - needs: [ linux-build-lib ] - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - uses: actions/setup-node@v4 - with: - node-version: "20" - - name: Check if configs.md has been modified - run: | - # If you encounter an error, run './dev/update_config_docs.sh' and commit - ./dev/update_config_docs.sh - git diff --exit-code - - name: Check if any of the ***_functions.md has been modified - run: | - # If you encounter an error, run './dev/update_function_docs.sh' and commit - ./dev/update_function_docs.sh - git diff --exit-code - - # Verify MSRV for the crates which are directly used by other projects: - # - datafusion - # - datafusion-substrait - # - datafusion-proto - # - datafusion-cli - msrv: - name: Verify MSRV (Min Supported Rust Version) - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - - name: Install cargo-msrv - run: cargo install cargo-msrv - - name: Check datafusion - working-directory: datafusion/core - run: | - # If you encounter an error with any of the commands below it means - # your code or some crate in the dependency tree has a higher MSRV - # (Min Supported Rust Version) than the one specified in the - # `rust-version` key of `Cargo.toml`. - # - # To reproduce: - # 1. Install the version of Rust that is failing. Example: - # rustup install 1.80.1 - # 2. Run the command that failed with that version. Example: - # cargo +1.80.1 check -p datafusion - # - # To resolve, either: - # 1. Change your code to use older Rust features, - # 2. Revert dependency update - # 3. Update the MSRV version in `Cargo.toml` - # - # Please see the DataFusion Rust Version Compatibility Policy before - # updating Cargo.toml. You may have to update the code instead. - # https://github.com/apache/datafusion/blob/main/README.md#rust-version-compatibility-policy - cargo msrv --output-format json --log-target stdout verify - - name: Check datafusion-substrait - working-directory: datafusion/substrait - run: cargo msrv --output-format json --log-target stdout verify - - name: Check datafusion-proto - working-directory: datafusion/proto - run: cargo msrv --output-format json --log-target stdout verify - - name: Check datafusion-cli - working-directory: datafusion-cli - run: cargo msrv --output-format json --log-target stdout verify From 037ff3a84c5228b534c3443fa73b4bf42bc04ca3 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 16:52:15 -0800 Subject: [PATCH 03/54] CI: Windows compilation time --- .github/workflows/rust.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index f70f040b334e..b3e5f09eb0db 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -51,9 +51,8 @@ jobs: - name: Run tests (excluding doctests) shell: bash run: | - export RUSTFLAGS="-C link-arg=-fuse-ld=lld -C target-cpu=native" export PATH=$PATH:$HOME/d/protoc/bin - cargo test --lib --tests --bins --features avro,json,backtrace + RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C lto=thin -C debuginfo=0" cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli - cargo test --lib --tests --bins --all-features + RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C lto=thin -C debuginfo=0" cargo test --lib --tests --bins --all-features From d17b3b7b346d140e06f2b73f6ddf7b37ca8aba8e Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 16:56:29 -0800 Subject: [PATCH 04/54] CI: Windows compilation time --- .github/workflows/rust.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index b3e5f09eb0db..3be16a6ce955 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C lto=thin -C debuginfo=0" cargo test --lib --tests --bins --features avro,json,backtrace + RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=0" cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli - RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C lto=thin -C debuginfo=0" cargo test --lib --tests --bins --all-features + RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=0" cargo test --lib --tests --bins --all-features From b4642d9f8163cd2eefdc363100101aa3f0e27bb0 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:06:45 -0800 Subject: [PATCH 05/54] CI: Windows compilation time --- .github/workflows/rust.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 3be16a6ce955..7e4cfa9e14b5 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=0" cargo test --lib --tests --bins --features avro,json,backtrace + RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=line-tables-only" cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli - RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=0" cargo test --lib --tests --bins --all-features + RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=line-tables-only" cargo test --lib --tests --bins --all-features From a97c91af26294924cccc1381e0c0b5a525570b86 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:19:10 -0800 Subject: [PATCH 06/54] CI: Windows compilation time --- .github/actions/setup-rust-runtime/action.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/actions/setup-rust-runtime/action.yaml b/.github/actions/setup-rust-runtime/action.yaml index cd18be989031..8496251eb0ab 100644 --- a/.github/actions/setup-rust-runtime/action.yaml +++ b/.github/actions/setup-rust-runtime/action.yaml @@ -34,5 +34,4 @@ runs: echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV echo "RUST_BACKTRACE=1" >> $GITHUB_ENV - echo "RUSTFLAGS=-C debuginfo=line-tables-only -C incremental=false" >> $GITHUB_ENV - + echo "RUSTFLAGS=-C debuginfo=line-tables-only -C incremental=false -C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native" >> $GITHUB_ENV From f8ad34a00c2387d41340e4b8600a692fade26edc Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:29:42 -0800 Subject: [PATCH 07/54] CI: Windows compilation time --- .github/actions/setup-rust-runtime/action.yaml | 3 ++- .github/workflows/rust.yml | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup-rust-runtime/action.yaml b/.github/actions/setup-rust-runtime/action.yaml index 8496251eb0ab..cd18be989031 100644 --- a/.github/actions/setup-rust-runtime/action.yaml +++ b/.github/actions/setup-rust-runtime/action.yaml @@ -34,4 +34,5 @@ runs: echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV echo "RUST_BACKTRACE=1" >> $GITHUB_ENV - echo "RUSTFLAGS=-C debuginfo=line-tables-only -C incremental=false -C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native" >> $GITHUB_ENV + echo "RUSTFLAGS=-C debuginfo=line-tables-only -C incremental=false" >> $GITHUB_ENV + diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 7e4cfa9e14b5..157f2f9a62fc 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -51,8 +51,9 @@ jobs: - name: Run tests (excluding doctests) shell: bash run: | + setx RUSTFLAGS=-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=line-tables-only -Z threads=8 export PATH=$PATH:$HOME/d/protoc/bin - RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=line-tables-only" cargo test --lib --tests --bins --features avro,json,backtrace + cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli - RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=line-tables-only" cargo test --lib --tests --bins --all-features + cargo test --lib --tests --bins --all-features From f031261914ef6a19b12ce238c5faf6cc736d33ab Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:37:00 -0800 Subject: [PATCH 08/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 157f2f9a62fc..2897f843ca06 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -51,7 +51,7 @@ jobs: - name: Run tests (excluding doctests) shell: bash run: | - setx RUSTFLAGS=-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=line-tables-only -Z threads=8 + set RUSTFLAGS=-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=line-tables-only -Z threads=8 export PATH=$PATH:$HOME/d/protoc/bin cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From f1ef183dac1e6d26c9f35c388fa1cad1d0e0e7fc Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:47:15 -0800 Subject: [PATCH 09/54] CI: Windows compilation time --- .github/workflows/rust.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 2897f843ca06..ca417637f0e8 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -51,8 +51,9 @@ jobs: - name: Run tests (excluding doctests) shell: bash run: | - set RUSTFLAGS=-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=yes -C debuginfo=line-tables-only -Z threads=8 export PATH=$PATH:$HOME/d/protoc/bin + set RUSTFLAGS=-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -Z threads=8 + echo %RUSTFLAGS% cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli cargo test --lib --tests --bins --all-features From a17076f7e53d253b1ee835a717fef8f009f46201 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:50:18 -0800 Subject: [PATCH 10/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index ca417637f0e8..2d5f526753d3 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin set RUSTFLAGS=-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -Z threads=8 - echo %RUSTFLAGS% + echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli cargo test --lib --tests --bins --all-features From dfadc04ff83ccce60e5da46b62c99363591194c5 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:52:09 -0800 Subject: [PATCH 11/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 2d5f526753d3..920d9ae81b9c 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - set RUSTFLAGS=-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -Z threads=8 + export RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -Z threads=8" echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From 3f63949c001a2e6a98c5298a047418ac57bed724 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:56:56 -0800 Subject: [PATCH 12/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 920d9ae81b9c..265279329c6d 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - export RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -Z threads=8" + export RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -C lto=thin" echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From ced7993578363b1b4a611d6703cabb87e35d587d Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 17:58:27 -0800 Subject: [PATCH 13/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 265279329c6d..50f528f85246 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - export RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -C lto=thin" + export RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -C lto=off" echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From e50d0a2b40fd4796dee485c191700650c13094ac Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 18:10:40 -0800 Subject: [PATCH 14/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 50f528f85246..e52ecc74a8e2 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - export RUSTFLAGS="-C codegen-units=16 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=false -C debuginfo=line-tables-only -C lto=off" + export RUSTFLAGS="-C codegen-units=256 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=true -C debuginfo=line-tables-only -C lto=false -C opt-level=0" echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From a75c1aa0733c7560a862d8be325d03572aac69f5 Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 21:05:25 -0800 Subject: [PATCH 15/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index e52ecc74a8e2..8cdfc149a1b4 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - export RUSTFLAGS="-C codegen-units=256 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=true -C debuginfo=line-tables-only -C lto=false -C opt-level=0" + export RUSTFLAGS="-C codegen-units=256 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=true -C debuginfo=line-tables-only -C lto=thin -C opt-level=3" echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From 0d9a4e00e437a4ba4ca8f6191006bdd553fef02f Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 21:08:21 -0800 Subject: [PATCH 16/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 8cdfc149a1b4..945632a5d40b 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - export RUSTFLAGS="-C codegen-units=256 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=true -C debuginfo=line-tables-only -C lto=thin -C opt-level=3" + export RUSTFLAGS="-C codegen-units=256 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=true -C debuginfo=line-tables-only -C lto=thin -C opt-level=3 -C embed-bitcode" echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From 03da828c1a0006d1ebccf8a860e740b817fa49cc Mon Sep 17 00:00:00 2001 From: comphead Date: Mon, 9 Dec 2024 21:12:36 -0800 Subject: [PATCH 17/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 945632a5d40b..2612903ccd44 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - export RUSTFLAGS="-C codegen-units=256 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=true -C debuginfo=line-tables-only -C lto=thin -C opt-level=3 -C embed-bitcode" + export RUSTFLAGS="-C codegen-units=256 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=true -C debuginfo=line-tables-only -C opt-level=3" echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli From e410e111119d624329a19be633c291f7f10cc1a8 Mon Sep 17 00:00:00 2001 From: comphead Date: Tue, 10 Dec 2024 13:48:00 -0800 Subject: [PATCH 18/54] CI: Windows compilation time --- .github/workflows/rust.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 2612903ccd44..7db2ea4d55bd 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,9 +52,8 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - export RUSTFLAGS="-C codegen-units=256 -C link-arg=-fuse-ld=lld -C target-cpu=native -C incremental=true -C debuginfo=line-tables-only -C opt-level=3" echo $RUSTFLAGS - cargo test --lib --tests --bins --features avro,json,backtrace + cargo test --lib --tests --bins --features avro,json,backtrace --profile release-nonlto cd datafusion-cli - cargo test --lib --tests --bins --all-features + cargo test --lib --tests --bins --all-features --profile release-nonlto From de1d542a14069dd5652be479776a253dcf9a1acf Mon Sep 17 00:00:00 2001 From: comphead Date: Tue, 10 Dec 2024 14:16:43 -0800 Subject: [PATCH 19/54] CI: Windows compilation time --- .github/workflows/rust.yml | 4 ++-- Cargo.toml | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 7db2ea4d55bd..01fd56ba6961 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin echo $RUSTFLAGS - cargo test --lib --tests --bins --features avro,json,backtrace --profile release-nonlto + cargo test --lib --tests --bins --features avro,json,backtrace --profile windows cd datafusion-cli - cargo test --lib --tests --bins --all-features --profile release-nonlto + cargo test --lib --tests --bins --all-features --profile windows diff --git a/Cargo.toml b/Cargo.toml index cc94b4292a50..86f2c36a4d45 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -170,6 +170,18 @@ overflow-checks = false panic = 'unwind' rpath = false +[profile.windows] +codegen-units = 256 +debug = false +debug-assertions = false +incremental = true +inherits = "release" +lto = true +opt-level = 1 +overflow-checks = false +panic = 'unwind' +rpath = false + [workspace.lints.clippy] # Detects large stack-allocated futures that may cause stack overflow crashes (see threshold in clippy.toml) large_futures = "warn" From 3cf8007b0ba363a2566e68ba6924f51393159fce Mon Sep 17 00:00:00 2001 From: comphead Date: Tue, 10 Dec 2024 14:56:18 -0800 Subject: [PATCH 20/54] CI: Windows compilation time --- .github/workflows/rust.yml | 5 +++-- Cargo.toml | 8 ++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 01fd56ba6961..3b3c4cca4d96 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,8 +52,9 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin + export RUSTFLAGS="-C link-arg=-fuse-ld=lld -C target-cpu=native -C debuginfo=line-tables-only" echo $RUSTFLAGS - cargo test --lib --tests --bins --features avro,json,backtrace --profile windows + cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows cd datafusion-cli - cargo test --lib --tests --bins --all-features --profile windows + cargo test --lib --tests --bins --all-features --profile=release-windows diff --git a/Cargo.toml b/Cargo.toml index 86f2c36a4d45..f75e81996ccd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -170,13 +170,13 @@ overflow-checks = false panic = 'unwind' rpath = false -[profile.windows] -codegen-units = 256 -debug = false +[profile.release-windows] +codegen-units = 1024 +debug = 'line-directives-only' debug-assertions = false incremental = true inherits = "release" -lto = true +lto = false opt-level = 1 overflow-checks = false panic = 'unwind' From cb81473b289a0a98bd519781fa8bd7bc97bf9edb Mon Sep 17 00:00:00 2001 From: comphead Date: Tue, 10 Dec 2024 15:28:28 -0800 Subject: [PATCH 21/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- Cargo.toml | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 3b3c4cca4d96..de55285325b6 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,7 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - export RUSTFLAGS="-C link-arg=-fuse-ld=lld -C target-cpu=native -C debuginfo=line-tables-only" + unset RUSTFLAGS echo $RUSTFLAGS cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows cd datafusion-cli diff --git a/Cargo.toml b/Cargo.toml index f75e81996ccd..57b84f9e232b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -171,17 +171,22 @@ panic = 'unwind' rpath = false [profile.release-windows] -codegen-units = 1024 +codegen-units = 16 debug = 'line-directives-only' debug-assertions = false -incremental = true +incremental = false inherits = "release" lto = false -opt-level = 1 +opt-level = 3 overflow-checks = false panic = 'unwind' rpath = false +[profile.release-windows.build-override] +opt-level = 0 +codegen-units = 256 +debug = false + [workspace.lints.clippy] # Detects large stack-allocated futures that may cause stack overflow crashes (see threshold in clippy.toml) large_futures = "warn" From e45eddcb878ba1552f0176c34651dff0db89b588 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 09:02:09 -0800 Subject: [PATCH 22/54] CI: Windows compilation time --- Cargo.toml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 57b84f9e232b..b8c27272d127 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -141,7 +141,6 @@ parquet = { version = "53.3.0", default-features = false, features = [ pbjson = { version = "0.7.0" } # Should match arrow-flight's version of prost. prost = "0.13.1" -prost-derive = "0.13.1" rand = "0.8" recursive = "0.1.1" regex = "1.8" @@ -171,15 +170,15 @@ panic = 'unwind' rpath = false [profile.release-windows] -codegen-units = 16 +codegen-units = 1 debug = 'line-directives-only' debug-assertions = false incremental = false inherits = "release" -lto = false -opt-level = 3 +lto = 'fat' +opt-level = 0 overflow-checks = false -panic = 'unwind' +panic = 'abort' rpath = false [profile.release-windows.build-override] From 6e79d5f0bb1c154ba9848ac9d30fa4332afa87e9 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 09:26:11 -0800 Subject: [PATCH 23/54] CI: Windows compilation time --- .github/actions/setup-windows-builder/action.yaml | 2 +- .github/workflows/rust.yml | 5 +++-- Cargo.toml | 3 +++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup-windows-builder/action.yaml b/.github/actions/setup-windows-builder/action.yaml index a84379a9fe23..ce89b607580a 100644 --- a/.github/actions/setup-windows-builder/action.yaml +++ b/.github/actions/setup-windows-builder/action.yaml @@ -40,8 +40,8 @@ runs: run: | # Avoid self update to avoid CI failures: https://github.com/apache/datafusion/issues/9653 rustup toolchain install stable --no-self-update - rustup default stable-x86_64-pc-windows-msvc rustup component add rustfmt rustup component add llvm-tools-preview + rustup target add x86_64-pc-windows-msvc - name: Configure rust runtime env uses: ./.github/actions/setup-rust-runtime diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index de55285325b6..b3163913992e 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -54,7 +54,8 @@ jobs: export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS echo $RUSTFLAGS - cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows + rustup show + cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows --target x86_64-pc-windows-msvc cd datafusion-cli - cargo test --lib --tests --bins --all-features --profile=release-windows + cargo test --lib --tests --bins --all-features --profile=release-windows --target x86_64-pc-windows-msvc diff --git a/Cargo.toml b/Cargo.toml index b8c27272d127..7b6312a41c43 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -193,3 +193,6 @@ large_futures = "warn" [workspace.lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ["cfg(tarpaulin)"] } unused_qualifications = "deny" + +[target.x86_64-pc-windows-msvc] +linker = "lld-link.exe" \ No newline at end of file From 44f64a48ad9be73f87b3c531d925649b45a36695 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 09:35:01 -0800 Subject: [PATCH 24/54] CI: Windows compilation time --- Cargo.toml | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 7b6312a41c43..70d464ba6b52 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -172,8 +172,6 @@ rpath = false [profile.release-windows] codegen-units = 1 debug = 'line-directives-only' -debug-assertions = false -incremental = false inherits = "release" lto = 'fat' opt-level = 0 @@ -181,18 +179,10 @@ overflow-checks = false panic = 'abort' rpath = false -[profile.release-windows.build-override] -opt-level = 0 -codegen-units = 256 -debug = false - [workspace.lints.clippy] # Detects large stack-allocated futures that may cause stack overflow crashes (see threshold in clippy.toml) large_futures = "warn" [workspace.lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ["cfg(tarpaulin)"] } -unused_qualifications = "deny" - -[target.x86_64-pc-windows-msvc] -linker = "lld-link.exe" \ No newline at end of file +unused_qualifications = "deny" \ No newline at end of file From c417b6d6cb893569a698ecddbe0fbd65b7dfc061 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 10:02:28 -0800 Subject: [PATCH 25/54] CI: Windows compilation time --- Cargo.toml | 2 -- 1 file changed, 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 70d464ba6b52..e334d7fb271f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -175,9 +175,7 @@ debug = 'line-directives-only' inherits = "release" lto = 'fat' opt-level = 0 -overflow-checks = false panic = 'abort' -rpath = false [workspace.lints.clippy] # Detects large stack-allocated futures that may cause stack overflow crashes (see threshold in clippy.toml) From 40e034ed03e3212440052a1926ac3b20fbd3bbd7 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 10:05:30 -0800 Subject: [PATCH 26/54] CI: Windows compilation time --- .github/workflows/rust.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index b3163913992e..d8418234a067 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,6 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS + RUSTFLAGS=-Clink-arg=-fuse-ld echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows --target x86_64-pc-windows-msvc From d955981e87edff254df2ae949b3a390c431d38d7 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 10:09:54 -0800 Subject: [PATCH 27/54] CI: Windows compilation time --- .github/workflows/rust.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index d8418234a067..4d336bae5e1e 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -54,6 +54,7 @@ jobs: export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS RUSTFLAGS=-Clink-arg=-fuse-ld + lld-link --version echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows --target x86_64-pc-windows-msvc From e13ab876b395b719bdd8f38743926b85ca2609b1 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 10:24:41 -0800 Subject: [PATCH 28/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 4d336bae5e1e..e1db23db93c1 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS - RUSTFLAGS=-Clink-arg=-fuse-ld + RUSTFLAGS="-C link-arg=-fuse-ld=lld -C target-cpu=native" lld-link --version echo $RUSTFLAGS rustup show From 14feca89173f1bafa913b1cb8e838d2e1fd3e5cd Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 15:13:27 -0800 Subject: [PATCH 29/54] CI: Windows compilation time --- .github/actions/setup-windows-builder/action.yaml | 3 +-- .github/workflows/rust.yml | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/actions/setup-windows-builder/action.yaml b/.github/actions/setup-windows-builder/action.yaml index ce89b607580a..5e937358c7d7 100644 --- a/.github/actions/setup-windows-builder/action.yaml +++ b/.github/actions/setup-windows-builder/action.yaml @@ -40,8 +40,7 @@ runs: run: | # Avoid self update to avoid CI failures: https://github.com/apache/datafusion/issues/9653 rustup toolchain install stable --no-self-update + rustup default stable rustup component add rustfmt - rustup component add llvm-tools-preview - rustup target add x86_64-pc-windows-msvc - name: Configure rust runtime env uses: ./.github/actions/setup-rust-runtime diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index e1db23db93c1..7683a797480e 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -57,7 +57,7 @@ jobs: lld-link --version echo $RUSTFLAGS rustup show - cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows --target x86_64-pc-windows-msvc + cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows cd datafusion-cli - cargo test --lib --tests --bins --all-features --profile=release-windows --target x86_64-pc-windows-msvc + cargo test --lib --tests --bins --all-features --profile=release-windows From 434aa4e656e8fd885a30c00339bc502acecb265e Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 15:39:03 -0800 Subject: [PATCH 30/54] CI: Windows compilation time --- .github/actions/setup-windows-builder/action.yaml | 3 ++- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-windows-builder/action.yaml b/.github/actions/setup-windows-builder/action.yaml index 5e937358c7d7..842fca408235 100644 --- a/.github/actions/setup-windows-builder/action.yaml +++ b/.github/actions/setup-windows-builder/action.yaml @@ -40,7 +40,8 @@ runs: run: | # Avoid self update to avoid CI failures: https://github.com/apache/datafusion/issues/9653 rustup toolchain install stable --no-self-update - rustup default stable + rustup default stable-x86_64-pc-windows-gnu rustup component add rustfmt + rustup component add llvm-tools-preview - name: Configure rust runtime env uses: ./.github/actions/setup-rust-runtime diff --git a/Cargo.toml b/Cargo.toml index e334d7fb271f..1213009b8d97 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -170,7 +170,7 @@ panic = 'unwind' rpath = false [profile.release-windows] -codegen-units = 1 +codegen-units = 16 debug = 'line-directives-only' inherits = "release" lto = 'fat' From 3f8614346067f2d7cea12360febf7459862cca9a Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 15:58:20 -0800 Subject: [PATCH 31/54] CI: Windows compilation time --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 1213009b8d97..071d0d87e613 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -173,7 +173,7 @@ rpath = false codegen-units = 16 debug = 'line-directives-only' inherits = "release" -lto = 'fat' +lto = true opt-level = 0 panic = 'abort' From 2d97bb8d3e6113261d0c7edfc829fe9b1fc2ccfa Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 16:00:36 -0800 Subject: [PATCH 32/54] CI: Windows compilation time --- Cargo.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 071d0d87e613..04bea5dd65c1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -173,8 +173,8 @@ rpath = false codegen-units = 16 debug = 'line-directives-only' inherits = "release" -lto = true -opt-level = 0 +lto = false +opt-level = 1 panic = 'abort' [workspace.lints.clippy] From cb93dc2f5325afeedbdee0b32a6760e7a44bf966 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 16:01:38 -0800 Subject: [PATCH 33/54] CI: Windows compilation time --- .github/actions/setup-windows-builder/action.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/setup-windows-builder/action.yaml b/.github/actions/setup-windows-builder/action.yaml index 842fca408235..97be610217fd 100644 --- a/.github/actions/setup-windows-builder/action.yaml +++ b/.github/actions/setup-windows-builder/action.yaml @@ -40,8 +40,8 @@ runs: run: | # Avoid self update to avoid CI failures: https://github.com/apache/datafusion/issues/9653 rustup toolchain install stable --no-self-update - rustup default stable-x86_64-pc-windows-gnu rustup component add rustfmt rustup component add llvm-tools-preview + rustup default stable-x86_64-pc-windows-msvc - name: Configure rust runtime env uses: ./.github/actions/setup-rust-runtime From 1167c4f8c378d4d59da0e90fdf8e9a40cf12a551 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 16:11:19 -0800 Subject: [PATCH 34/54] CI: Windows compilation time --- Cargo.toml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 04bea5dd65c1..252e881faa1d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -173,9 +173,8 @@ rpath = false codegen-units = 16 debug = 'line-directives-only' inherits = "release" -lto = false +lto = true opt-level = 1 -panic = 'abort' [workspace.lints.clippy] # Detects large stack-allocated futures that may cause stack overflow crashes (see threshold in clippy.toml) From a2e376d00b059e93b9ed82bbd3f7e056f864ac44 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 16:44:04 -0800 Subject: [PATCH 35/54] CI: Windows compilation time --- .github/workflows/rust.yml | 1 - Cargo.toml | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 7683a797480e..522a4077a2f1 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,6 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS - RUSTFLAGS="-C link-arg=-fuse-ld=lld -C target-cpu=native" lld-link --version echo $RUSTFLAGS rustup show diff --git a/Cargo.toml b/Cargo.toml index 252e881faa1d..2a8790227610 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -175,6 +175,8 @@ debug = 'line-directives-only' inherits = "release" lto = true opt-level = 1 +rustflags = ["-C", "link-arg=-fuse-ld=lld"] +incremental = false [workspace.lints.clippy] # Detects large stack-allocated futures that may cause stack overflow crashes (see threshold in clippy.toml) From 7e3ab33c529a8236da264f411b80a9437ffcb268 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 16:44:47 -0800 Subject: [PATCH 36/54] CI: Windows compilation time --- .github/actions/setup-windows-builder/action.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/actions/setup-windows-builder/action.yaml b/.github/actions/setup-windows-builder/action.yaml index 97be610217fd..5e937358c7d7 100644 --- a/.github/actions/setup-windows-builder/action.yaml +++ b/.github/actions/setup-windows-builder/action.yaml @@ -40,8 +40,7 @@ runs: run: | # Avoid self update to avoid CI failures: https://github.com/apache/datafusion/issues/9653 rustup toolchain install stable --no-self-update + rustup default stable rustup component add rustfmt - rustup component add llvm-tools-preview - rustup default stable-x86_64-pc-windows-msvc - name: Configure rust runtime env uses: ./.github/actions/setup-rust-runtime From abcabd093f7ada556fed93988386f31414479dbd Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 17:00:29 -0800 Subject: [PATCH 37/54] CI: Windows compilation time --- .github/workflows/rust.yml | 1 + Cargo.toml | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 522a4077a2f1..fb4f3beeb8b4 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -54,6 +54,7 @@ jobs: export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS lld-link --version + export RUSTFLAGS="-C link-arg=-fuse-ld=lld" echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows diff --git a/Cargo.toml b/Cargo.toml index 2a8790227610..00971e503402 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -175,7 +175,6 @@ debug = 'line-directives-only' inherits = "release" lto = true opt-level = 1 -rustflags = ["-C", "link-arg=-fuse-ld=lld"] incremental = false [workspace.lints.clippy] From 695f16317b709821b7344a7b7851b6e7234e7c9c Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 17:18:16 -0800 Subject: [PATCH 38/54] CI: Windows compilation time --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 00971e503402..6370d588eb09 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -170,7 +170,7 @@ panic = 'unwind' rpath = false [profile.release-windows] -codegen-units = 16 +codegen-units = 32 debug = 'line-directives-only' inherits = "release" lto = true From 98b25dc179d5b8acce9efa191edefaac82a77c94 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 17:18:43 -0800 Subject: [PATCH 39/54] CI: Windows compilation time --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 6370d588eb09..fb64aa6b094f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -172,7 +172,7 @@ rpath = false [profile.release-windows] codegen-units = 32 debug = 'line-directives-only' -inherits = "release" +inherits = "dev" lto = true opt-level = 1 incremental = false From c2a8d4054f6654b3da09c2b157c3e2f83d5ef5ce Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 17:33:21 -0800 Subject: [PATCH 40/54] CI: Windows compilation time --- Cargo.toml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index fb64aa6b094f..29e2f06dce75 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -177,6 +177,11 @@ lto = true opt-level = 1 incremental = false +[profile.release-windows.build-override] +opt-level = 0 +codegen-units = 256 +debug = false + [workspace.lints.clippy] # Detects large stack-allocated futures that may cause stack overflow crashes (see threshold in clippy.toml) large_futures = "warn" From b5009aa66d82086c08b43abc4d0b50125dff18b0 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 17:51:02 -0800 Subject: [PATCH 41/54] CI: Windows compilation time --- Cargo.toml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index 29e2f06dce75..a2161b6729e1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -182,6 +182,11 @@ opt-level = 0 codegen-units = 256 debug = false +[profile.release-windows.package.datafusion-sqllogictest] +opt-level = 0 +codegen-units = 256 +debug = false + [workspace.lints.clippy] # Detects large stack-allocated futures that may cause stack overflow crashes (see threshold in clippy.toml) large_futures = "warn" From 621e7f53374303abdbdf8a707ee789b0888c72b4 Mon Sep 17 00:00:00 2001 From: comphead Date: Fri, 13 Dec 2024 21:47:25 -0800 Subject: [PATCH 42/54] CI: Windows compilation time --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index a2161b6729e1..4005bbe69d90 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -173,7 +173,7 @@ rpath = false codegen-units = 32 debug = 'line-directives-only' inherits = "dev" -lto = true +lto = 'thin' opt-level = 1 incremental = false From a9991f6664b1a0b7b302f3f5e6b1fd22f5e1d4c4 Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 12:43:35 -0800 Subject: [PATCH 43/54] CI: Windows compilation time --- .github/workflows/rust.yml | 4 ++-- Cargo.toml | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index fb4f3beeb8b4..84fca55ebc26 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -54,10 +54,10 @@ jobs: export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS lld-link --version - export RUSTFLAGS="-C link-arg=-fuse-ld=lld" + export RUSTFLAGS="-C link-arg=-fuse-ld=lld -C target-cpu=native" echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows cd datafusion-cli - cargo test --lib --tests --bins --all-features --profile=release-windows + cargo test --lib --tests --bins --all-features diff --git a/Cargo.toml b/Cargo.toml index 4005bbe69d90..644e5bd013cb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -170,11 +170,11 @@ panic = 'unwind' rpath = false [profile.release-windows] -codegen-units = 32 +codegen-units = 16 debug = 'line-directives-only' inherits = "dev" -lto = 'thin' -opt-level = 1 +lto = "fat" +opt-level = 3 incremental = false [profile.release-windows.build-override] From cca5d80e56bb6de838c26542d9111e053a1fdcd9 Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 13:06:45 -0800 Subject: [PATCH 44/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 84fca55ebc26..eb1a4122aaa5 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -41,7 +41,7 @@ on: jobs: windows: name: cargo test (win64) - runs-on: windows-latest + runs-on: windows-2019 steps: - uses: actions/checkout@v4 with: From d93908ded4835ca7f3d076aee210e45930a4877f Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 13:23:20 -0800 Subject: [PATCH 45/54] CI: Windows compilation time --- .github/workflows/rust.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index eb1a4122aaa5..9c63c7848e7c 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -54,10 +54,10 @@ jobs: export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS lld-link --version - export RUSTFLAGS="-C link-arg=-fuse-ld=lld -C target-cpu=native" + export RUSTFLAGS=$RUSTFLAGS"-C link-arg=-fuse-ld=lld -C target-cpu=native" echo $RUSTFLAGS rustup show - cargo test --lib --tests --bins --features avro,json,backtrace --profile=release-windows + cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli cargo test --lib --tests --bins --all-features From dfb66f56ada22910058f98f8ceaaa03cea2ace72 Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 13:28:06 -0800 Subject: [PATCH 46/54] CI: Windows compilation time --- .github/workflows/rust.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 9c63c7848e7c..b576c02a844d 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -54,6 +54,7 @@ jobs: export PATH=$PATH:$HOME/d/protoc/bin unset RUSTFLAGS lld-link --version + echo $RUSTFLAGS export RUSTFLAGS=$RUSTFLAGS"-C link-arg=-fuse-ld=lld -C target-cpu=native" echo $RUSTFLAGS rustup show From 67237f5cdeb7ffd18254bbfe7fc798f2eb02d830 Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 13:28:21 -0800 Subject: [PATCH 47/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index b576c02a844d..5256246c243f 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -52,9 +52,7 @@ jobs: shell: bash run: | export PATH=$PATH:$HOME/d/protoc/bin - unset RUSTFLAGS lld-link --version - echo $RUSTFLAGS export RUSTFLAGS=$RUSTFLAGS"-C link-arg=-fuse-ld=lld -C target-cpu=native" echo $RUSTFLAGS rustup show From d1126afb6bcddb0ce16c839a6d97c100356a0bc7 Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 13:28:34 -0800 Subject: [PATCH 48/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 5256246c243f..ebc258cb7e50 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin lld-link --version - export RUSTFLAGS=$RUSTFLAGS"-C link-arg=-fuse-ld=lld -C target-cpu=native" + export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native" echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace From c5ccc93ba73253181969e8dacfbb819c7b64ddec Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 13:48:40 -0800 Subject: [PATCH 49/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index ebc258cb7e50..043d09a478fb 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin lld-link --version - export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native" + export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=1" echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace From b16206348d1379f2b246f573c4b06c76c388b7cc Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 14:50:03 -0800 Subject: [PATCH 50/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 043d09a478fb..d060085049c4 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin lld-link --version - export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=1" + export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=2" echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace From e71a9d375deaba8accbb93f2d09761ada5ae7c6a Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 19:26:30 -0800 Subject: [PATCH 51/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index d060085049c4..aa0810882d78 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin lld-link --version - export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=2" + export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=3" echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace From c80726e37d0a7cf004c9398697cae4ff5c593fdb Mon Sep 17 00:00:00 2001 From: comphead Date: Sat, 14 Dec 2024 23:29:56 -0800 Subject: [PATCH 52/54] CI: Windows compilation time --- .github/workflows/rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index aa0810882d78..043d09a478fb 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,7 +53,7 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin lld-link --version - export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=3" + export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=1" echo $RUSTFLAGS rustup show cargo test --lib --tests --bins --features avro,json,backtrace From 48a5ea58134619cd45a66f0328e3946f2e1e37e5 Mon Sep 17 00:00:00 2001 From: comphead Date: Sun, 15 Dec 2024 09:45:21 -0800 Subject: [PATCH 53/54] CI: Windows compilation time --- .github/workflows/rust.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 043d09a478fb..c7121bf742d5 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,10 +53,10 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin lld-link --version - export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=1" + # export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=1" echo $RUSTFLAGS rustup show - cargo test --lib --tests --bins --features avro,json,backtrace + cargo test --lib --tests --bins --features avro,json,backtrace --release cd datafusion-cli cargo test --lib --tests --bins --all-features From 410bc6b2f5ba4b382dba833f918c1d8ae6556709 Mon Sep 17 00:00:00 2001 From: comphead Date: Sun, 15 Dec 2024 11:31:43 -0800 Subject: [PATCH 54/54] CI: Windows compilation time --- .github/workflows/rust.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index c7121bf742d5..52ed7799d31a 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -53,10 +53,10 @@ jobs: run: | export PATH=$PATH:$HOME/d/protoc/bin lld-link --version - # export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=1" + # export RUSTFLAGS=$RUSTFLAGS" -C link-arg=-fuse-ld=lld -C target-cpu=native -C opt-level=1 -C lto=false" echo $RUSTFLAGS rustup show - cargo test --lib --tests --bins --features avro,json,backtrace --release + cargo test --lib --tests --bins --features avro,json,backtrace cd datafusion-cli cargo test --lib --tests --bins --all-features