Skip to content

fix(libdd-crashtracker-ffi)!: add missing fields for endpoint configuration#1758

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 3 commits intomainfrom
julio/add-endpoint-configuration-in-ffi
Mar 19, 2026
Merged

fix(libdd-crashtracker-ffi)!: add missing fields for endpoint configuration#1758
gh-worker-dd-mergequeue-cf854d[bot] merged 3 commits intomainfrom
julio/add-endpoint-configuration-in-ffi

Conversation

@hoolioh
Copy link
Copy Markdown
Contributor

@hoolioh hoolioh commented Mar 18, 2026

What does this PR do?

Previous PR (#1705) missed some fields for Endpoint configuration on the FFI layer. This PR solves that issue.

@hoolioh hoolioh changed the title fix(libdd-crashtracker-ffi):add missing fields for endpoint configura… fix(libdd-crashtracker-ffi):add missing fields for endpoint configuration Mar 18, 2026
@hoolioh hoolioh requested a review from bwoebi March 18, 2026 10:24
@hoolioh hoolioh changed the title fix(libdd-crashtracker-ffi):add missing fields for endpoint configuration fix(libdd-crashtracker-ffi): add missing fields for endpoint configuration Mar 18, 2026
@hoolioh hoolioh changed the title fix(libdd-crashtracker-ffi): add missing fields for endpoint configuration fix(libdd-crashtracker-ffi)!: add missing fields for endpoint configuration Mar 18, 2026
@github-actions
Copy link
Copy Markdown

Clippy Allow Annotation Report

Comparing clippy allow annotations between branches:

  • Base Branch: origin/main
  • PR Branch: origin/julio/add-endpoint-configuration-in-ffi

Summary by Rule

Rule Base Branch PR Branch Change

Annotation Counts by File

File Base Branch PR Branch Change

Annotation Stats by Crate

Crate Base Branch PR Branch Change
clippy-annotation-reporter 5 5 No change (0%)
datadog-ffe-ffi 1 1 No change (0%)
datadog-ipc 28 28 No change (0%)
datadog-live-debugger 6 6 No change (0%)
datadog-live-debugger-ffi 10 10 No change (0%)
datadog-profiling-replayer 4 4 No change (0%)
datadog-remote-config 3 3 No change (0%)
datadog-sidecar 59 59 No change (0%)
libdd-common 10 10 No change (0%)
libdd-common-ffi 12 12 No change (0%)
libdd-data-pipeline 5 5 No change (0%)
libdd-ddsketch 2 2 No change (0%)
libdd-dogstatsd-client 1 1 No change (0%)
libdd-profiling 13 13 No change (0%)
libdd-telemetry 19 19 No change (0%)
libdd-tinybytes 4 4 No change (0%)
libdd-trace-normalization 2 2 No change (0%)
libdd-trace-obfuscation 9 9 No change (0%)
libdd-trace-utils 15 15 No change (0%)
Total 208 208 No change (0%)

About This Report

This report tracks Clippy allow annotations for specific rules, showing how they've changed in this PR. Decreasing the number of these annotations generally improves code quality.

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Mar 18, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 71.54%. Comparing base (4dd532f) to head (c9110f9).
⚠️ Report is 5 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1758      +/-   ##
==========================================
+ Coverage   71.51%   71.54%   +0.03%     
==========================================
  Files         430      430              
  Lines       64075    64295     +220     
==========================================
+ Hits        45821    46003     +182     
- Misses      18254    18292      +38     
Components Coverage Δ
libdd-crashtracker 64.99% <100.00%> (+1.07%) ⬆️
libdd-crashtracker-ffi 35.24% <100.00%> (+17.04%) ⬆️
libdd-alloc 98.77% <ø> (ø)
libdd-data-pipeline 87.69% <ø> (-0.24%) ⬇️
libdd-data-pipeline-ffi 73.57% <ø> (-1.29%) ⬇️
libdd-common 79.87% <ø> (+0.14%) ⬆️
libdd-common-ffi 73.87% <ø> (+0.46%) ⬆️
libdd-telemetry 62.48% <ø> (ø)
libdd-telemetry-ffi 16.75% <ø> (ø)
libdd-dogstatsd-client 82.64% <ø> (ø)
datadog-ipc 80.35% <ø> (-0.12%) ⬇️
libdd-profiling 81.48% <ø> (-0.12%) ⬇️
libdd-profiling-ffi 63.65% <ø> (ø)
datadog-sidecar 33.61% <ø> (+0.50%) ⬆️
datdog-sidecar-ffi 13.01% <ø> (+2.22%) ⬆️
spawn-worker 54.69% <ø> (ø)
libdd-tinybytes 93.16% <ø> (ø)
libdd-trace-normalization 81.71% <ø> (ø)
libdd-trace-obfuscation 91.80% <ø> (ø)
libdd-trace-protobuf 68.25% <ø> (ø)
libdd-trace-utils 89.05% <ø> (+0.10%) ⬆️
datadog-tracer-flare 86.88% <ø> (-3.59%) ⬇️
libdd-log 74.69% <ø> (ø)
🚀 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
Copy Markdown

pr-commenter bot commented Mar 18, 2026

Benchmarks

Comparison

Benchmark execution time: 2026-03-19 09:40:48

Comparing candidate commit c9110f9 in PR branch julio/add-endpoint-configuration-in-ffi with baseline commit 2db515d in branch main.

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

Explanation

This is an A/B test comparing a candidate commit's performance against that of a baseline commit. Performance changes are noted in the tables below as:

  • 🟩 = significantly better candidate vs. baseline
  • 🟥 = significantly worse candidate vs. baseline

We compute a confidence interval (CI) over the relative difference of means between metrics from the candidate and baseline commits, considering the baseline as the reference.

If the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD), the change is considered significant.

Feel free to reach out to #apm-benchmarking-platform on Slack if you have any questions.

More details about the CI and significant changes

You can imagine this CI as a range of values that is likely to contain the true difference of means between the candidate and baseline commits.

CIs of the difference of means are often centered around 0%, because often changes are not that big:

---------------------------------(------|---^--------)-------------------------------->
                              -0.6%    0%  0.3%     +1.2%
                                 |          |        |
         lower bound of the CI --'          |        |
sample mean (center of the CI) -------------'        |
         upper bound of the CI ----------------------'

As described above, a change is considered significant if the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD).

For instance, for an execution time metric, this confidence interval indicates a significantly worse performance:

----------------------------------------|---------|---(---------^---------)---------->
                                       0%        1%  1.3%      2.2%      3.1%
                                                  |   |         |         |
       significant impact threshold --------------'   |         |         |
                      lower bound of CI --------------'         |         |
       sample mean (center of the CI) --------------------------'         |
                      upper bound of CI ----------------------------------'

scenario:benching deserializing traces from msgpack to their internal representation

  • 🟥 execution_time [+2.200ms; +2.584ms] or [+4.617%; +5.424%]

scenario:credit_card/is_card_number/ 378282246310005

  • 🟥 execution_time [+5.598µs; +5.693µs] or [+8.241%; +8.381%]
  • 🟥 throughput [-1138221.137op/s; -1120499.766op/s] or [-7.732%; -7.612%]

scenario:credit_card/is_card_number/378282246310005

  • 🟥 execution_time [+5.823µs; +5.899µs] or [+8.998%; +9.115%]
  • 🟥 throughput [-1290577.824op/s; -1275259.443op/s] or [-8.353%; -8.253%]

scenario:credit_card/is_card_number/37828224631000521389798

  • 🟥 execution_time [+7.348µs; +7.373µs] or [+16.052%; +16.108%]
  • 🟥 throughput [-3032376.575op/s; -3020510.750op/s] or [-13.880%; -13.826%]

scenario:credit_card/is_card_number_no_luhn/ 378282246310005

  • 🟥 execution_time [+4.957µs; +4.993µs] or [+9.278%; +9.345%]
  • 🟥 throughput [-1599663.124op/s; -1588956.264op/s] or [-8.547%; -8.489%]

scenario:credit_card/is_card_number_no_luhn/378282246310005

  • 🟥 execution_time [+5.307µs; +5.352µs] or [+10.570%; +10.660%]
  • 🟥 throughput [-1918714.820op/s; -1903794.850op/s] or [-9.633%; -9.558%]

scenario:credit_card/is_card_number_no_luhn/37828224631000521389798

  • 🟥 execution_time [+7.394µs; +7.421µs] or [+16.168%; +16.226%]
  • 🟥 throughput [-3054237.331op/s; -3041874.313op/s] or [-13.968%; -13.911%]

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 c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 186.353µs 186.700µs ± 0.192µs 186.671µs ± 0.122µs 186.815µs 187.049µs 187.238µs 187.333µs 0.35% 0.737 0.517 0.10% 0.014µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 5338100.613op/s 5356198.048op/s ± 5510.888op/s 5357024.596op/s ± 3513.827op/s 5360099.706op/s 5363812.735op/s 5365601.949op/s 5366158.483op/s 0.17% -0.731 0.503 0.10% 389.679op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 17.837µs 17.937µs ± 0.053µs 17.935µs ± 0.025µs 17.960µs 17.992µs 18.027µs 18.488µs 3.08% 5.463 55.027 0.30% 0.004µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 54090146.912op/s 55750855.496op/s ± 163180.355op/s 55758127.840op/s ± 77668.160op/s 55833812.300op/s 55926210.316op/s 56032396.595op/s 56061760.273op/s 0.54% -5.226 51.900 0.29% 11538.594op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 10.181µs 10.271µs ± 0.074µs 10.242µs ± 0.030µs 10.303µs 10.414µs 10.472µs 10.492µs 2.44% 1.172 0.303 0.71% 0.005µs 1 200
normalization/normalize_name/normalize_name/good throughput 95314154.007op/s 97367688.217op/s ± 691316.926op/s 97637360.924op/s ± 287630.787op/s 97851383.764op/s 98098078.914op/s 98181865.244op/s 98217647.330op/s 0.59% -1.152 0.249 0.71% 48883.489op/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 [186.673µs; 186.726µs] or [-0.014%; +0.014%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [5355434.292op/s; 5356961.804op/s] or [-0.014%; +0.014%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [17.930µs; 17.944µs] or [-0.041%; +0.041%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [55728240.268op/s; 55773470.724op/s] or [-0.041%; +0.041%] None None None
normalization/normalize_name/normalize_name/good execution_time [10.261µs; 10.281µs] or [-0.099%; +0.099%] None None None
normalization/normalize_name/normalize_name/good throughput [97271878.340op/s; 97463498.095op/s] or [-0.098%; +0.098%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 32.290µs 33.322µs ± 1.389µs 32.493µs ± 0.126µs 35.125µs 35.680µs 35.720µs 36.854µs 13.42% 0.937 -1.019 4.16% 0.098µ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 [33.129µs; 33.514µs] or [-0.578%; +0.578%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 746.472µs 747.379µs ± 0.549µs 747.251µs ± 0.368µs 747.779µs 748.353µs 748.745µs 748.815µs 0.21% 0.580 -0.450 0.07% 0.039µ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 [747.303µs; 747.455µs] or [-0.010%; +0.010%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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.980µs 5.053µs ± 0.039µs 5.055µs ± 0.027µs 5.073µs 5.124µs 5.125µs 5.127µs 1.42% 0.158 -0.800 0.76% 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.048µs; 5.059µs] or [-0.106%; +0.106%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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_timestamped_x1000 execution_time 4.221ms 4.226ms ± 0.008ms 4.225ms ± 0.001ms 4.226ms 4.231ms 4.232ms 4.325ms 2.38% 11.486 147.095 0.18% 0.001ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
profile_add_sample_timestamped_x1000 execution_time [4.225ms; 4.227ms] or [-0.025%; +0.025%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 238.327ns 250.084ns ± 15.461ns 243.518ns ± 3.248ns 250.774ns 288.184ns 292.920ns 294.599ns 20.98% 1.602 1.174 6.17% 1.093ns 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 [247.941ns; 252.226ns] or [-0.857%; +0.857%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 49.495ms 50.027ms ± 0.614ms 49.949ms ± 0.081ms 50.021ms 50.155ms 52.362ms 56.548ms 13.21% 7.847 71.272 1.22% 0.043ms 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 [49.942ms; 50.113ms] or [-0.170%; +0.170%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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.368µs 146.829µs ± 1.849µs 146.600µs ± 0.445µs 146.989µs 148.732µs 153.394µs 165.282µs 12.74% 6.411 54.704 1.26% 0.131µ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 [146.573µs; 147.085µs] or [-0.175%; +0.175%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 18.022µs 22.944µs ± 8.021µs 18.766µs ± 0.123µs 23.850µs 40.757µs 43.086µs 66.690µs 255.38% 1.911 4.004 34.87% 0.567µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
two way interface execution_time [21.833µs; 24.056µs] or [-4.845%; +4.845%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 495.350µs 496.296µs ± 0.767µs 496.151µs ± 0.243µs 496.402µs 497.433µs 499.732µs 499.979µs 0.77% 3.048 10.736 0.15% 0.054µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 2000085.781op/s 2014931.000op/s ± 3098.269op/s 2015514.535op/s ± 989.430op/s 2016449.071op/s 2017774.158op/s 2018253.996op/s 2018774.604op/s 0.16% -3.032 10.645 0.15% 219.081op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 370.606µs 371.155µs ± 0.321µs 371.081µs ± 0.197µs 371.333µs 371.771µs 372.177µs 372.503µs 0.38% 1.222 1.979 0.09% 0.023µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2684541.825op/s 2694292.399op/s ± 2326.572op/s 2694830.062op/s ± 1427.353op/s 2695889.800op/s 2696978.074op/s 2697672.761op/s 2698281.136op/s 0.13% -1.216 1.955 0.09% 164.513op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 168.701µs 169.102µs ± 0.170µs 169.108µs ± 0.105µs 169.194µs 169.375µs 169.525µs 169.710µs 0.36% 0.257 0.481 0.10% 0.012µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 5892393.386op/s 5913583.009op/s ± 5951.205op/s 5913382.426op/s ± 3681.258op/s 5917618.426op/s 5923477.800op/s 5926267.826op/s 5927656.128op/s 0.24% -0.250 0.469 0.10% 420.814op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 36.826µs 37.041µs ± 0.115µs 37.048µs ± 0.099µs 37.139µs 37.213µs 37.244µs 37.268µs 0.59% -0.081 -1.238 0.31% 0.008µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 26832486.075op/s 26997574.130op/s ± 84166.629op/s 26991759.566op/s ± 72330.053op/s 27071583.018op/s 27126514.481op/s 27141672.843op/s 27154643.745op/s 0.60% 0.088 -1.239 0.31% 5951.479op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 46.182µs 46.294µs ± 0.115µs 46.282µs ± 0.037µs 46.317µs 46.395µs 46.475µs 47.688µs 3.04% 9.059 106.648 0.25% 0.008µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 20969482.805op/s 21601228.070op/s ± 52467.234op/s 21606858.369op/s ± 17266.476op/s 21624333.695op/s 21641359.752op/s 21652506.394op/s 21653489.667op/s 0.22% -8.862 103.423 0.24% 3709.994op/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 [496.190µs; 496.402µs] or [-0.021%; +0.021%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [2014501.610op/s; 2015360.391op/s] or [-0.021%; +0.021%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [371.111µs; 371.200µs] or [-0.012%; +0.012%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2693969.959op/s; 2694614.840op/s] or [-0.012%; +0.012%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [169.079µs; 169.126µs] or [-0.014%; +0.014%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [5912758.230op/s; 5914407.789op/s] or [-0.014%; +0.014%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [37.025µs; 37.057µs] or [-0.043%; +0.043%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [26985909.445op/s; 27009238.816op/s] or [-0.043%; +0.043%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [46.278µs; 46.310µs] or [-0.034%; +0.034%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [21593956.616op/s; 21608499.524op/s] or [-0.034%; +0.034%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 12.899ms 12.932ms ± 0.016ms 12.931ms ± 0.010ms 12.942ms 12.956ms 12.978ms 13.018ms 0.67% 1.123 4.167 0.12% 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 [12.930ms; 12.935ms] or [-0.017%; +0.017%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 85.950µs 86.367µs ± 0.154µs 86.354µs ± 0.044µs 86.395µs 86.483µs 86.641µs 88.110µs 2.03% 7.627 82.371 0.18% 0.011µ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 [86.346µs; 86.388µs] or [-0.025%; +0.025%] None None None

Group 13

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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.194ms 14.251ms ± 0.027ms 14.247ms ± 0.012ms 14.261ms 14.287ms 14.365ms 14.414ms 1.17% 2.334 9.654 0.19% 0.002ms 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.247ms; 14.254ms] or [-0.027%; +0.027%] None None None

Group 14

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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/2598 execution_time 3.406ms 3.440ms ± 0.018ms 3.436ms ± 0.009ms 3.446ms 3.470ms 3.502ms 3.558ms 3.55% 2.327 9.834 0.53% 0.001ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
receiver_entry_point/report/2598 execution_time [3.437ms; 3.442ms] or [-0.073%; +0.073%] None None None

Group 15

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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.895µs 3.913µs ± 0.003µs 3.913µs ± 0.002µs 3.915µs 3.918µs 3.919µs 3.925µs 0.29% -0.914 9.530 0.07% 0.000µs 1 200
credit_card/is_card_number/ throughput 254804576.553op/s 255540242.692op/s ± 183892.598op/s 255549528.970op/s ± 104107.163op/s 255650836.170op/s 255768127.909op/s 255839556.406op/s 256769069.574op/s 0.48% 0.937 9.667 0.07% 13003.170op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 80.078µs 80.739µs ± 0.277µs 80.703µs ± 0.199µs 80.940µs 81.211µs 81.455µs 81.808µs 1.37% 0.613 0.496 0.34% 0.020µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 12223803.649op/s 12385778.625op/s ± 42409.686op/s 12391181.204op/s ± 30536.601op/s 12418067.357op/s 12446629.119op/s 12456888.822op/s 12487802.992op/s 0.78% -0.592 0.442 0.34% 2998.818op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 72.999µs 73.576µs ± 0.331µs 73.506µs ± 0.205µs 73.783µs 74.235µs 74.458µs 74.864µs 1.85% 0.881 0.774 0.45% 0.023µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 13357524.859op/s 13591690.495op/s ± 60988.252op/s 13604414.633op/s ± 38003.055op/s 13634521.931op/s 13673845.124op/s 13687307.060op/s 13698729.483op/s 0.69% -0.854 0.699 0.45% 4312.521op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.897µs 3.913µs ± 0.008µs 3.912µs ± 0.002µs 3.914µs 3.918µs 3.922µs 3.995µs 2.13% 8.406 77.335 0.21% 0.001µs 1 200
credit_card/is_card_number/37828224631 throughput 250281787.329op/s 255533661.316op/s ± 531876.927op/s 255618123.327op/s ± 102589.636op/s 255696224.884op/s 255778459.245op/s 255825705.396op/s 256579080.112op/s 0.38% -8.351 76.650 0.21% 37609.378op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 69.994µs 70.581µs ± 0.272µs 70.547µs ± 0.177µs 70.742µs 71.035µs 71.321µs 71.603µs 1.50% 0.682 0.592 0.38% 0.019µs 1 200
credit_card/is_card_number/378282246310005 throughput 13965878.801op/s 14168363.514op/s ± 54367.432op/s 14174971.961op/s ± 35599.188op/s 14206370.138op/s 14244758.286op/s 14261586.956op/s 14286997.816op/s 0.79% -0.658 0.535 0.38% 3844.358op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 53.056µs 53.134µs ± 0.034µs 53.129µs ± 0.024µs 53.162µs 53.195µs 53.205µs 53.212µs 0.16% 0.203 -0.742 0.06% 0.002µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 18792873.106op/s 18820249.202op/s ± 11950.543op/s 18822181.573op/s ± 8589.634op/s 18828725.742op/s 18838484.812op/s 18843493.977op/s 18847955.141op/s 0.14% -0.200 -0.742 0.06% 845.031op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 6.430µs 6.438µs ± 0.005µs 6.437µs ± 0.003µs 6.440µs 6.448µs 6.452µs 6.456µs 0.30% 1.241 1.596 0.07% 0.000µs 1 200
credit_card/is_card_number/x371413321323331 throughput 154896401.935op/s 155334145.377op/s ± 114009.479op/s 155358632.348op/s ± 61784.874op/s 155411375.563op/s 155472986.243op/s 155491651.726op/s 155511557.923op/s 0.10% -1.236 1.582 0.07% 8061.688op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 3.896µs 3.913µs ± 0.003µs 3.912µs ± 0.001µs 3.914µs 3.918µs 3.921µs 3.925µs 0.34% 0.583 7.221 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 254765773.907op/s 255583296.927op/s ± 192317.219op/s 255626417.936op/s ± 78504.386op/s 255691773.118op/s 255775900.234op/s 255837278.190op/s 256660526.354op/s 0.40% -0.563 7.270 0.08% 13598.881op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 64.746µs 65.134µs ± 0.121µs 65.115µs ± 0.073µs 65.200µs 65.375µs 65.459µs 65.514µs 0.61% 0.649 0.740 0.19% 0.009µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 15263825.309op/s 15352917.777op/s ± 28552.770op/s 15357465.965op/s ± 17170.816op/s 15373478.827op/s 15386668.683op/s 15411046.825op/s 15445000.554op/s 0.57% -0.636 0.731 0.19% 2018.986op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 58.227µs 58.402µs ± 0.126µs 58.367µs ± 0.071µs 58.468µs 58.658µs 58.797µs 58.882µs 0.88% 1.251 1.631 0.22% 0.009µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 16983085.242op/s 17122705.941op/s ± 36881.601op/s 17132983.479op/s ± 20805.662op/s 17147829.017op/s 17167377.948op/s 17173201.803op/s 17174307.236op/s 0.24% -1.237 1.583 0.21% 2607.923op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.894µs 3.913µs ± 0.003µs 3.913µs ± 0.002µs 3.915µs 3.918µs 3.921µs 3.924µs 0.27% -0.927 9.907 0.07% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 254856704.650op/s 255530567.972op/s ± 190119.113op/s 255542011.162op/s ± 109329.667op/s 255645125.778op/s 255759446.168op/s 255854022.232op/s 256810706.305op/s 0.50% 0.951 10.056 0.07% 13443.451op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 55.159µs 55.535µs ± 0.159µs 55.504µs ± 0.104µs 55.641µs 55.821µs 55.869µs 55.903µs 0.72% 0.366 -0.650 0.29% 0.011µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 17888037.489op/s 18006795.355op/s ± 51491.498op/s 18016672.889op/s ± 33773.683op/s 18045895.248op/s 18079356.810op/s 18093429.034op/s 18129418.608op/s 0.63% -0.356 -0.655 0.29% 3640.999op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 53.082µs 53.140µs ± 0.035µs 53.133µs ± 0.021µs 53.161µs 53.195µs 53.229µs 53.344µs 0.40% 1.558 5.393 0.07% 0.002µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 18746406.939op/s 18818154.859op/s ± 12367.194op/s 18820522.814op/s ± 7392.552op/s 18827096.306op/s 18832731.742op/s 18837600.730op/s 18838944.864op/s 0.10% -1.549 5.327 0.07% 874.493op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 6.430µs 6.438µs ± 0.005µs 6.437µs ± 0.003µs 6.440µs 6.447µs 6.453µs 6.465µs 0.43% 1.767 5.728 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 154685569.230op/s 155326392.089op/s ± 119108.674op/s 155345054.454op/s ± 65967.403op/s 155409643.168op/s 155463969.551op/s 155493950.573op/s 155521026.463op/s 0.11% -1.757 5.664 0.08% 8422.255op/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.913µs; 3.914µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/ throughput [255514756.947op/s; 255565728.438op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [80.700µs; 80.777µs] or [-0.048%; +0.048%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12379901.050op/s; 12391656.200op/s] or [-0.047%; +0.047%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [73.530µs; 73.622µs] or [-0.062%; +0.062%] None None None
credit_card/is_card_number/ 378282246310005 throughput [13583238.110op/s; 13600142.880op/s] or [-0.062%; +0.062%] None None None
credit_card/is_card_number/37828224631 execution_time [3.912µs; 3.915µs] or [-0.029%; +0.029%] None None None
credit_card/is_card_number/37828224631 throughput [255459948.289op/s; 255607374.343op/s] or [-0.029%; +0.029%] None None None
credit_card/is_card_number/378282246310005 execution_time [70.543µs; 70.618µs] or [-0.053%; +0.053%] None None None
credit_card/is_card_number/378282246310005 throughput [14160828.711op/s; 14175898.317op/s] or [-0.053%; +0.053%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [53.130µs; 53.139µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [18818592.972op/s; 18821905.433op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/x371413321323331 execution_time [6.437µs; 6.438µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/x371413321323331 throughput [155318344.760op/s; 155349945.995op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.912µs; 3.913µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/ throughput [255556643.610op/s; 255609950.244op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [65.118µs; 65.151µs] or [-0.026%; +0.026%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15348960.637op/s; 15356874.916op/s] or [-0.026%; +0.026%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [58.385µs; 58.420µs] or [-0.030%; +0.030%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [17117594.506op/s; 17127817.376op/s] or [-0.030%; +0.030%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.913µs; 3.914µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255504219.291op/s; 255556916.652op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [55.513µs; 55.557µs] or [-0.040%; +0.040%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [17999659.129op/s; 18013931.582op/s] or [-0.040%; +0.040%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [53.135µs; 53.145µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [18816440.885op/s; 18819868.833op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [6.437µs; 6.439µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [155309884.772op/s; 155342899.406op/s] or [-0.011%; +0.011%] None None None

Group 16

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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.339µs 2.405µs ± 0.019µs 2.406µs ± 0.007µs 2.414µs 2.434µs 2.444µs 2.452µs 1.91% -1.318 3.643 0.79% 0.001µ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.403µs; 2.408µs] or [-0.110%; +0.110%] None None None

Group 17

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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.264µs 3.137µs ± 1.408µs 2.967µs ± 0.024µs 2.989µs 3.294µs 13.606µs 14.976µs 404.70% 7.545 57.395 44.78% 0.100µ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.941µs; 3.332µs] or [-6.221%; +6.221%] None None None

Group 18

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 159.708µs 160.508µs ± 0.373µs 160.396µs ± 0.163µs 160.639µs 161.335µs 161.617µs 162.485µs 1.30% 1.761 4.255 0.23% 0.026µ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 [160.456µs; 160.560µs] or [-0.032%; +0.032%] None None None

Group 19

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 4.196ms 4.201ms ± 0.002ms 4.201ms ± 0.001ms 4.202ms 4.205ms 4.206ms 4.215ms 0.34% 1.644 9.153 0.05% 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.201ms; 4.201ms] or [-0.007%; +0.007%] None None None

Group 20

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz c9110f9 1773912157 julio/add-endpoint-configuration-in-ffi
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 190.667ns 193.217ns ± 1.894ns 193.042ns ± 1.289ns 194.221ns 196.827ns 198.334ns 198.951ns 3.06% 0.687 0.038 0.98% 0.134ns 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 [192.955ns; 193.480ns] or [-0.136%; +0.136%] None None None

Baseline

Omitted due to size.

@hoolioh hoolioh force-pushed the julio/add-endpoint-configuration-in-ffi branch from 0629f41 to c73ec3a Compare March 18, 2026 10:50
/// the specified timeout value.
/// This is given as a uint32_t, but the actual timeout needs to fit inside of an i32 (max
/// 2^31-1). This is a limitation of the various interfaces used to guarantee the timeout.
pub timeout_ms: u32,
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@danielsn, in the Rust side the timeout value was used to set the endpoint value. Should I add a dedicated value for the endpoint configuration? Is the timeout value inside the crashtracker config also used for another purpose?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Then I guess we should use a new one for configuring just the Endpoint timeout, right?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Lets do that then LGTM to ship

@hoolioh hoolioh requested a review from danielsn March 18, 2026 10:54
@dd-octo-sts
Copy link
Copy Markdown
Contributor

dd-octo-sts bot commented Mar 18, 2026

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 100.36 MB 100.37 MB +0% (+9.50 KB) 👌
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 8.70 MB 8.70 MB 0% (0 B) 👌
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 11.28 MB 11.28 MB 0% (0 B) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 117.03 MB 117.04 MB +0% (+11.06 KB) 👌
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 27.18 MB 27.18 MB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 76.61 KB 76.61 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 186.12 MB 186.15 MB +.01% (+32.00 KB) 🔍
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 917.07 MB 917.07 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 9.94 MB 9.94 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 76.61 KB 76.61 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 24.78 MB 24.78 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 51.46 MB 51.46 MB 0% (0 B) 👌
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 22.98 MB 22.98 MB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 77.80 KB 77.80 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 190.31 MB 190.33 MB +0% (+16.00 KB) 👌
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 900.75 MB 900.75 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 7.54 MB 7.54 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 77.80 KB 77.80 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 26.52 MB 26.52 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 47.09 MB 47.09 MB 0% (0 B) 👌
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 87.57 MB 87.58 MB +0% (+8.37 KB) 👌
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 10.22 MB 10.22 MB 0% (0 B) 👌
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 109.90 MB 109.91 MB +0% (+9.60 KB) 👌
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 11.97 MB 11.97 MB 0% (0 B) 👌

@hoolioh hoolioh marked this pull request as ready for review March 18, 2026 13:18
@hoolioh hoolioh requested review from a team as code owners March 18, 2026 13:18
@hoolioh hoolioh requested a review from gyuheon0h March 18, 2026 14:20
Copy link
Copy Markdown
Contributor

@gyuheon0h gyuheon0h left a comment

Choose a reason for hiding this comment

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

pending @danielsn

Copy link
Copy Markdown
Contributor

@danielsn danielsn left a comment

Choose a reason for hiding this comment

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

Meta question: We did the original changes to avoid requiring downstream to take ddcommon. Could we instead have just re-exported Endpoint?

use_alt_stack: false,
};

assert!(CrashtrackerConfiguration::try_from(ffi_config).is_err());
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Is this guaranteed to fail for the right reason?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Another source of error could be turning CharSlice fields to String but since there is none present in the struct the only source of error is when calling build() and passing through the ensure! statement.

Comment on lines +372 to +377
endpoint: EndpointConfig {
url: CharSlice::empty(),
api_key: CharSlice::empty(),
test_token: CharSlice::empty(),
use_system_resolver: false,
},
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Should we really accept a empty endpoint?

Copy link
Copy Markdown
Contributor Author

@hoolioh hoolioh Mar 18, 2026

Choose a reason for hiding this comment

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

When passing an empty edpoint the builder will set the internal field to None which, if I recall correctly, was allowed by the previous implementation. However I don't have a deep knowledge about the crate so I'll blindly follow your guidance here.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I'd say None shouldn't ever make sense because what would be the point of having a report that doesn't go anywhere even to a file. But I'm ok doing that as a followup PR if this is blocking other things

/// the specified timeout value.
/// This is given as a uint32_t, but the actual timeout needs to fit inside of an i32 (max
/// 2^31-1). This is a limitation of the various interfaces used to guarantee the timeout.
pub timeout_ms: u32,
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@gyuheon0h
Copy link
Copy Markdown
Contributor

gyuheon0h commented Mar 18, 2026

Follow up request. Can crashtracker init fail if config has an unset url. We should be clear on the behavior; it doesn't make sense to start a crashtracker when there is nowhere for the report to go.

Can be follow up

@hoolioh
Copy link
Copy Markdown
Contributor Author

hoolioh commented Mar 19, 2026

/merge

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

gh-worker-devflow-routing-ef8351 bot commented Mar 19, 2026

View all feedbacks in Devflow UI.

2026-03-19 09:35:43 UTC ℹ️ Start processing command /merge


2026-03-19 09:35:50 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-03-19 10:03:11 UTC ℹ️ MergeQueue: merge request added to the queue

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


2026-03-19 12:06:04 UTCMergeQueue: The build pipeline has timeout

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

@bwoebi
Copy link
Copy Markdown
Contributor

bwoebi commented Mar 19, 2026

/merge

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

gh-worker-devflow-routing-ef8351 bot commented Mar 19, 2026

View all feedbacks in Devflow UI.

2026-03-19 12:23:28 UTC ℹ️ Start processing command /merge


2026-03-19 12:23:32 UTC ℹ️ MergeQueue: pull request added to the queue

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


2026-03-19 13:06:42 UTC ℹ️ MergeQueue: This merge request was merged

@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot merged commit 7b8a805 into main Mar 19, 2026
165 checks passed
@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot deleted the julio/add-endpoint-configuration-in-ffi branch March 19, 2026 13:06
bwoebi added a commit that referenced this pull request Mar 20, 2026
…-unprocessed

* 'main' of github.com:DataDog/libdatadog:
  feat(sidecar): add thread mode as fallback connection for restricted environments (#1447)
  feat(profiling-ffi): ProfilesDictionary_insert_strs (#1764)
  chore(release): merge release branch to main (#1760)
  fix(libdd-crashtracker-ffi)!: add missing fields for endpoint configuration (#1758)
  ci: prevent running macos tests on release branches (#1765)
  chore(datadog-tracer-flare): remove unnecessary features/deps (#1761)
  fix(profiling-ffi): Windows extern statics need __declspec(dllimport) (#1468)
  feat(profiling): thread id/name as well-known strs (#1757)
  ci: switch to ephemeral branches (#1731)
  chore(crashtracker): use weaker mem ordering for OP_COUNTERS (#1744)
  refactor(trace-utils)!: change header name type to accept dynamic values (#1722)
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