DataDog / dd-trace-php

Datadog PHP Clients
https://docs.datadoghq.com/tracing/setup/php
Other
481 stars 149 forks source link

experiment: does a missing zend_execute_internal cause a crash? #2722

Closed morrisonlevi closed 1 week ago

morrisonlevi commented 2 weeks ago

Description

In another PR I seemed to be getting crashes in the sequence of events:

  1. dd_uhook_end on an internal function
  2. ddog_php_prof_interrupt_function
  3. Profiler ::collect_time

And then I OOM, sometimes in Zend Memory Manager but sometimes in Rust.

I'm trying to isolate this from the other changes to see if there's just an issue here somewhow.

Reviewer checklist

pr-commenter[bot] commented 2 weeks ago

Benchmarks

Benchmark execution time: 2024-06-19 04:38:06

Comparing candidate commit db79e24c26af9a07b6f2f8465153963345a5ac6d in PR branch levi/no-execute-internal-crash with baseline commit e731d2e06aed929735b0400768780175ab882852 in branch levi/randomized-tests-php8.3.

Found 3 performance improvements and 0 performance regressions! Performance is the same for 24 metrics, 9 unstable metrics.

scenario:php-profiler-timeline-memory-with-profiler

scenario:php-profiler-timeline-memory-with-profiler-and-timeline

morrisonlevi commented 1 week ago

Seems like... no. Something else in the patch must be messing it up.