Skip to content

chore(profiling): update libdatadog to 26#3633

Merged
realFlowControl merged 2 commits intomasterfrom
florian/libdatadog-bump
Feb 10, 2026
Merged

chore(profiling): update libdatadog to 26#3633
realFlowControl merged 2 commits intomasterfrom
florian/libdatadog-bump

Conversation

@realFlowControl
Copy link
Member

Description

This updates libdatadog for the profiler to v.26.0.0

Reviewer checklist

  • Test coverage seems ok.
  • Appropriate labels assigned.

@realFlowControl realFlowControl requested review from a team as code owners February 10, 2026 07:21
@github-actions github-actions bot added the profiling Relates to the Continuous Profiler label Feb 10, 2026
@datadog-official
Copy link

datadog-official bot commented Feb 10, 2026

⚠️ Tests

Fix all issues with Cursor

⚠️ Warnings

🧪 1026 Tests failed

    testSearchPhpBinaries from integration.DDTrace\Tests\Integration\PHPInstallerTest (Fix with Cursor)

    testSimplePushAndProcess from laravel-58-test.DDTrace\Tests\Integrations\Laravel\V5_8\QueueTest (Fix with Cursor)

testSimplePushAndProcess from laravel-8x-test.DDTrace\Tests\Integrations\Laravel\V8_x\QueueTest (Datadog) (Fix with Cursor)
DDTrace\Tests\Integrations\Laravel\V8_x\QueueTest::testSimplePushAndProcess
Test code or tested code printed unexpected output: spanLinksTraceId: 698adedf00000000c8e765418a3461b3
tid: 698adedf00000000
hexProcessTraceId: c8e765418a3461b3
hexProcessSpanId: e3295bee7946201a
processTraceId: 14476650859371717043
processSpanId: 16368715400449761306
View all

ℹ️ Info

❄️ No new flaky tests detected

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 6a2d695 | Docs | Datadog PR Page | Was this helpful? Give us feedback!

@codecov-commenter
Copy link

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 62.12%. Comparing base (e88099a) to head (6a2d695).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #3633      +/-   ##
==========================================
- Coverage   62.21%   62.12%   -0.09%     
==========================================
  Files         141      141              
  Lines       13387    13387              
  Branches     1753     1753              
==========================================
- Hits         8329     8317      -12     
- Misses       4260     4270      +10     
- Partials      798      800       +2     

see 2 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e88099a...6a2d695. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@pr-commenter
Copy link

pr-commenter bot commented Feb 10, 2026

Benchmarks [ profiler ]

Benchmark execution time: 2026-02-10 07:38:01

Comparing candidate commit 6a2d695 in PR branch florian/libdatadog-bump with baseline commit e88099a in branch master.

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

@realFlowControl realFlowControl enabled auto-merge (squash) February 10, 2026 09:44
Copy link
Collaborator

@morrisonlevi morrisonlevi left a comment

Choose a reason for hiding this comment

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

Approved. I fixed the merge conflict on master for you.

@realFlowControl realFlowControl merged commit 5c4a19a into master Feb 10, 2026
18 of 20 checks passed
@realFlowControl realFlowControl deleted the florian/libdatadog-bump branch February 10, 2026 17:23
@github-actions github-actions bot added this to the 1.17.0 milestone Feb 10, 2026
dubloom added a commit that referenced this pull request Feb 12, 2026
* Adds process tags to profiler uploader

* remove useless utils function

* remove empty lines and fix spelling

* add function to ddtrace.sym

* feat(CI: installer tests): fix installer tests by changing enabling check on appsec extension (#3604)

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* refactor(profiling): use module globals for ZMM state (#3608)

* refactor(profiling): use module globals for ZMM state

* style: fix clippy warnings

* Apply suggestions from code review

Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>

* docs: note ZTS vs NTS differences

---------

Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>

* refactor(profiling): extract Backtrace type (#3612)

* refactor(profiling): extract Backtrace type

In a future change, this may hold a refcount for another object, so
we need to encapsulate it.

* fix `test_collect_stack_sample` not running

---------

Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>

* Propagate RELIABILITY_ENV_BRANCH to downstream pipeline (#3605)

* Add simple_onboarding_appsec to SSI system tests (#3617)

* Stores remote config requests in request-replayer (#3585)

* feat(profiling): internal metrics for overhead (#3616)

* feat(profiling): internal metrics for overhead

* feat(profiling): move CPU time capture to include serialization for `ddprof_upload` for current profile exported

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(profiling): add CPU time tracking for `ddprof_time` thread

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(profiling): separate CPU time tracking per background thread

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

* fix(tracing): hook is_internal was backwards (#3625)

* Fix phpt asm standalone tests (#3628)

* fix readme file links (#3610)

* test(language-tests): properly skip online tests and disabled soap_qname_crash.phpt on all version (#3632)

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* Collect framework endpoints (#3548)

* Only run publishing jobs when all dependent pipelines succeed (#3635)

Signed-off-by: Bob Weinand <bob.weinand@datadoghq.com>

* chore(profiling): update libdatadog to 26 (#3633)

* test(CI): manually handle git operation for windows jobs (#3634)

* test(CI): add aggressive git cleanup on windows runner

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* test(CI): add manual cleanup in before_script step

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

---------

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* feat(CI): add healthcheck to SQLSRV server setup (#3619)

* feat(CI): add healthcheck to SQLSRV server setup

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* chore: add troubleshooting script for SQLSRV

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* feat: add explicit memory limit and paths

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* chore: replace sqlsrv docker image

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

---------

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* fix(CI: test_metrics): add explicit flush in logging (#3637)

* fix(logging): fsync crash logs before _Exit() to prevent data loss

When a SIGSEGV occurs, the signal handler logs "Segmentation fault encountered"
and then calls _Exit() which terminates the process immediately. Without fsync(),
kernel write buffers may not be flushed to disk before termination, causing
a race condition where the error log file is sometimes not created.

This fix adds fsync() on Unix/Linux and _commit() on Windows after write() in
ddtrace_log_with_time() to ensure crash logs persist to disk before process
termination.

The issue affects production (rare but possible during power loss, kernel panic,
or I/O errors) and causes consistent test failures where tests check for log
files immediately after crashes (before kernel writeback completes).

Fixes flaky test_metrics SigSegVTest::testGet failures on Kubernetes where
dd_php_error.log was not being created consistently.

* fix(signals): move flush in sigsegv handler

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

---------

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* Adds process_tags to live debugger payloads (#3580)

* init process tags for APM

Co-Authored-By: PROFeNoM <alexandre.choura@datadoghq.com>

* feat(process_tags): add process_tags to tracing payloads

* small auto review and fix test

* bwoebi review

* fix test

* Adds process_tags to live debugger payloads

* temporary libdatadog bump

* auto review

* bump libdatadog

* fix build

* update makefile && make cbindgen

* fixing test

* fixing test

* fix appsec tests

---------

Co-authored-by: PROFeNoM <alexandre.choura@datadoghq.com>

* chore(profiling): update libdatadog 26 to 27 (#3640)

* chore(profiling): update libdatadog 26 to 27

* process tags were removed while rebasing to sign commit

---------

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>
Signed-off-by: Bob Weinand <bob.weinand@datadoghq.com>
Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>
Co-authored-by: Alexandre Rulleau <55387832+Leiyks@users.noreply.github.com>
Co-authored-by: Levi Morrison <levi.morrison@datadoghq.com>
Co-authored-by: Laplie Anderson <randomanderson@users.noreply.github.com>
Co-authored-by: Alejandro Estringana Ruiz <alejandro.estringanaruiz@datadoghq.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Bob Weinand <bob.weinand@datadoghq.com>
Co-authored-by: PROFeNoM <alexandre.choura@datadoghq.com>
BridgeAR pushed a commit that referenced this pull request Feb 19, 2026
* Adds process tags to profiler uploader

* remove useless utils function

* remove empty lines and fix spelling

* add function to ddtrace.sym

* feat(CI: installer tests): fix installer tests by changing enabling check on appsec extension (#3604)

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* refactor(profiling): use module globals for ZMM state (#3608)

* refactor(profiling): use module globals for ZMM state

* style: fix clippy warnings

* Apply suggestions from code review

Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>

* docs: note ZTS vs NTS differences

---------

Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>

* refactor(profiling): extract Backtrace type (#3612)

* refactor(profiling): extract Backtrace type

In a future change, this may hold a refcount for another object, so
we need to encapsulate it.

* fix `test_collect_stack_sample` not running

---------

Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>

* Propagate RELIABILITY_ENV_BRANCH to downstream pipeline (#3605)

* Add simple_onboarding_appsec to SSI system tests (#3617)

* Stores remote config requests in request-replayer (#3585)

* feat(profiling): internal metrics for overhead (#3616)

* feat(profiling): internal metrics for overhead

* feat(profiling): move CPU time capture to include serialization for `ddprof_upload` for current profile exported

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(profiling): add CPU time tracking for `ddprof_time` thread

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(profiling): separate CPU time tracking per background thread

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

* fix(tracing): hook is_internal was backwards (#3625)

* Fix phpt asm standalone tests (#3628)

* fix readme file links (#3610)

* test(language-tests): properly skip online tests and disabled soap_qname_crash.phpt on all version (#3632)

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* Collect framework endpoints (#3548)

* Only run publishing jobs when all dependent pipelines succeed (#3635)

Signed-off-by: Bob Weinand <bob.weinand@datadoghq.com>

* chore(profiling): update libdatadog to 26 (#3633)

* test(CI): manually handle git operation for windows jobs (#3634)

* test(CI): add aggressive git cleanup on windows runner

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* test(CI): add manual cleanup in before_script step

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

---------

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* feat(CI): add healthcheck to SQLSRV server setup (#3619)

* feat(CI): add healthcheck to SQLSRV server setup

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* chore: add troubleshooting script for SQLSRV

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* feat: add explicit memory limit and paths

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* chore: replace sqlsrv docker image

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

---------

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* fix(CI: test_metrics): add explicit flush in logging (#3637)

* fix(logging): fsync crash logs before _Exit() to prevent data loss

When a SIGSEGV occurs, the signal handler logs "Segmentation fault encountered"
and then calls _Exit() which terminates the process immediately. Without fsync(),
kernel write buffers may not be flushed to disk before termination, causing
a race condition where the error log file is sometimes not created.

This fix adds fsync() on Unix/Linux and _commit() on Windows after write() in
ddtrace_log_with_time() to ensure crash logs persist to disk before process
termination.

The issue affects production (rare but possible during power loss, kernel panic,
or I/O errors) and causes consistent test failures where tests check for log
files immediately after crashes (before kernel writeback completes).

Fixes flaky test_metrics SigSegVTest::testGet failures on Kubernetes where
dd_php_error.log was not being created consistently.

* fix(signals): move flush in sigsegv handler

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

---------

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>

* Adds process_tags to live debugger payloads (#3580)

* init process tags for APM

Co-Authored-By: PROFeNoM <alexandre.choura@datadoghq.com>

* feat(process_tags): add process_tags to tracing payloads

* small auto review and fix test

* bwoebi review

* fix test

* Adds process_tags to live debugger payloads

* temporary libdatadog bump

* auto review

* bump libdatadog

* fix build

* update makefile && make cbindgen

* fixing test

* fixing test

* fix appsec tests

---------

Co-authored-by: PROFeNoM <alexandre.choura@datadoghq.com>

* chore(profiling): update libdatadog 26 to 27 (#3640)

* chore(profiling): update libdatadog 26 to 27

* process tags were removed while rebasing to sign commit

---------

Signed-off-by: Alexandre Rulleau <alexandre.rulleau@datadoghq.com>
Signed-off-by: Bob Weinand <bob.weinand@datadoghq.com>
Co-authored-by: Florian Engelhardt <florian.engelhardt@datadoghq.com>
Co-authored-by: Alexandre Rulleau <55387832+Leiyks@users.noreply.github.com>
Co-authored-by: Levi Morrison <levi.morrison@datadoghq.com>
Co-authored-by: Laplie Anderson <randomanderson@users.noreply.github.com>
Co-authored-by: Alejandro Estringana Ruiz <alejandro.estringanaruiz@datadoghq.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Bob Weinand <bob.weinand@datadoghq.com>
Co-authored-by: PROFeNoM <alexandre.choura@datadoghq.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:asm profiling Relates to the Continuous Profiler tracing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants