Skip to content

chore(ddtelemetry): migrate from RawTable to HashTable API#1009

Merged
morrisonlevi merged 5 commits intomainfrom
levi/rawtable-migration
Apr 8, 2025
Merged

chore(ddtelemetry): migrate from RawTable to HashTable API#1009
morrisonlevi merged 5 commits intomainfrom
levi/rawtable-migration

Conversation

@morrisonlevi
Copy link
Copy Markdown
Contributor

What does this PR do?

Update the QueueHashMap implementation to use the newer, more stable
HashTable API from hashbrown. This change maintains the same
functionality while using the recommended API... I think.

Update hashbrown dependency to v0.15 and fix DefaultHashBuilder import
path. The raw feature is no longer needed since we migrated to the
hash_table module.

Motivation

I was looking at upgrading hashbrown and noticed this old API usage
which is problematic.

Additional Notes

I did this migration with the help of Cursor. The tests pass, and the code
changes do seem logical.

How to test the change?

cargo test of course, but I'm not sure if the existing tests are
comprehensive enough. Now would be a good time to add them if needed.

Update the QueueHashMap implementation to use the newer, more stable
HashTable API from hashbrown. This change maintains the same
functionality while using the recommended API.
Update hashbrown dependency to v0.15 and fix DefaultHashBuilder import
path. The raw feature is no longer needed since we migrated to the
hash_table module.
@morrisonlevi morrisonlevi added dependencies Pull requests that update a dependency file telemetry labels Apr 8, 2025
@morrisonlevi morrisonlevi requested review from a team as code owners April 8, 2025 17:35
@pr-commenter
Copy link
Copy Markdown

pr-commenter Bot commented Apr 8, 2025

Benchmarks

Comparison

Benchmark execution time: 2025-04-08 19:54:34

Comparing candidate commit 0d78dd1 in PR branch levi/rawtable-migration with baseline commit b14e541 in branch main.

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

scenario:credit_card/is_card_number/ 3782-8224-6310-005

  • 🟩 execution_time [-4.995µs; -4.874µs] or [-6.070%; -5.923%]
  • 🟩 throughput [+765539.930op/s; +785169.787op/s] or [+6.300%; +6.462%]

scenario:credit_card/is_card_number/ 378282246310005

  • 🟩 execution_time [-5.571µs; -5.448µs] or [-7.245%; -7.085%]
  • 🟩 throughput [+992576.722op/s; +1015185.959op/s] or [+7.632%; +7.806%]

scenario:credit_card/is_card_number/378282246310005

  • 🟩 execution_time [-6.005µs; -5.841µs] or [-8.144%; -7.922%]
  • 🟩 throughput [+1168275.756op/s; +1200988.135op/s] or [+8.614%; +8.855%]

scenario:credit_card/is_card_number/x371413321323331

  • 🟩 execution_time [-560.670ns; -542.718ns] or [-8.503%; -8.230%]
  • 🟩 throughput [+13625621.242op/s; +14041799.030op/s] or [+8.984%; +9.258%]

scenario:credit_card/is_card_number_no_luhn/x371413321323331

  • 🟩 execution_time [-568.467ns; -550.544ns] or [-8.611%; -8.339%]
  • 🟩 throughput [+13805666.758op/s; +14219860.821op/s] or [+9.114%; +9.387%]

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 0d78dd1 1744141374 levi/rawtable-migration
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 67.641µs 67.872µs ± 0.247µs 67.844µs ± 0.044µs 67.883µs 68.035µs 68.247µs 70.782µs 4.33% 9.102 99.160 0.36% 0.017µ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 [67.838µs; 67.906µs] or [-0.050%; +0.050%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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.186µs 3.149µs ± 1.411µs 2.953µs ± 0.029µs 2.990µs 3.597µs 13.754µs 14.876µs 403.70% 7.401 55.734 44.71% 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.954µs; 3.345µs] or [-6.211%; +6.211%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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 54.897ms 55.190ms ± 0.172ms 55.206ms ± 0.112ms 55.285ms 55.443ms 55.786ms 55.888ms 1.24% 0.748 1.779 0.31% 0.012ms 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 [55.166ms; 55.213ms] or [-0.043%; +0.043%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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.315µs 2.394µs ± 0.026µs 2.396µs ± 0.016µs 2.411µs 2.437µs 2.447µs 2.459µs 2.63% -0.653 1.200 1.07% 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.391µs; 2.398µs] or [-0.149%; +0.149%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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.893µs 3.912µs ± 0.003µs 3.913µs ± 0.001µs 3.914µs 3.915µs 3.918µs 3.920µs 0.18% -2.341 15.227 0.07% 0.000µs 1 200
credit_card/is_card_number/ throughput 255102957.398op/s 255593909.447op/s ± 173540.868op/s 255571082.134op/s ± 72859.850op/s 255645939.590op/s 255861870.815op/s 256026514.140op/s 256904096.575op/s 0.52% 2.365 15.440 0.07% 12271.192op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 76.724µs 77.360µs ± 0.387µs 77.282µs ± 0.283µs 77.610µs 78.139µs 78.359µs 78.393µs 1.44% 0.666 -0.364 0.50% 0.027µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 12756279.794op/s 12926846.391op/s ± 64505.447op/s 12939692.622op/s ± 47503.212op/s 12983347.563op/s 13002883.651op/s 13019076.651op/s 13033673.800op/s 0.73% -0.649 -0.398 0.50% 4561.224op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 70.810µs 71.380µs ± 0.326µs 71.311µs ± 0.204µs 71.562µs 71.968µs 72.346µs 72.732µs 1.99% 1.117 1.723 0.46% 0.023µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 13749044.636op/s 14009754.068op/s ± 63621.920op/s 14022987.161op/s ± 40187.712op/s 14059485.484op/s 14088660.389op/s 14102071.253op/s 14122256.677op/s 0.71% -1.084 1.595 0.45% 4498.749op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.893µs 3.913µs ± 0.002µs 3.913µs ± 0.001µs 3.914µs 3.916µs 3.917µs 3.918µs 0.12% -3.125 23.187 0.06% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 255246814.982op/s 255568726.533op/s ± 158263.279op/s 255565447.557op/s ± 71548.743op/s 255627269.040op/s 255787387.296op/s 255995771.255op/s 256893742.577op/s 0.52% 3.153 23.490 0.06% 11190.904op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 67.097µs 67.812µs ± 0.409µs 67.738µs ± 0.253µs 68.078µs 68.461µs 68.892µs 69.482µs 2.57% 0.898 1.417 0.60% 0.029µs 1 200
credit_card/is_card_number/378282246310005 throughput 14392183.100op/s 14747103.412op/s ± 88556.434op/s 14762669.638op/s ± 55265.906op/s 14806355.630op/s 14869964.733op/s 14898964.775op/s 14903771.984op/s 0.96% -0.851 1.256 0.60% 6261.885op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 51.726µs 51.833µs ± 0.036µs 51.833µs ± 0.022µs 51.854µs 51.902µs 51.920µs 51.945µs 0.22% 0.210 0.690 0.07% 0.003µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 19251059.955op/s 19292641.763op/s ± 13462.844op/s 19292760.392op/s ± 8333.284op/s 19301546.537op/s 19313556.186op/s 19325488.344op/s 19332664.470op/s 0.21% -0.204 0.688 0.07% 951.967op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 6.028µs 6.042µs ± 0.015µs 6.038µs ± 0.002µs 6.040µs 6.075µs 6.110µs 6.115µs 1.28% 2.840 8.353 0.25% 0.001µs 1 200
credit_card/is_card_number/x371413321323331 throughput 163521988.965op/s 165499161.090op/s ± 405922.790op/s 165616072.024op/s ± 54526.263op/s 165661764.572op/s 165815103.417op/s 165872314.509op/s 165879914.769op/s 0.16% -2.823 8.232 0.24% 28703.076op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 3.896µs 3.912µs ± 0.003µs 3.913µs ± 0.001µs 3.914µs 3.916µs 3.918µs 3.918µs 0.15% -1.206 5.688 0.07% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 255206583.591op/s 255609946.627op/s ± 171406.300op/s 255590377.302op/s ± 85180.116op/s 255686812.984op/s 255887374.812op/s 255990162.806op/s 256647620.007op/s 0.41% 1.219 5.767 0.07% 12120.256op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 65.884µs 66.246µs ± 0.148µs 66.233µs ± 0.078µs 66.308µs 66.488µs 66.789µs 66.881µs 0.98% 1.265 3.393 0.22% 0.010µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 14951845.712op/s 15095310.635op/s ± 33534.417op/s 15098270.871op/s ± 17707.723op/s 15116858.047op/s 15140497.391op/s 15155461.843op/s 15178257.147op/s 0.53% -1.239 3.303 0.22% 2371.241op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 59.496µs 59.631µs ± 0.045µs 59.629µs ± 0.031µs 59.660µs 59.706µs 59.727µs 59.745µs 0.19% -0.060 -0.171 0.08% 0.003µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 16737793.989op/s 16769879.743op/s ± 12730.473op/s 16770324.910op/s ± 8833.697op/s 16779117.550op/s 16789968.920op/s 16799579.922op/s 16807733.238op/s 0.22% 0.064 -0.169 0.08% 900.180op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.893µs 3.913µs ± 0.003µs 3.913µs ± 0.002µs 3.915µs 3.919µs 3.920µs 3.921µs 0.21% -1.037 6.397 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 255027161.839op/s 255557556.758op/s ± 215572.151op/s 255572993.004op/s ± 107657.455op/s 255657567.251op/s 255876665.039op/s 256085311.085op/s 256883023.388op/s 0.51% 1.055 6.509 0.08% 15243.253op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 56.203µs 56.489µs ± 0.126µs 56.484µs ± 0.082µs 56.571µs 56.648µs 56.804µs 57.254µs 1.36% 1.606 8.193 0.22% 0.009µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 17465915.462op/s 17702766.651op/s ± 39339.836op/s 17704243.941op/s ± 25850.728op/s 17728860.732op/s 17760104.800op/s 17777120.692op/s 17792486.233op/s 0.50% -1.555 7.875 0.22% 2781.747op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 51.734µs 51.816µs ± 0.031µs 51.820µs ± 0.016µs 51.835µs 51.860µs 51.876µs 51.972µs 0.29% 0.123 2.515 0.06% 0.002µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 19241196.978op/s 19298909.457op/s ± 11510.060op/s 19297630.251op/s ± 6054.858op/s 19303755.546op/s 19318509.073op/s 19325790.153op/s 19329471.645op/s 0.17% -0.115 2.485 0.06% 813.884op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 6.025µs 6.042µs ± 0.013µs 6.038µs ± 0.002µs 6.041µs 6.075µs 6.077µs 6.115µs 1.27% 2.437 6.195 0.22% 0.001µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 163522958.376op/s 165498597.080op/s ± 356322.706op/s 165604339.025op/s ± 63706.357op/s 165663290.165op/s 165790531.601op/s 165862338.056op/s 165969045.118op/s 0.22% -2.422 6.084 0.21% 25195.820op/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.912µs; 3.913µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/ throughput [255569858.352op/s; 255617960.542op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [77.307µs; 77.414µs] or [-0.069%; +0.069%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12917906.557op/s; 12935786.226op/s] or [-0.069%; +0.069%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [71.335µs; 71.425µs] or [-0.063%; +0.063%] None None None
credit_card/is_card_number/ 378282246310005 throughput [14000936.681op/s; 14018571.454op/s] or [-0.063%; +0.063%] None None None
credit_card/is_card_number/37828224631 execution_time [3.913µs; 3.913µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/37828224631 throughput [255546792.765op/s; 255590660.302op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/378282246310005 execution_time [67.756µs; 67.869µs] or [-0.084%; +0.084%] None None None
credit_card/is_card_number/378282246310005 throughput [14734830.342op/s; 14759376.482op/s] or [-0.083%; +0.083%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [51.828µs; 51.838µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [19290775.942op/s; 19294507.584op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/x371413321323331 execution_time [6.040µs; 6.044µs] or [-0.034%; +0.034%] None None None
credit_card/is_card_number/x371413321323331 throughput [165442904.095op/s; 165555418.085op/s] or [-0.034%; +0.034%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.912µs; 3.913µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/ throughput [255586191.363op/s; 255633701.892op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [66.226µs; 66.267µs] or [-0.031%; +0.031%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15090663.088op/s; 15099958.183op/s] or [-0.031%; +0.031%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [59.624µs; 59.637µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [16768115.422op/s; 16771644.064op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.913µs; 3.913µs] or [-0.012%; +0.012%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255527680.531op/s; 255587432.985op/s] or [-0.012%; +0.012%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [56.471µs; 56.506µs] or [-0.031%; +0.031%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [17697314.528op/s; 17708218.774op/s] or [-0.031%; +0.031%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [51.812µs; 51.821µs] or [-0.008%; +0.008%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [19297314.273op/s; 19300504.640op/s] or [-0.008%; +0.008%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [6.041µs; 6.044µs] or [-0.030%; +0.030%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [165449214.180op/s; 165547979.980op/s] or [-0.030%; +0.030%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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 6.014ms 6.029ms ± 0.014ms 6.028ms ± 0.003ms 6.031ms 6.037ms 6.072ms 6.172ms 2.40% 7.529 68.457 0.23% 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 [6.027ms; 6.031ms] or [-0.032%; +0.032%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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.080µs 32.872µs ± 1.043µs 32.241µs ± 0.104µs 34.067µs 34.869µs 35.119µs 35.421µs 9.86% 1.010 -0.742 3.17% 0.074µ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 [32.727µs; 33.016µs] or [-0.440%; +0.440%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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 208.646µs 209.061µs ± 0.160µs 209.067µs ± 0.107µs 209.169µs 209.319µs 209.410µs 209.413µs 0.17% -0.185 -0.184 0.08% 0.011µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 4775254.631op/s 4783297.742op/s ± 3650.646op/s 4783154.050op/s ± 2457.212op/s 4785717.823op/s 4789420.458op/s 4791997.123op/s 4792801.851op/s 0.20% 0.189 -0.182 0.08% 258.140op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 18.599µs 18.654µs ± 0.031µs 18.650µs ± 0.024µs 18.677µs 18.713µs 18.727µs 18.758µs 0.58% 0.459 -0.050 0.17% 0.002µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 53311093.270op/s 53607386.393op/s ± 89791.536op/s 53619144.579op/s ± 68304.068op/s 53674667.861op/s 53742602.991op/s 53756058.835op/s 53765155.623op/s 0.27% -0.450 -0.066 0.17% 6349.220op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 10.837µs 10.900µs ± 0.029µs 10.896µs ± 0.017µs 10.917µs 10.947µs 10.985µs 10.992µs 0.88% 0.629 0.811 0.26% 0.002µs 1 200
normalization/normalize_name/normalize_name/good throughput 90978692.790op/s 91747905.260op/s ± 241231.064op/s 91779423.023op/s ± 143654.039op/s 91905185.665op/s 92137617.193op/s 92245188.942op/s 92276394.775op/s 0.54% -0.610 0.779 0.26% 17057.612op/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 [209.039µs; 209.083µs] or [-0.011%; +0.011%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [4782791.798op/s; 4783803.687op/s] or [-0.011%; +0.011%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [18.650µs; 18.659µs] or [-0.023%; +0.023%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [53594942.149op/s; 53619830.636op/s] or [-0.023%; +0.023%] None None None
normalization/normalize_name/normalize_name/good execution_time [10.896µs; 10.903µs] or [-0.036%; +0.036%] None None None
normalization/normalize_name/normalize_name/good throughput [91714472.955op/s; 91781337.566op/s] or [-0.036%; +0.036%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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 504.121µs 505.174µs ± 0.393µs 505.186µs ± 0.227µs 505.395µs 505.732µs 506.286µs 506.688µs 0.30% 0.354 1.505 0.08% 0.028µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 1973602.843op/s 1979515.757op/s ± 1541.160op/s 1979469.057op/s ± 887.640op/s 1980420.354op/s 1981977.471op/s 1983329.177op/s 1983649.220op/s 0.21% -0.346 1.493 0.08% 108.976op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 453.615µs 455.018µs ± 0.563µs 455.041µs ± 0.434µs 455.447µs 455.984µs 456.219µs 456.311µs 0.28% 0.013 -0.558 0.12% 0.040µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2191488.834op/s 2197718.037op/s ± 2720.284op/s 2197605.064op/s ± 2092.345op/s 2199884.709op/s 2201594.212op/s 2203514.378op/s 2204513.916op/s 0.31% -0.007 -0.557 0.12% 192.353op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 177.269µs 177.634µs ± 0.122µs 177.632µs ± 0.067µs 177.700µs 177.830µs 177.929µs 177.992µs 0.20% 0.040 0.654 0.07% 0.009µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 5618226.953op/s 5629564.857op/s ± 3854.546op/s 5629626.721op/s ± 2137.317op/s 5631657.332op/s 5636041.861op/s 5639232.415op/s 5641145.802op/s 0.20% -0.035 0.655 0.07% 272.558op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 37.869µs 37.964µs ± 0.041µs 37.962µs ± 0.022µs 37.986µs 38.028µs 38.091µs 38.152µs 0.50% 0.799 2.785 0.11% 0.003µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 26210802.079op/s 26340828.526op/s ± 28205.895op/s 26342462.883op/s ± 15429.817op/s 26356480.180op/s 26387379.462op/s 26399694.792op/s 26406835.342op/s 0.24% -0.785 2.742 0.11% 1994.458op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 48.163µs 48.314µs ± 0.114µs 48.306µs ± 0.029µs 48.337µs 48.371µs 48.465µs 49.780µs 3.05% 10.633 134.223 0.24% 0.008µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 20088246.755op/s 20698184.408op/s ± 47762.584op/s 20701481.469op/s ± 12367.125op/s 20713013.722op/s 20733610.524op/s 20749034.560op/s 20762610.691op/s 0.30% -10.469 131.445 0.23% 3377.325op/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 [505.120µs; 505.229µs] or [-0.011%; +0.011%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [1979302.167op/s; 1979729.347op/s] or [-0.011%; +0.011%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [454.940µs; 455.096µs] or [-0.017%; +0.017%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2197341.032op/s; 2198095.043op/s] or [-0.017%; +0.017%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [177.617µs; 177.651µs] or [-0.009%; +0.009%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [5629030.654op/s; 5630099.060op/s] or [-0.009%; +0.009%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [37.958µs; 37.970µs] or [-0.015%; +0.015%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [26336919.460op/s; 26344737.591op/s] or [-0.015%; +0.015%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [48.298µs; 48.330µs] or [-0.033%; +0.033%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [20691564.973op/s; 20704803.843op/s] or [-0.032%; +0.032%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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.657ns 254.460ns ± 13.019ns 247.822ns ± 3.344ns 259.806ns 283.043ns 291.958ns 304.033ns 22.68% 1.594 1.887 5.10% 0.921ns 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 [252.656ns; 256.264ns] or [-0.709%; +0.709%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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.921µs 4.992µs ± 0.054µs 5.000µs ± 0.053µs 5.021µs 5.097µs 5.099µs 5.104µs 2.10% 0.375 -1.001 1.09% 0.004µ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 [4.985µs; 5.000µs] or [-0.151%; +0.151%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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.751µs 25.928µs ± 10.579µs 18.095µs ± 0.183µs 34.408µs 44.452µs 47.392µs 85.561µs 372.83% 1.534 4.297 40.70% 0.748µ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.462µs; 27.394µs] or [-5.655%; +5.655%] None None None

Group 13

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 0d78dd1 1744141374 levi/rawtable-migration
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 146.258µs 147.122µs ± 0.266µs 147.089µs ± 0.132µs 147.218µs 147.724µs 147.966µs 148.242µs 0.78% 1.092 2.945 0.18% 0.019µ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 [147.086µs; 147.159µs] or [-0.025%; +0.025%] None None None

Baseline

Omitted due to size.

Copy link
Copy Markdown
Contributor

@paullegranddc paullegranddc left a comment

Choose a reason for hiding this comment

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

LGTM other than a nit

Comment thread ddtelemetry/src/worker/store.rs
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 8, 2025

Codecov Report

Attention: Patch coverage is 64.28571% with 5 lines in your changes missing coverage. Please review.

Project coverage is 71.56%. Comparing base (b14e541) to head (0d78dd1).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1009      +/-   ##
==========================================
+ Coverage   71.47%   71.56%   +0.09%     
==========================================
  Files         337      337              
  Lines       50509    50511       +2     
==========================================
+ Hits        36099    36150      +51     
+ Misses      14410    14361      -49     
Components Coverage Δ
crashtracker 42.69% <ø> (ø)
crashtracker-ffi 6.30% <ø> (ø)
datadog-alloc 98.73% <ø> (ø)
data-pipeline 90.93% <ø> (+0.18%) ⬆️
data-pipeline-ffi 90.35% <ø> (ø)
ddcommon 79.95% <ø> (ø)
ddcommon-ffi 66.37% <ø> (ø)
ddtelemetry 60.29% <64.28%> (+0.01%) ⬆️
ddtelemetry-ffi 21.43% <ø> (ø)
dogstatsd-client 82.57% <ø> (ø)
ipc 82.52% <ø> (ø)
profiling 77.57% <ø> (-0.02%) ⬇️
profiling-ffi 62.28% <ø> (ø)
serverless 0.00% <ø> (ø)
sidecar 41.65% <ø> (+0.69%) ⬆️
sidecar-ffi 6.02% <ø> (+5.44%) ⬆️
spawn-worker 54.37% <ø> (ø)
tinybytes 91.59% <ø> (ø)
trace-mini-agent 73.82% <ø> (ø)
trace-normalization 98.24% <ø> (ø)
trace-obfuscation 96.00% <ø> (ø)
trace-protobuf 78.50% <ø> (ø)
trace-utils 92.88% <ø> (-0.18%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@morrisonlevi morrisonlevi enabled auto-merge (squash) April 8, 2025 17:53
@r1viollet
Copy link
Copy Markdown
Contributor

r1viollet commented Apr 8, 2025

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 7.78 MB 7.78 MB --.03% (-3.10 KB) 💪
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so.debug 23.99 MB 23.99 MB --.02% (-7.09 KB) 💪
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 77.63 MB 77.61 MB --.03% (-25.68 KB) 💪
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 7.71 MB 7.71 MB -0% (-448 B) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so.debug 22.56 MB 22.58 MB +.09% (+21.64 KB) 🔍
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 71.86 MB 71.92 MB +.08% (+61.40 KB) 🔍
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 16.85 MB 16.89 MB +.21% (+37.00 KB) 🔍
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 61.83 KB 61.83 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 113.04 MB 113.04 MB 0% (0 B) 👌
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 630.61 MB 631.14 MB +.08% (+542.54 KB) 🔍
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 5.04 MB 5.05 MB +.07% (+4.00 KB) 🔍
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 61.83 KB 61.83 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 16.06 MB 16.05 MB --.04% (-8.00 KB) 💪
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 26.71 MB 26.71 MB -0% (-1.30 KB) 👌
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 14.25 MB 14.29 MB +.29% (+42.50 KB) 🔍
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 62.78 KB 62.78 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 115.01 MB 115.04 MB +.02% (+24.00 KB) 🔍
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 622.55 MB 623.12 MB +.09% (+581.27 KB) 🔍
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 3.81 MB 3.82 MB +.14% (+5.50 KB) 🔍
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 62.78 KB 62.78 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 16.68 MB 16.68 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 24.61 MB 24.61 MB +.01% (+4.83 KB) 🔍
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 66.92 MB 66.88 MB --.06% (-44.27 KB) 💪
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 8.25 MB 8.24 MB --.06% (-5.45 KB) 💪
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so.debug 23.15 MB 23.13 MB --.06% (-15.46 KB) 💪
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 67.84 MB 67.82 MB --.02% (-17.51 KB) 💪
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 8.13 MB 8.12 MB --.12% (-10.71 KB) 💪
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so.debug 20.77 MB 20.77 MB --.02% (-4.64 KB) 💪

@morrisonlevi morrisonlevi disabled auto-merge April 8, 2025 22:51
@morrisonlevi
Copy link
Copy Markdown
Contributor Author

morrisonlevi commented Apr 8, 2025

I'm going to force merge this. The failing job is getting stuck uploading to GHA (for hours):

#77 exporting to GitHub Actions Cache
#77 preparing build cache for export

I've seen this in other PRs, so not going to block here.

@morrisonlevi morrisonlevi merged commit 2e72638 into main Apr 8, 2025
33 of 35 checks passed
@morrisonlevi morrisonlevi deleted the levi/rawtable-migration branch April 8, 2025 22:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file telemetry

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants