Skip to content

Conversation

@tuhaihe
Copy link
Member

@tuhaihe tuhaihe commented Dec 27, 2025

Clean up RPM and source tarball artifacts after installation/extraction
to free disk space for subsequent test execution.

Changes:

  • Remove RPM artifacts after installation
  • Remove source tarball after extraction
  • Add disk space logging before/after cleanup for debugging

Fixes #ISSUE_Number

What does this PR do?

Type of Change

  • Bug fix (non-breaking change)
  • New feature (non-breaking change)
  • Breaking change (fix or feature with breaking changes)
  • Documentation update

Breaking Changes

Test Plan

  • Unit tests added/updated
  • Integration tests added/updated
  • Passed make installcheck
  • Passed make -C src/test installcheck-cbdb-parallel

Impact

Performance:

User-facing changes:

Dependencies:

Checklist

Additional Context

CI Skip Instructions


@reshke
Copy link
Contributor

reshke commented Dec 27, 2025

👍 👍 👍 💯

Copy link
Contributor

@leborchuk leborchuk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See failed pax-ic-good-opt-off. But the failure should not be in the changes that have been made.

Error shows unexists relation

Found regression.diffs at: ./contrib/pax_storage/src/test/regress/regression.diffs
diff -I HINT: -I CONTEXT: -I GP_IGNORE: -U3 /__w/cloudberry/cloudberry/contrib/pax_storage/src/test/regress/expected/index_constraint_naming_partition.out /__w/cloudberry/cloudberry/contrib/pax_storage/src/test/regress/results/index_constraint_naming_partition.out
--- /__w/cloudberry/cloudberry/contrib/pax_storage/src/test/regress/expected/index_constraint_naming_partition.out	2025-12-28 20:14:29.244660945 -0800
+++ /__w/cloudberry/cloudberry/contrib/pax_storage/src/test/regress/results/index_constraint_naming_partition.out	2025-12-28 20:14:29.293661640 -0800
@@ -178,9 +178,10 @@
 $fn$;
 -- validate that there are no constraints when we start
 SELECT * FROM partition_tables_show_all('r');
-ERROR:  relation "r" does not exist
-CONTEXT:  SQL function "partition_tables" statement 1
-SQL function "partition_tables_show_all" statement 1
+ partition_name | parent_name | root_name | constraint_name | index_name | constraint_type 
+----------------+-------------+-----------+-----------------+------------+-----------------
+(0 rows)
+
 -- UNIQUE constraint: validate we correctly add it and can only drop from root
 SELECT recreate_two_level_table();
  recreate_two_level_table 

A set approve since traditional good-opt-on and good-opt-off do not fail anymore.

@tuhaihe
Copy link
Member Author

tuhaihe commented Dec 29, 2025

A set approve since traditional good-opt-on and good-opt-off do not fail anymore.

Thanks @leborchuk . I will continue to improve this PR later for a better code style.

@tuhaihe
Copy link
Member Author

tuhaihe commented Dec 30, 2025

Updates:

In this PR, just improve two obvious places:

  • Remove RPM artifacts after installation
  • Remove source tarball after extraction

Let's see how the tests will go.

@tuhaihe
Copy link
Member Author

tuhaihe commented Dec 30, 2025

Updates:

In this PR, just improve two obvious places:

  • Remove RPM artifacts after installation
  • Remove source tarball after extraction

Let's see how the tests will go.

The changes work for good-opt-on and good-opt-off, but cbdb-parallel always failed. I will explore more to try to fix it.

@tuhaihe
Copy link
Member Author

tuhaihe commented Dec 31, 2025

Finally! After a cleanup work, we can get 30+G disk space for each test job!

=== Disk space before cleanup ===
Filesystem      Size  Used Avail Use% Mounted on
overlay          73G   59G   14G  81% /
=== Disk space after cleanup ===
Filesystem      Size  Used Avail Use% Mounted on
overlay          73G   27G   46G  38% /

This commit fixes the disk space issue in tests by:

- Adding Docker volume mounts to expose host directories to containers,
  add removing some pre-installed tools from host, including:
  - GitHub Actions tool cache
  - Android SDK, .NET SDK, Haskell (GHC + GHCup), Swift
  - PowerShell, Chromium, Miniconda, Azure CLI, and Scala BUild Tool
- Cleaning up RPM artifacts and source tarballs after extraction in the
  test job to reclaim additional space

This approach frees ~30G of disk space per job, ensuring sufficient
space for build and test operations.
@my-ship-it my-ship-it merged commit 79d3a1f into apache:main Dec 31, 2025
40 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants