Skip to content

Conversation

@gyuheon0h
Copy link
Contributor

@gyuheon0h gyuheon0h commented Jan 30, 2026

What does this PR do?

  1. Fix handling of empty stacktraces in crash report receiver by treating zero frames as an incomplete stack and continuing rather than an error condition that bails

Ticket

Motivation

When the crash collector sends BEGIN_STACKTRACE followed by END_STACKTRACE with no frames in between, this indicates that stack collection was attempted and completed, but no frames could be captured.
This can happen on:

  1. musl-based Linux (Alpine) where stack unwinding may not be able to unwind past the signal handler
  2. Node.js, where we have noticed that no frames are emitted but proceeds to send an END_STACKTRACE marker
  3. Other edge cases where the unwinder fails to capture frames

Previously, the code would bail with an error when this happened. This would interfere with crash report sending.

Changes

The with_stack_set_complete method now initializes an empty complete stack (StackTrace::new_incomplete()) when no frames were received. This correctly represents the semantic meaning:

  1. Frames received, collection finished: frames present, incomplete=false
  2. No frames received, collection finished: empty, incomplete=true
  3. Collection never completed, incomplete=true, streaming loop errors and report generation terminates and salvages whatever data it has received so far to send

How to test the change?

Unit tests

Copy link
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@github-actions
Copy link

github-actions bot commented Jan 30, 2026

📚 Documentation Check Results

⚠️ 996 documentation warning(s) found

📦 libdd-crashtracker - 996 warning(s)


Updated: 2026-02-02 18:12:29 UTC | Commit: dc0e7e0 | missing-docs job results

@github-actions
Copy link

github-actions bot commented Jan 30, 2026

🔒 Cargo Deny Results

⚠️ 1 issue(s) found, showing only errors (advisories, bans, sources)

📦 libdd-crashtracker - 1 error(s)

Show output
error[vulnerability]: Logging user input may result in poisoning logs with ANSI escape sequences
    ┌─ /home/runner/work/libdatadog/libdatadog/Cargo.lock:200:1
    │
200 │ tracing-subscriber 0.3.19 registry+https://github.com/rust-lang/crates.io-index
    │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ security vulnerability detected
    │
    ├ ID: RUSTSEC-2025-0055
    ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2025-0055
    ├ Previous versions of tracing-subscriber were vulnerable to ANSI escape sequence injection attacks. Untrusted user input containing ANSI escape sequences could be injected into terminal output when logged, potentially allowing attackers to:
      
      - Manipulate terminal title bars
      - Clear screens or modify terminal display
      - Potentially mislead users through terminal manipulation
      
      In isolation, impact is minimal, however security issues have been found in terminal emulators that enabled an attacker to use ANSI escape sequences via logs to exploit vulnerabilities in the terminal emulator.
      
      This was patched in [PR #3368](https://github.com/tokio-rs/tracing/pull/3368) to escape ANSI control characters from user input.
    ├ Announcement: https://github.com/advisories/GHSA-xwfj-jgwm-7wp5
    ├ Solution: Upgrade to >=0.3.20 (try `cargo update -p tracing-subscriber`)
    ├ tracing-subscriber v0.3.19
      └── (dev) libdd-telemetry v2.0.0
          └── libdd-crashtracker v1.0.0

advisories FAILED, bans ok, sources ok

Updated: 2026-02-02 18:15:01 UTC | Commit: dc0e7e0 | dependency-check job results

@gyuheon0h gyuheon0h changed the title Don't bail chore(crashtracking): don't bail when no stack frames are received Jan 30, 2026
@gyuheon0h gyuheon0h marked this pull request as ready for review January 30, 2026 18:18
@gyuheon0h gyuheon0h requested a review from a team as a code owner January 30, 2026 18:18
@gyuheon0h gyuheon0h force-pushed the gyuheon0h/prof-13625-empty-callstack branch from 97ec147 to bc0f8aa Compare January 30, 2026 18:20
@pr-commenter
Copy link

pr-commenter bot commented Jan 30, 2026

Benchmarks

Comparison

Benchmark execution time: 2026-02-02 21:59:46

Comparing candidate commit acb16d0 in PR branch gyuheon0h/prof-13625-empty-callstack with baseline commit c89b6df in branch main.

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

scenario:profile_add_sample2_frames_x1000

  • 🟥 execution_time [+28.183µs; +28.350µs] or [+5.270%; +5.302%]

scenario:single_flag_killswitch/rules-based

  • 🟩 execution_time [-9.142ns; -8.333ns] or [-4.565%; -4.161%]

Candidate

Candidate benchmark details

Group 1

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching string interning on wordpress profile execution_time 160.250µs 161.157µs ± 0.309µs 161.115µs ± 0.143µs 161.313µs 161.685µs 161.952µs 163.055µs 1.20% 1.406 6.924 0.19% 0.022µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching string interning on wordpress profile execution_time [161.114µs; 161.200µs] or [-0.027%; +0.027%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... execution_time 205.632µs 206.452µs ± 0.642µs 206.362µs ± 0.273µs 206.658µs 207.175µs 207.601µs 211.618µs 2.55% 5.090 37.551 0.31% 0.045µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 4725488.095op/s 4843793.840op/s ± 14833.818op/s 4845863.876op/s ± 6420.156op/s 4852167.886op/s 4856924.393op/s 4860171.168op/s 4863067.200op/s 0.36% -4.964 36.220 0.31% 1048.909op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 18.553µs 18.627µs ± 0.046µs 18.618µs ± 0.022µs 18.643µs 18.690µs 18.734µs 19.026µs 2.19% 4.270 31.375 0.24% 0.003µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 52559233.811op/s 53686015.936op/s ± 130260.960op/s 53712476.676op/s ± 61968.811op/s 53763851.169op/s 53817659.431op/s 53851882.565op/s 53899294.193op/s 0.35% -4.161 30.128 0.24% 9210.841op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 10.720µs 10.797µs ± 0.034µs 10.793µs ± 0.019µs 10.815µs 10.862µs 10.885µs 10.910µs 1.08% 0.636 0.584 0.32% 0.002µs 1 200
normalization/normalize_name/normalize_name/good throughput 91656719.697op/s 92620580.351op/s ± 295355.160op/s 92649663.818op/s ± 164829.416op/s 92809101.269op/s 93034136.504op/s 93224357.633op/s 93282386.434op/s 0.68% -0.616 0.548 0.32% 20884.764op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... execution_time [206.363µs; 206.541µs] or [-0.043%; +0.043%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [4841738.015op/s; 4845849.665op/s] or [-0.042%; +0.042%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [18.621µs; 18.633µs] or [-0.034%; +0.034%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [53667963.020op/s; 53704068.853op/s] or [-0.034%; +0.034%] None None None
normalization/normalize_name/normalize_name/good execution_time [10.792µs; 10.802µs] or [-0.044%; +0.044%] None None None
normalization/normalize_name/normalize_name/good throughput [92579646.966op/s; 92661513.735op/s] or [-0.044%; +0.044%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_trace/test_trace execution_time 243.002ns 253.598ns ± 13.532ns 247.711ns ± 3.246ns 252.908ns 286.233ns 288.336ns 288.529ns 16.48% 1.554 0.951 5.32% 0.957ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_trace/test_trace execution_time [251.722ns; 255.473ns] or [-0.740%; +0.740%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
redis/obfuscate_redis_string execution_time 34.176µs 34.742µs ± 0.913µs 34.321µs ± 0.047µs 34.445µs 36.645µs 36.702µs 38.556µs 12.34% 1.803 1.745 2.62% 0.065µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
redis/obfuscate_redis_string execution_time [34.615µs; 34.869µs] or [-0.364%; +0.364%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
profile_add_sample_frames_x1000 execution_time 3.998ms 4.004ms ± 0.007ms 4.003ms ± 0.001ms 4.005ms 4.008ms 4.012ms 4.091ms 2.18% 10.985 138.078 0.17% 0.000ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
profile_add_sample_frames_x1000 execution_time [4.003ms; 4.005ms] or [-0.023%; +0.023%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
credit_card/is_card_number/ execution_time 3.892µs 3.911µs ± 0.003µs 3.911µs ± 0.002µs 3.913µs 3.916µs 3.917µs 3.918µs 0.19% -1.342 11.282 0.07% 0.000µs 1 200
credit_card/is_card_number/ throughput 255205335.498op/s 255678083.252op/s ± 175781.822op/s 255688455.666op/s ± 107256.987op/s 255790230.005op/s 255895181.491op/s 255962812.898op/s 256925663.880op/s 0.48% 1.365 11.466 0.07% 12429.652op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 77.075µs 77.440µs ± 0.258µs 77.422µs ± 0.220µs 77.631µs 77.916µs 78.050µs 78.241µs 1.06% 0.481 -0.465 0.33% 0.018µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 12781064.526op/s 12913409.714op/s ± 43018.751op/s 12916260.280op/s ± 36687.182op/s 12954653.099op/s 12969561.335op/s 12971869.568op/s 12974324.717op/s 0.45% -0.468 -0.491 0.33% 3041.885op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 70.642µs 71.186µs ± 0.317µs 71.152µs ± 0.221µs 71.408µs 71.729µs 71.949µs 72.005µs 1.20% 0.439 -0.553 0.44% 0.022µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 13887857.423op/s 14047989.615op/s ± 62480.368op/s 14054416.647op/s ± 43611.783op/s 14093149.712op/s 14139974.202op/s 14149886.361op/s 14155844.808op/s 0.72% -0.423 -0.573 0.44% 4418.029op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.890µs 3.911µs ± 0.003µs 3.911µs ± 0.001µs 3.913µs 3.916µs 3.918µs 3.919µs 0.19% -2.111 18.893 0.07% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 255191285.637op/s 255656954.088op/s ± 179550.196op/s 255678736.268op/s ± 94972.446op/s 255764392.565op/s 255848441.632op/s 255905115.169op/s 257096016.008op/s 0.55% 2.145 19.214 0.07% 12696.116op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 67.420µs 67.999µs ± 0.323µs 67.981µs ± 0.242µs 68.236µs 68.565µs 68.723µs 68.897µs 1.35% 0.402 -0.521 0.47% 0.023µs 1 200
credit_card/is_card_number/378282246310005 throughput 14514434.311op/s 14706404.874op/s ± 69746.308op/s 14709900.430op/s ± 52268.538op/s 14759173.936op/s 14809811.989op/s 14823149.001op/s 14832310.706op/s 0.83% -0.383 -0.542 0.47% 4931.809op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 44.612µs 45.108µs ± 0.175µs 45.145µs ± 0.118µs 45.235µs 45.352µs 45.399µs 45.437µs 0.65% -0.512 -0.402 0.39% 0.012µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 22008469.097op/s 22169463.217op/s ± 86198.073op/s 22150891.475op/s ± 58227.593op/s 22229113.494op/s 22329992.602op/s 22375609.579op/s 22415681.445op/s 1.20% 0.528 -0.381 0.39% 6095.124op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 6.027µs 6.039µs ± 0.015µs 6.036µs ± 0.003µs 6.039µs 6.052µs 6.099µs 6.181µs 2.40% 5.964 45.801 0.25% 0.001µs 1 200
credit_card/is_card_number/x371413321323331 throughput 161790034.007op/s 165604427.981op/s ± 401492.657op/s 165670031.866op/s ± 90533.696op/s 165762914.693op/s 165841039.024op/s 165873317.167op/s 165923828.954op/s 0.15% -5.875 44.477 0.24% 28389.818op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 3.899µs 3.912µs ± 0.003µs 3.911µs ± 0.001µs 3.913µs 3.916µs 3.917µs 3.919µs 0.19% -0.136 2.559 0.06% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 255181267.519op/s 255650877.705op/s ± 163696.841op/s 255664258.138op/s ± 97714.319op/s 255760295.491op/s 255870153.652op/s 255928795.919op/s 256480444.344op/s 0.32% 0.145 2.592 0.06% 11575.115op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 64.857µs 65.573µs ± 0.097µs 65.577µs ± 0.056µs 65.630µs 65.709µs 65.748µs 65.787µs 0.32% -2.062 13.796 0.15% 0.007µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 15200548.889op/s 15250141.830op/s ± 22520.241op/s 15249235.296op/s ± 13040.936op/s 15262709.385op/s 15283010.719op/s 15296966.867op/s 15418612.301op/s 1.11% 2.114 14.260 0.15% 1592.421op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 52.949µs 53.011µs ± 0.035µs 53.004µs ± 0.019µs 53.031µs 53.075µs 53.116µs 53.147µs 0.27% 1.052 1.354 0.07% 0.002µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 18815797.425op/s 18864191.975op/s ± 12516.038op/s 18866678.616op/s ± 6803.199op/s 18872756.704op/s 18880801.058op/s 18884936.469op/s 18886031.891op/s 0.10% -1.047 1.341 0.07% 885.018op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.892µs 3.912µs ± 0.003µs 3.911µs ± 0.002µs 3.913µs 3.917µs 3.921µs 3.924µs 0.32% -0.269 9.414 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 254872415.715op/s 255648469.147op/s ± 202892.114op/s 255682943.550op/s ± 106519.708op/s 255774681.326op/s 255859298.059op/s 255907013.952op/s 256961794.727op/s 0.50% 0.296 9.548 0.08% 14346.639op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 49.744µs 49.799µs ± 0.037µs 49.789µs ± 0.020µs 49.817µs 49.886µs 49.910µs 49.933µs 0.29% 1.330 1.724 0.07% 0.003µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 20026877.864op/s 20080849.764op/s ± 15061.393op/s 20084612.174op/s ± 8064.850op/s 20091767.901op/s 20098093.395op/s 20099953.290op/s 20102782.225op/s 0.09% -1.325 1.710 0.07% 1065.001op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 44.617µs 45.165µs ± 0.203µs 45.191µs ± 0.146µs 45.319µs 45.471µs 45.507µs 45.529µs 0.75% -0.381 -0.552 0.45% 0.014µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 21964118.545op/s 22141591.988op/s ± 99629.452op/s 22128479.649op/s ± 71652.302op/s 22210552.771op/s 22311835.656op/s 22366698.522op/s 22412961.234op/s 1.29% 0.399 -0.532 0.45% 7044.866op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 6.028µs 6.039µs ± 0.014µs 6.035µs ± 0.003µs 6.039µs 6.076µs 6.103µs 6.116µs 1.34% 3.640 13.465 0.24% 0.001µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 163505042.590op/s 165602799.462op/s ± 391595.680op/s 165699544.004op/s ± 79930.676op/s 165767636.667op/s 165848562.217op/s 165884471.965op/s 165900478.947op/s 0.12% -3.625 13.343 0.24% 27689.996op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
credit_card/is_card_number/ execution_time [3.911µs; 3.912µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/ throughput [255653721.583op/s; 255702444.922op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [77.404µs; 77.476µs] or [-0.046%; +0.046%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12907447.729op/s; 12919371.699op/s] or [-0.046%; +0.046%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [71.142µs; 71.230µs] or [-0.062%; +0.062%] None None None
credit_card/is_card_number/ 378282246310005 throughput [14039330.436op/s; 14056648.793op/s] or [-0.062%; +0.062%] None None None
credit_card/is_card_number/37828224631 execution_time [3.911µs; 3.912µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/37828224631 throughput [255632070.158op/s; 255681838.018op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/378282246310005 execution_time [67.954µs; 68.044µs] or [-0.066%; +0.066%] None None None
credit_card/is_card_number/378282246310005 throughput [14696738.707op/s; 14716071.042op/s] or [-0.066%; +0.066%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [45.084µs; 45.132µs] or [-0.054%; +0.054%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [22157516.993op/s; 22181409.441op/s] or [-0.054%; +0.054%] None None None
credit_card/is_card_number/x371413321323331 execution_time [6.036µs; 6.041µs] or [-0.034%; +0.034%] None None None
credit_card/is_card_number/x371413321323331 throughput [165548784.960op/s; 165660071.002op/s] or [-0.034%; +0.034%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.911µs; 3.912µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/ throughput [255628190.897op/s; 255673564.513op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [65.560µs; 65.587µs] or [-0.020%; +0.020%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15247020.741op/s; 15253262.919op/s] or [-0.020%; +0.020%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [53.006µs; 53.015µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [18862457.372op/s; 18865926.577op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.911µs; 3.912µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255620350.252op/s; 255676588.043op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [49.794µs; 49.804µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [20078762.400op/s; 20082937.128op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [45.137µs; 45.193µs] or [-0.062%; +0.062%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [22127784.305op/s; 22155399.672op/s] or [-0.062%; +0.062%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [6.037µs; 6.041µs] or [-0.033%; +0.033%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [165548528.067op/s; 165657070.857op/s] or [-0.033%; +0.033%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sdk_test_data/rules-based execution_time 144.055µs 145.973µs ± 1.750µs 145.706µs ± 0.484µs 146.213µs 147.926µs 152.427µs 162.876µs 11.78% 5.696 46.184 1.20% 0.124µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sdk_test_data/rules-based execution_time [145.731µs; 146.215µs] or [-0.166%; +0.166%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
write only interface execution_time 1.160µs 3.179µs ± 1.385µs 2.978µs ± 0.033µs 3.009µs 3.656µs 13.615µs 14.695µs 393.52% 7.339 55.179 43.45% 0.098µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
write only interface execution_time [2.987µs; 3.371µs] or [-6.037%; +6.037%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sql/obfuscate_sql_string execution_time 89.422µs 89.638µs ± 0.164µs 89.614µs ± 0.059µs 89.685µs 89.807µs 90.021µs 91.357µs 1.95% 6.601 62.166 0.18% 0.012µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sql/obfuscate_sql_string execution_time [89.616µs; 89.661µs] or [-0.025%; +0.025%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
receiver_entry_point/report/2597 execution_time 12.650ms 13.065ms ± 0.087ms 13.061ms ± 0.039ms 13.113ms 13.187ms 13.241ms 13.338ms 2.12% -0.826 3.458 0.66% 0.006ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
receiver_entry_point/report/2597 execution_time [13.053ms; 13.077ms] or [-0.092%; +0.092%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
tags/replace_trace_tags execution_time 2.400µs 2.429µs ± 0.026µs 2.420µs ± 0.011µs 2.441µs 2.477µs 2.503µs 2.613µs 7.99% 2.659 12.829 1.05% 0.002µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
tags/replace_trace_tags execution_time [2.426µs; 2.433µs] or [-0.146%; +0.146%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
two way interface execution_time 17.702µs 26.013µs ± 9.654µs 18.695µs ± 0.767µs 34.132µs 43.019µs 45.141µs 71.414µs 281.99% 1.122 1.681 37.02% 0.683µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
two way interface execution_time [24.675µs; 27.351µs] or [-5.144%; +5.144%] None None None

Group 13

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
profile_add_sample2_frames_x1000 execution_time 562.184µs 563.021µs ± 0.437µs 562.979µs ± 0.217µs 563.215µs 563.653µs 564.023µs 566.649µs 0.65% 3.044 22.545 0.08% 0.031µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
profile_add_sample2_frames_x1000 execution_time [562.961µs; 563.082µs] or [-0.011%; +0.011%] None None None

Group 14

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
single_flag_killswitch/rules-based execution_time 189.361ns 191.547ns ± 2.063ns 191.429ns ± 1.201ns 192.492ns 194.285ns 200.541ns 204.914ns 7.04% 2.552 11.388 1.07% 0.146ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
single_flag_killswitch/rules-based execution_time [191.262ns; 191.833ns] or [-0.149%; +0.149%] None None None

Group 15

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
ip_address/quantize_peer_ip_address_benchmark execution_time 4.986µs 5.068µs ± 0.049µs 5.074µs ± 0.045µs 5.116µs 5.142µs 5.144µs 5.146µs 1.41% 0.087 -1.435 0.96% 0.003µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
ip_address/quantize_peer_ip_address_benchmark execution_time [5.061µs; 5.074µs] or [-0.134%; +0.134%] None None None

Group 16

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... execution_time 535.116µs 536.625µs ± 1.202µs 536.304µs ± 0.457µs 536.863µs 538.884µs 541.117µs 542.284µs 1.12% 1.947 4.672 0.22% 0.085µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 1844053.194op/s 1863509.597op/s ± 4155.795op/s 1864614.713op/s ± 1588.275op/s 1866153.387op/s 1867687.995op/s 1868240.198op/s 1868752.869op/s 0.22% -1.928 4.564 0.22% 293.859op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 381.519µs 382.322µs ± 0.317µs 382.331µs ± 0.206µs 382.533µs 382.776µs 383.089µs 383.394µs 0.28% 0.097 0.387 0.08% 0.022µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2608284.046op/s 2615596.732op/s ± 2166.436op/s 2615536.789op/s ± 1410.438op/s 2616986.180op/s 2619014.271op/s 2620602.458op/s 2621098.154op/s 0.21% -0.091 0.380 0.08% 153.190op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 189.338µs 189.706µs ± 0.163µs 189.685µs ± 0.093µs 189.805µs 189.966µs 190.221µs 190.322µs 0.34% 0.730 1.098 0.09% 0.012µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 5254251.194op/s 5271322.604op/s ± 4529.634op/s 5271899.929op/s ± 2578.520op/s 5274248.586op/s 5277838.762op/s 5279768.785op/s 5281569.260op/s 0.18% -0.723 1.082 0.09% 320.293op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 36.469µs 36.575µs ± 0.099µs 36.564µs ± 0.034µs 36.602µs 36.649µs 36.688µs 37.789µs 3.35% 9.345 111.784 0.27% 0.007µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 26462567.905op/s 27341129.939op/s ± 72149.899op/s 27349238.164op/s ± 25272.049op/s 27370655.216op/s 27398810.124op/s 27411367.493op/s 27420850.618op/s 0.26% -9.131 108.275 0.26% 5101.768op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 45.911µs 46.056µs ± 0.050µs 46.050µs ± 0.032µs 46.089µs 46.145µs 46.190µs 46.228µs 0.39% 0.565 0.877 0.11% 0.004µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 21631781.413op/s 21712688.277op/s ± 23726.897op/s 21715497.798op/s ± 14898.867op/s 21728384.332op/s 21746708.435op/s 21756203.860op/s 21781330.447op/s 0.30% -0.556 0.865 0.11% 1677.745op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... execution_time [536.458µs; 536.791µs] or [-0.031%; +0.031%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [1862933.644op/s; 1864085.550op/s] or [-0.031%; +0.031%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [382.278µs; 382.366µs] or [-0.011%; +0.011%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2615296.485op/s; 2615896.979op/s] or [-0.011%; +0.011%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [189.683µs; 189.728µs] or [-0.012%; +0.012%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [5270694.840op/s; 5271950.367op/s] or [-0.012%; +0.012%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [36.561µs; 36.589µs] or [-0.037%; +0.037%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [27331130.657op/s; 27351129.221op/s] or [-0.037%; +0.037%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [46.049µs; 46.063µs] or [-0.015%; +0.015%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [21709399.958op/s; 21715976.597op/s] or [-0.015%; +0.015%] None None None

Group 17

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching serializing traces from their internal representation to msgpack execution_time 14.585ms 14.651ms ± 0.039ms 14.645ms ± 0.017ms 14.666ms 14.712ms 14.790ms 14.943ms 2.04% 3.158 17.581 0.27% 0.003ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching serializing traces from their internal representation to msgpack execution_time [14.645ms; 14.656ms] or [-0.037%; +0.037%] None None None

Group 18

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching deserializing traces from msgpack to their internal representation execution_time 48.324ms 48.621ms ± 1.322ms 48.439ms ± 0.039ms 48.484ms 48.606ms 58.646ms 59.696ms 23.24% 7.898 60.980 2.71% 0.094ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching deserializing traces from msgpack to their internal representation execution_time [48.437ms; 48.804ms] or [-0.377%; +0.377%] None None None

Group 19

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz acb16d0 1770068619 gyuheon0h/prof-13625-empty-callstack
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
concentrator/add_spans_to_concentrator execution_time 10.624ms 10.654ms ± 0.016ms 10.652ms ± 0.010ms 10.662ms 10.682ms 10.705ms 10.722ms 0.66% 1.008 1.718 0.15% 0.001ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
concentrator/add_spans_to_concentrator execution_time [10.651ms; 10.656ms] or [-0.021%; +0.021%] None None None

Baseline

Omitted due to size.

@codecov-commenter
Copy link

codecov-commenter commented Jan 30, 2026

Codecov Report

❌ Patch coverage is 93.98496% with 8 lines in your changes missing coverage. Please review.
✅ Project coverage is 71.11%. Comparing base (488418a) to head (5cc18f4).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1494      +/-   ##
==========================================
+ Coverage   71.04%   71.11%   +0.07%     
==========================================
  Files         422      422              
  Lines       68697    68922     +225     
==========================================
+ Hits        48804    49017     +213     
- Misses      19893    19905      +12     
Components Coverage Δ
libdd-crashtracker 62.22% <93.98%> (+0.95%) ⬆️
libdd-crashtracker-ffi 16.21% <ø> (-0.29%) ⬇️
libdd-alloc 98.73% <ø> (ø)
libdd-data-pipeline 86.84% <ø> (ø)
libdd-data-pipeline-ffi 78.57% <ø> (ø)
libdd-common 80.97% <ø> (ø)
libdd-common-ffi 74.54% <ø> (ø)
libdd-telemetry 59.82% <ø> (ø)
libdd-telemetry-ffi 21.17% <ø> (ø)
libdd-dogstatsd-client 83.75% <ø> (ø)
datadog-ipc 82.60% <ø> (-0.19%) ⬇️
libdd-profiling 81.52% <ø> (+0.02%) ⬆️
libdd-profiling-ffi 64.71% <ø> (ø)
datadog-sidecar 34.94% <ø> (ø)
datdog-sidecar-ffi 10.25% <ø> (ø)
spawn-worker 55.18% <ø> (ø)
libdd-tinybytes 93.43% <ø> (ø)
libdd-trace-normalization 82.33% <ø> (ø)
libdd-trace-obfuscation 94.17% <ø> (ø)
libdd-trace-protobuf 61.18% <ø> (ø)
libdd-trace-utils 89.45% <ø> (ø)
datadog-tracer-flare 63.49% <ø> (ø)
libdd-log 75.57% <ø> (ø)
🚀 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.

@datadog-datadog-prod-us1

This comment has been minimized.

@gyuheon0h gyuheon0h force-pushed the gyuheon0h/prof-13625-empty-callstack branch 2 times, most recently from 183cd4a to 5cc18f4 Compare February 2, 2026 16:56
@gyuheon0h
Copy link
Contributor Author

/merge

@gh-worker-devflow-routing-ef8351
Copy link

gh-worker-devflow-routing-ef8351 bot commented Feb 2, 2026

View all feedbacks in Devflow UI.

2026-02-02 18:10:19 UTC ℹ️ Start processing command /merge


2026-02-02 18:10:25 UTC ℹ️ MergeQueue: pull request added to the queue

The expected merge time in main is approximately 33m (p90).


2026-02-02 20:10:42 UTCMergeQueue: The build pipeline has timeout

The merge request has been interrupted because the build 0 took longer than expected. The current limit for the base branch 'main' is 120 minutes.

@gyuheon0h
Copy link
Contributor Author

/merge -f

@gh-worker-devflow-routing-ef8351

View all feedbacks in Devflow UI.

2026-02-02 19:57:37 UTC ℹ️ Start processing command /merge -f
If you need support, contact us on Slack #devflow!


2026-02-02 19:57:38 UTCDevflow: /merge -f

Arguments errors:

If you need support, contact us on Slack #devflow with those details!

@gyuheon0h
Copy link
Contributor Author

/merge

@gh-worker-devflow-routing-ef8351
Copy link

gh-worker-devflow-routing-ef8351 bot commented Feb 2, 2026

View all feedbacks in Devflow UI.

2026-02-02 20:18:11 UTC ℹ️ Start processing command /merge


2026-02-02 20:18:15 UTC ℹ️ MergeQueue: pull request added to the queue

The expected merge time in main is approximately 33m (p90).


2026-02-02 21:17:16 UTC ℹ️ MergeQueue: Retrying because an high priority merge request needed to be processed first. No action is needed from your side.


2026-02-02 21:17:20 UTC ⚠️ MergeQueue: This merge request build was cancelled

gregory.leocadie@datadoghq.com cancelled this merge request build

@gleocadie
Copy link
Contributor

/remove

@gh-worker-devflow-routing-ef8351
Copy link

gh-worker-devflow-routing-ef8351 bot commented Feb 2, 2026

View all feedbacks in Devflow UI.

2026-02-02 21:17:10 UTC ℹ️ Start processing command /remove


2026-02-02 21:17:14 UTC ℹ️ Devflow: /remove

Copy link
Contributor

@gleocadie gleocadie left a comment

Choose a reason for hiding this comment

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

just a nit

@gyuheon0h gyuheon0h force-pushed the gyuheon0h/prof-13625-empty-callstack branch from 34ea26d to acb16d0 Compare February 2, 2026 21:43
@gyuheon0h
Copy link
Contributor Author

/merge

@gh-worker-devflow-routing-ef8351
Copy link

gh-worker-devflow-routing-ef8351 bot commented Feb 2, 2026

View all feedbacks in Devflow UI.

2026-02-02 21:44:24 UTC ℹ️ Start processing command /merge


2026-02-02 21:44:31 UTC ℹ️ MergeQueue: waiting for PR to be ready

This pull request is not mergeable according to GitHub. Common reasons include pending required checks, missing approvals, or merge conflicts — but it could also be blocked by other repository rules or settings.
It will be added to the queue as soon as checks pass and/or get approvals. View in MergeQueue UI.
Note: if you pushed new commits since the last approval, you may need additional approval.
You can remove it from the waiting list with /remove command.


2026-02-02 22:33:30 UTC ⚠️ MergeQueue: This merge request was unqueued

gyuheon.oh@datadoghq.com unqueued this merge request

@gyuheon0h
Copy link
Contributor Author

/remove

@gh-worker-devflow-routing-ef8351
Copy link

gh-worker-devflow-routing-ef8351 bot commented Feb 2, 2026

View all feedbacks in Devflow UI.

2026-02-02 22:33:24 UTC ℹ️ Start processing command /remove


2026-02-02 22:33:27 UTC ℹ️ Devflow: /remove

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants