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

[PROF-11305] Enable memory leak testing with ASAN, try 3 #4229

Merged
merged 1 commit into from
Dec 17, 2024

Conversation

ivoanjo
Copy link
Member

@ivoanjo ivoanjo commented Dec 16, 2024

What does this PR do?

This PR tries again to re-enable the memory leak testing with AddressSanitizer ("ASAN").

We previously had disabled it since it was failing due to an unrelated issue (specifically, the asan builds are based on Ruby master, and Ruby master was slightly incompatible with the profiler until the datadog-ruby_core_source 3.3.7 brought a newer set of headers).

Motivation:

The ASAN tool is quite powerful at detecting memory issues and other problems in native extensions, so if we can keep it running it can help flag issues before they make it to our customers.

Change log entry

None.

Additional Notes:

We can always disable again later if needed.

Hopefully once Ruby 3.4 stable is out, we can see if it's possible to have a "stable ASAN" build that's not based off of ruby master, and thus is a bit more predictable.

How to test the change?

Validate the "Test for memory leaks > test asan" CI step is running and passing.

**What does this PR do?**

This PR tries again to re-enable the memory leak testing with
AddressSanitizer ("ASAN").

We previously had disabled it since it was failing due to an unrelated
issue (specifically, the asan builds are based on Ruby master, and
Ruby master was slightly incompatible with the profiler until the
`datadog-ruby_core_source` 3.3.7 brought a newer set of headers).

**Motivation:**

The ASAN tool is quite powerful at detecting memory issues and
other problems in native extensions, so if we can keep it running
it can help flag issues before they make it to our customers.

**Additional Notes:**

We can always disable again later if needed.

Hopefully once Ruby 3.4 stable is out, we can see if it's possible
to have a "stable ASAN" build that's not based off of ruby master,
and thus is a bit more predictable.

**How to test the change?**

Validate the "Test for memory leaks > test asan" CI step is
running and passing.
@ivoanjo ivoanjo requested a review from a team as a code owner December 16, 2024 17:56
@github-actions github-actions bot added the dev/github Github repository maintenance and automation label Dec 16, 2024
@datadog-datadog-prod-us1
Copy link
Contributor

datadog-datadog-prod-us1 bot commented Dec 16, 2024

Datadog Report

Branch report: ivoanjo/prof-11305-asan-try3
Commit report: 4fe11cf
Test service: dd-trace-rb

✅ 0 Failed, 22084 Passed, 1459 Skipped, 5m 44.77s Total Time

@ivoanjo
Copy link
Member Author

ivoanjo commented Dec 16, 2024

#4113 is the PR that disabled the check

@pr-commenter
Copy link

pr-commenter bot commented Dec 16, 2024

Benchmarks

Benchmark execution time: 2024-12-16 18:15:13

Comparing candidate commit 4fe11cf in PR branch ivoanjo/prof-11305-asan-try3 with baseline commit 4f1c8bd in branch master.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 31 metrics, 2 unstable metrics.

@ivoanjo ivoanjo merged commit 28d1ef8 into master Dec 17, 2024
343 of 344 checks passed
@ivoanjo ivoanjo deleted the ivoanjo/prof-11305-asan-try3 branch December 17, 2024 09:27
@ivoanjo
Copy link
Member Author

ivoanjo commented Dec 17, 2024

Merged this one!

The "Datadog Software Composition Analysis / Datadog SBOM Generation and Upload (push)" issue is unrelated and is being tracked separately.

@github-actions github-actions bot added this to the 2.9.0 milestone Dec 17, 2024
@ivoanjo ivoanjo added dev/testing Involves testing processes (e.g. RSpec) dev/internal Other internal work that does not need to be included in the changelog labels Jan 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dev/github Github repository maintenance and automation dev/internal Other internal work that does not need to be included in the changelog dev/testing Involves testing processes (e.g. RSpec)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants