From 20da846fcbb7ec8e6460dd30aa2eb94133daf7d1 Mon Sep 17 00:00:00 2001 From: "R. Tyler Croy" Date: Thu, 20 Jul 2023 23:30:54 -0700 Subject: [PATCH] Switch CI to use debuginfo-line-tables-only The previous use of "1" would still result in significant file sizes. When building integration tests locally a setting of "1" leads to a total target/ directory size of 3.1GB, whereas "line-tables-only" results in a total clean build target/ directory size of 2.1GB. The "line-tables-only" feature provides: > Generates the minimal amount of debug info for backtraces with filename/line > number info, but not anything else, i.e. no variable or function parameter info. And was introduced in 1.70: Setting this to "0" does reduce the size further, but for panics and stacktraces in CI, we need some level of information to be present in order for the backtraces to be useful. Sponsored-by: Databricks Inc --- .github/workflows/build.yml | 9 ++++----- .github/workflows/python_build.yml | 10 +++++----- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c2e0866066..ba2915cdc8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -67,8 +67,7 @@ jobs: runs-on: ${{ matrix.os }} env: # Disable full debug symbol generation to speed up CI build and keep memory down - # "1" means line tables only, which is useful for panic tracebacks. - RUSTFLAGS: -C debuginfo=1 + RUSTFLAGS: -C debuginfo=line-tables-only # Disable incremental builds by cargo for CI which should save disk space # and hopefully avoid final link "No space left on device" CARGO_INCREMENTAL: 0 @@ -94,8 +93,8 @@ jobs: env: CARGO_INCREMENTAL: 0 # Disable full debug symbol generation to speed up CI build and keep memory down - # "1" means line tables only, which is useful for panic tracebacks. - RUSTFLAGS: "-C debuginfo=1" + # + RUSTFLAGS: "-C debuginfo=line-tables-only" # https://github.com/rust-lang/cargo/issues/10280 CARGO_NET_GIT_FETCH_WITH_CLI: "true" RUST_BACKTRACE: "1" @@ -149,7 +148,7 @@ jobs: parquet2_test: runs-on: ubuntu-latest env: - RUSTFLAGS: "-C debuginfo=0" + RUSTFLAGS: "-C debuginfo=line-tables-only" CARGO_INCREMENTAL: 0 steps: diff --git a/.github/workflows/python_build.yml b/.github/workflows/python_build.yml index b59e8dfed4..39dcb99070 100644 --- a/.github/workflows/python_build.yml +++ b/.github/workflows/python_build.yml @@ -39,7 +39,7 @@ jobs: name: Python Build (Python 3.7 PyArrow 8.0.0) runs-on: ubuntu-latest env: - RUSTFLAGS: "-C debuginfo=0" + RUSTFLAGS: "-C debuginfo=line-tables-only" CARGO_INCREMENTAL: 0 # use the same environment we have for python release @@ -73,7 +73,7 @@ jobs: # Install minimum PyArrow version pip install -e .[pandas,devel] pyarrow==8.0.0 env: - RUSTFLAGS: "-C debuginfo=0" + RUSTFLAGS: "-C debuginfo=line-tables-only" - name: Run tests run: | @@ -141,7 +141,7 @@ jobs: name: Python Benchmark runs-on: ubuntu-latest env: - RUSTFLAGS: "-C debuginfo=0" + RUSTFLAGS: "-C debuginfo=line-tables-only" CARGO_INCREMENTAL: 0 steps: @@ -191,7 +191,7 @@ jobs: name: PySpark Integration Tests runs-on: ubuntu-latest env: - RUSTFLAGS: "-C debuginfo=0" + RUSTFLAGS: "-C debuginfo=line-tables-only" CARGO_INCREMENTAL: 0 steps: @@ -231,7 +231,7 @@ jobs: name: Running with Python ${{ matrix.python-version }} runs-on: ubuntu-latest env: - RUSTFLAGS: "-C debuginfo=0" + RUSTFLAGS: "-C debuginfo=line-tables-only" CARGO_INCREMENTAL: 0 strategy: