Skip to content

Fix phpt asm standalone tests#3628

Merged
estringana merged 1 commit intomasterfrom
estringana/fix-standalone-tests
Feb 9, 2026
Merged

Fix phpt asm standalone tests#3628
estringana merged 1 commit intomasterfrom
estringana/fix-standalone-tests

Conversation

@estringana
Copy link
Copy Markdown
Contributor

Description

Tests were flaky

Reviewer checklist

  • Test coverage seems ok.
  • Appropriate labels assigned.

@datadog-official
Copy link
Copy Markdown

datadog-official Bot commented Feb 6, 2026

⚠️ Tests

Fix all issues with Cursor

⚠️ Warnings

🧪 1024 Tests failed

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

testSimplePushAndProcess from laravel-58-test.DDTrace\Tests\Integrations\Laravel\V5_8\QueueTest (Datadog) (Fix with Cursor)
DDTrace\Tests\Integrations\Laravel\V5_8\QueueTest::testSimplePushAndProcess
Test code or tested code printed unexpected output: spanLinksTraceId: 6985cb4100000000e4216b50d3faf4b5
tid: 6985cb4100000000
hexProcessTraceId: e4216b50d3faf4b5
hexProcessSpanId: 3bb5f06a7b38218a
processTraceId: 16438538109777015989
processSpanId: 4302609359146852746

phpvfscomposer://tests/vendor/phpunit/phpunit/phpunit:106
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: 6985cb1f00000000d9b6a4270ed92663
tid: 6985cb1f00000000
hexProcessTraceId: d9b6a4270ed92663
hexProcessSpanId: ea9978ff3ce78fc6
processTraceId: 15687906839651493475
processSpanId: 16904675713945669574
View all

ℹ️ Info

❄️ No new flaky tests detected

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

@estringana estringana marked this pull request as ready for review February 9, 2026 11:09
@estringana estringana requested a review from a team as a code owner February 9, 2026 11:09
@estringana estringana merged commit 5613d84 into master Feb 9, 2026
2067 of 2069 checks passed
@estringana estringana deleted the estringana/fix-standalone-tests branch February 9, 2026 11:10
@github-actions github-actions Bot added this to the 1.17.0 milestone Feb 9, 2026
dubloom pushed a commit that referenced this pull request Feb 12, 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 <[email protected]>

* 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 <[email protected]>

* docs: note ZTS vs NTS differences

---------

Co-authored-by: Florian Engelhardt <[email protected]>

* 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 <[email protected]>

* 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 <[email protected]>

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

Co-Authored-By: Claude Opus 4.5 <[email protected]>

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

Co-authored-by: Claude Opus 4.5 <[email protected]>

---------

Co-authored-by: Florian Engelhardt <[email protected]>
Co-authored-by: Claude Opus 4.5 <[email protected]>

* 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 <[email protected]>

* Collect framework endpoints (#3548)

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

Signed-off-by: Bob Weinand <[email protected]>

* 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 <[email protected]>

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

Signed-off-by: Alexandre Rulleau <[email protected]>

---------

Signed-off-by: Alexandre Rulleau <[email protected]>

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

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

Signed-off-by: Alexandre Rulleau <[email protected]>

* chore: add troubleshooting script for SQLSRV

Signed-off-by: Alexandre Rulleau <[email protected]>

* feat: add explicit memory limit and paths

Signed-off-by: Alexandre Rulleau <[email protected]>

* chore: replace sqlsrv docker image

Signed-off-by: Alexandre Rulleau <[email protected]>

---------

Signed-off-by: Alexandre Rulleau <[email protected]>

* 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 <[email protected]>

---------

Signed-off-by: Alexandre Rulleau <[email protected]>

* Adds process_tags to live debugger payloads (#3580)

* init process tags for APM

Co-Authored-By: PROFeNoM <[email protected]>

* 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 <[email protected]>

* 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 <[email protected]>
Signed-off-by: Bob Weinand <[email protected]>
Co-authored-by: Florian Engelhardt <[email protected]>
Co-authored-by: Alexandre Rulleau <[email protected]>
Co-authored-by: Levi Morrison <[email protected]>
Co-authored-by: Laplie Anderson <[email protected]>
Co-authored-by: Alejandro Estringana Ruiz <[email protected]>
Co-authored-by: Claude Opus 4.5 <[email protected]>
Co-authored-by: Bob Weinand <[email protected]>
Co-authored-by: PROFeNoM <[email protected]>
BridgeAR pushed a commit that referenced this pull request Feb 19, 2026
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 <[email protected]>

* 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 <[email protected]>

* docs: note ZTS vs NTS differences

---------

Co-authored-by: Florian Engelhardt <[email protected]>

* 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 <[email protected]>

* 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 <[email protected]>

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

Co-Authored-By: Claude Opus 4.5 <[email protected]>

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

Co-authored-by: Claude Opus 4.5 <[email protected]>

---------

Co-authored-by: Florian Engelhardt <[email protected]>
Co-authored-by: Claude Opus 4.5 <[email protected]>

* 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 <[email protected]>

* Collect framework endpoints (#3548)

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

Signed-off-by: Bob Weinand <[email protected]>

* 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 <[email protected]>

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

Signed-off-by: Alexandre Rulleau <[email protected]>

---------

Signed-off-by: Alexandre Rulleau <[email protected]>

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

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

Signed-off-by: Alexandre Rulleau <[email protected]>

* chore: add troubleshooting script for SQLSRV

Signed-off-by: Alexandre Rulleau <[email protected]>

* feat: add explicit memory limit and paths

Signed-off-by: Alexandre Rulleau <[email protected]>

* chore: replace sqlsrv docker image

Signed-off-by: Alexandre Rulleau <[email protected]>

---------

Signed-off-by: Alexandre Rulleau <[email protected]>

* 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 <[email protected]>

---------

Signed-off-by: Alexandre Rulleau <[email protected]>

* Adds process_tags to live debugger payloads (#3580)

* init process tags for APM

Co-Authored-By: PROFeNoM <[email protected]>

* 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 <[email protected]>

* 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 <[email protected]>
Signed-off-by: Bob Weinand <[email protected]>
Co-authored-by: Florian Engelhardt <[email protected]>
Co-authored-by: Alexandre Rulleau <[email protected]>
Co-authored-by: Levi Morrison <[email protected]>
Co-authored-by: Laplie Anderson <[email protected]>
Co-authored-by: Alejandro Estringana Ruiz <[email protected]>
Co-authored-by: Claude Opus 4.5 <[email protected]>
Co-authored-by: Bob Weinand <[email protected]>
Co-authored-by: PROFeNoM <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants