Skip to content
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

chore: Move "assert" and "werr" flags from "actions/build" #5325

Merged
merged 1 commit into from
Feb 28, 2025

Conversation

ximinez
Copy link
Collaborator

@ximinez ximinez commented Feb 28, 2025

High Level Overview of Change

PR #5228 added assert=TRUE and werr=TRUE CMake flags to the build/action.yml script which is used by all CI jobs to build rippled, ensuring those flags were always set. The assumption was that only the CI jobs used that script, so any extra time cost was offset by the benefit of the extra checks. That assumption was incorrect. That script is used by other downstream projects. Therefore, those flags have been moved into the individual CI jobs' "cmake-args" parameter passed to build/action.yml. This will have the same effect for CI jobs without any side effects.

Context of Change

Internal performance testing detected a regression introduced by #5228. The regression was caused by the introduction of the assert flag in build/action.yml (which it used to build the rippled executable), which has a lot of processing overhead in performance-critical situations / testing.

No changes were made to the running code, only the build flags.

Type of Change

  • Chore (no impact to binary, e.g. .gitignore, formatting, dropping support for older tooling)

I am categorizing this as a chore because there is no change to the binary for anyone building directly.

- PR #5228 added assert=TRUE and werr=TRUE CMake flags to the
  build/action.yml script which is used by all CI jobs to build rippled,
  ensuring those flags were always set. The assumption was that only the
  CI jobs used that script, so any extra time cost was offset by the
  benefit of the extra checks. That assumption was incorrect. That
  script is used by other downstream projects. Therefore, those flags
  have been moved into the individual CI jobs' "cmake-args" parameter
  passed to build/action.yml. This will have the same effect for CI jobs
  without any side effects.
@ximinez ximinez added the Trivial Simple change with minimal effect, or already tested. Only needs one approval. label Feb 28, 2025
@ximinez ximinez added this to the 2.4.0 (Q1 2025) milestone Feb 28, 2025
@ximinez ximinez requested a review from bthomee February 28, 2025 00:53
@ximinez ximinez added the Ready to merge *PR author* thinks it's ready to merge. Has passed code review. Perf sign-off may still be required. label Feb 28, 2025
@ximinez
Copy link
Collaborator Author

ximinez commented Feb 28, 2025

I'm marking this as "Ready to merge" now, so that it can be merged right away if no problems are found. The existing commit message is good to use for the merge.

Copy link

codecov bot commented Feb 28, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 78.1%. Comparing base (af018c7) to head (ab41752).
Report is 1 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##           develop   #5325     +/-   ##
=========================================
- Coverage     78.1%   78.1%   -0.0%     
=========================================
  Files          790     790             
  Lines        67908   67908             
  Branches      8225    8228      +3     
=========================================
- Hits         53031   53024      -7     
- Misses       14877   14884      +7     

see 1 file with indirect coverage changes

Impacted file tree graph

@ximinez ximinez merged commit c1c2b5b into develop Feb 28, 2025
24 checks passed
@ximinez ximinez deleted the ximinez/fix/build_assert branch February 28, 2025 01:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Ready to merge *PR author* thinks it's ready to merge. Has passed code review. Perf sign-off may still be required. Trivial Simple change with minimal effect, or already tested. Only needs one approval.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants