-
Notifications
You must be signed in to change notification settings - Fork 1.4k
reduce ci performance time #599
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
… upload them to the cache
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR consolidates multiple GitHub Actions workflows to reduce CI performance time by merging initialization environments and compilation steps. The main optimization involves eliminating duplicate setup work across test jobs and removing redundant sysbench tests from memtracer testing.
- Merged separate
test.yml
andbuild.yml
workflows into a singlebuild-test.yml
workflow - Introduced artifact caching and sharing between jobs to avoid rebuilding dependencies
- Consolidated memtracer sysbench testing into the main sysbench test matrix
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
File | Description |
---|---|
.github/workflows/test.yml |
Removed standalone test workflow file |
.github/workflows/build.yml |
Removed standalone build workflow file |
.github/workflows/build-test.yml |
New consolidated workflow with optimized job dependencies and artifact sharing |
strategy: | ||
matrix: | ||
include: | ||
# 基础sysbench测试 |
Copilot
AI
Aug 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] The comment is in Chinese. Consider using English comments for better international collaboration and consistency with the rest of the codebase.
# 基础sysbench测试 | |
# Basic sysbench test |
Copilot uses AI. Check for mistakes.
test_case: 'miniob_select' | ||
build_type: 'release' | ||
memtracer: '' | ||
# memtracer sysbench测试 |
Copilot
AI
Aug 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] The comment is in Chinese. Consider using English comments for better international collaboration and consistency with the rest of the codebase.
# memtracer sysbench测试 | |
# memtracer sysbench test |
Copilot uses AI. Check for mistakes.
- name: Download build artifacts | ||
uses: actions/download-artifact@v4 | ||
with: | ||
name: ${{ matrix.build_type == 'debug' && 'build-debug-artifacts' || 'build-release-artifacts' }} |
Copilot
AI
Aug 11, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The workflow references 'build-debug-artifacts' but no job creates this artifact. Only 'build-release-artifacts' is uploaded by the build-release job, which could cause the sysbench-test job to fail when matrix.build_type is 'debug'.
Copilot uses AI. Check for mistakes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At present, the system bench does not conduct testing based on debug mode, so no debug artifacts have been uploaded.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
What problem were solved in this pull request?
Issue Number: close #538
Problem:
What is changed and how it works?
Merge initialization environments and compilation steps for multiple tests.
Remove a duplicate test from memtracer test and sysbench test.
Other information
This is just a process optimization, a more effective method is to reduce the time of sysbench testing, and this PR has not completely solved the problem.