Skip to content

Conversation

qlsl1198
Copy link

Description

This PR implements parallelization for PostgreSQL build make invocations in build_postgres.py as requested in issue #27196.

Changes Made

  • Added ThreadPoolExecutor to parallelize work_dirs builds in make_postgres() method
  • Extracted build_work_dir() method for parallel execution
  • Used CPU core count to determine optimal worker count
  • Added comprehensive error handling and logging
  • Maintained backward compatibility with existing functionality

Performance Impact

  • Multiple work directories now build in parallel instead of sequentially
  • Build time should be significantly reduced, especially on multi-core systems
  • Optimal worker count is automatically determined based on available CPU cores

Testing

  • All existing functionality preserved
  • Error handling improved with better logging
  • Backward compatibility maintained

Fixes #27196

- Add ThreadPoolExecutor to parallelize work_dirs builds in make_postgres()
- Extract build_work_dir() method for parallel execution
- Use CPU core count to determine optimal worker count
- Add comprehensive error handling and logging
- Maintain backward compatibility with existing functionality

Fixes yugabyte#27196
@CLAassistant
Copy link

CLAassistant commented Sep 10, 2025

CLA assistant check
All committers have signed the CLA.

@jasonyb
Copy link
Contributor

jasonyb commented Sep 12, 2025

As of right now, this is a duplicate of still-open #28503.

EDIT: #28503 has closed

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.

[YSQL] Parallelize postgres build make invocations

3 participants