Skip to content

test(crashtracker): pre-build artifacts for bin_tests to improve test execution time on CI#1521

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 5 commits intomainfrom
ekump/speed-up-bin-tests-maybe
Feb 6, 2026
Merged

test(crashtracker): pre-build artifacts for bin_tests to improve test execution time on CI#1521
gh-worker-dd-mergequeue-cf854d[bot] merged 5 commits intomainfrom
ekump/speed-up-bin-tests-maybe

Conversation

@ekump
Copy link
Copy Markdown
Contributor

@ekump ekump commented Feb 5, 2026

What does this PR do?

Pre-build the binary artifacts used in crashtracker bin_tests.

bin_tests generates binaries that are used to test crashtracker against. This PR introduces a script that builds all of the necessary binaries prior to the tests executing. Setup-scripts have been enabled for nextest. When nextest runs, if it encounters a test in the bin_tests package it will kickoff the prebuild script prior to executing any of the tests in that package.

The previous implementation would kick off multiple cargo builds as nextest runs tests in parallel, leading to file lock contention within cargo, resulting in job timeouts on CI.

Artifacts are now defined in a separate file.

Motivation

incident 49170

Additional Notes

On Gitlab total execution time of build jobs like build_rust_on_alpine_arm went from ~65 minutes to ~15 minutes

How to test the change?

cargo nextest run -p bin_tests

@datadog-datadog-prod-us1
Copy link
Copy Markdown
Contributor

datadog-datadog-prod-us1 Bot commented Feb 5, 2026

✅ Tests

🎉 All green!

❄️ No new flaky tests detected
🧪 All tests passed

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

@pr-commenter
Copy link
Copy Markdown

pr-commenter Bot commented Feb 5, 2026

Benchmarks

Comparison

Benchmark execution time: 2026-02-06 17:39:49

Comparing candidate commit 30532bd in PR branch ekump/speed-up-bin-tests-maybe with baseline commit f483c69 in branch main.

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

scenario:profile_add_sample2_frames_x1000

  • 🟩 execution_time [-33.793µs; -33.607µs] or [-5.981%; -5.948%]

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 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.495µs 25.227µs ± 9.431µs 17.630µs ± 0.110µs 34.203µs 42.134µs 44.232µs 48.386µs 174.46% 0.654 -1.131 37.29% 0.667µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
two way interface execution_time [23.919µs; 26.534µs] or [-5.181%; +5.181%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.616ms 10.644ms ± 0.013ms 10.645ms ± 0.008ms 10.651ms 10.669ms 10.680ms 10.687ms 0.40% 0.407 0.327 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 [10.643ms; 10.646ms] or [-0.017%; +0.017%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.446µs 2.479µs ± 0.029µs 2.468µs ± 0.011µs 2.489µs 2.549µs 2.555µs 2.591µs 4.99% 1.424 1.481 1.15% 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.475µs; 2.483µs] or [-0.160%; +0.160%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.246µs 3.227µs ± 1.435µs 3.008µs ± 0.029µs 3.037µs 3.653µs 14.267µs 14.860µs 394.05% 7.326 54.872 44.35% 0.101µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
write only interface execution_time [3.028µs; 3.426µs] or [-6.161%; +6.161%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 530.504µs 531.286µs ± 0.528µs 531.166µs ± 0.268µs 531.570µs 531.982µs 532.460µs 535.994µs 0.91% 3.764 29.865 0.10% 0.037µ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 [531.213µs; 531.360µs] or [-0.014%; +0.014%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.091µs 146.088µs ± 1.969µs 145.738µs ± 0.559µs 146.341µs 147.875µs 153.495µs 166.338µs 14.13% 6.584 58.573 1.34% 0.139µ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.815µs; 146.361µs] or [-0.187%; +0.187%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 5.004µs 5.086µs ± 0.046µs 5.073µs ± 0.030µs 5.114µs 5.167µs 5.170µs 5.171µs 1.94% 0.616 -0.983 0.90% 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.079µs; 5.092µs] or [-0.125%; +0.125%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.941ms 3.946ms ± 0.007ms 3.945ms ± 0.001ms 3.946ms 3.949ms 3.955ms 4.041ms 2.44% 11.700 151.615 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_frames_x1000 execution_time [3.945ms; 3.947ms] or [-0.025%; +0.025%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 161.110µs 161.564µs ± 0.362µs 161.496µs ± 0.137µs 161.646µs 162.064µs 162.627µs 164.910µs 2.11% 4.690 36.414 0.22% 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 [161.514µs; 161.614µs] or [-0.031%; +0.031%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.826µs 206.475µs ± 0.332µs 206.422µs ± 0.200µs 206.655µs 207.079µs 207.481µs 207.702µs 0.62% 0.853 1.053 0.16% 0.023µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 4814582.616op/s 4843214.724op/s ± 7768.160op/s 4844434.105op/s ± 4696.330op/s 4848387.010op/s 4854009.530op/s 4856315.746op/s 4858468.863op/s 0.29% -0.842 1.024 0.16% 549.292op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 18.583µs 18.658µs ± 0.063µs 18.640µs ± 0.028µs 18.681µs 18.778µs 18.901µs 18.971µs 1.78% 1.908 4.787 0.34% 0.004µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 52712151.893op/s 53597466.561op/s ± 180552.994op/s 53648007.727op/s ± 80341.286op/s 53716547.792op/s 53788531.393op/s 53799556.767op/s 53812550.820op/s 0.31% -1.877 4.611 0.34% 12767.025op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 10.807µs 10.881µs ± 0.033µs 10.881µs ± 0.019µs 10.898µs 10.933µs 10.958µs 11.098µs 1.99% 1.441 8.196 0.30% 0.002µs 1 200
normalization/normalize_name/normalize_name/good throughput 90106387.442op/s 91901503.027op/s ± 278221.011op/s 91900577.610op/s ± 163716.189op/s 92086241.971op/s 92320967.579op/s 92418352.180op/s 92535166.895op/s 0.69% -1.369 7.681 0.30% 19673.196op/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.429µs; 206.521µs] or [-0.022%; +0.022%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [4842138.132op/s; 4844291.317op/s] or [-0.022%; +0.022%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [18.649µs; 18.667µs] or [-0.047%; +0.047%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [53572443.653op/s; 53622489.470op/s] or [-0.047%; +0.047%] None None None
normalization/normalize_name/normalize_name/good execution_time [10.877µs; 10.886µs] or [-0.042%; +0.042%] None None None
normalization/normalize_name/normalize_name/good throughput [91862944.271op/s; 91940061.784op/s] or [-0.042%; +0.042%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 84.292µs 84.515µs ± 0.200µs 84.505µs ± 0.061µs 84.561µs 84.692µs 84.845µs 86.948µs 2.89% 9.160 108.764 0.24% 0.014µ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 [84.487µs; 84.542µs] or [-0.033%; +0.033%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 13.977ms 14.043ms ± 0.025ms 14.039ms ± 0.012ms 14.054ms 14.071ms 14.137ms 14.210ms 1.22% 2.384 11.485 0.18% 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.040ms; 14.047ms] 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 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.894µs 3.912µs ± 0.002µs 3.912µs ± 0.001µs 3.913µs 3.915µs 3.917µs 3.918µs 0.16% -1.980 16.733 0.06% 0.000µs 1 200
credit_card/is_card_number/ throughput 255241411.341op/s 255643436.591op/s ± 147731.608op/s 255637808.848op/s ± 75066.264op/s 255730051.518op/s 255835753.930op/s 255894057.332op/s 256788984.355op/s 0.45% 2.006 16.957 0.06% 10446.202op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 77.041µs 77.523µs ± 0.461µs 77.375µs ± 0.253µs 77.713µs 78.516µs 79.038µs 79.338µs 2.54% 1.458 1.988 0.59% 0.033µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 12604321.524op/s 12899774.794op/s ± 76098.636op/s 12924060.076op/s ± 42286.126op/s 12958863.697op/s 12973216.228op/s 12977086.763op/s 12980053.180op/s 0.43% -1.426 1.855 0.59% 5380.986op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 70.611µs 71.052µs ± 0.440µs 70.930µs ± 0.226µs 71.232µs 72.093µs 72.362µs 72.836µs 2.69% 1.497 1.877 0.62% 0.031µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 13729402.245op/s 14074765.913op/s ± 86307.863op/s 14098499.954op/s ± 45145.925op/s 14140577.451op/s 14151623.212op/s 14156263.291op/s 14162161.978op/s 0.45% -1.467 1.750 0.61% 6102.888op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.894µs 3.912µs ± 0.003µs 3.912µs ± 0.001µs 3.913µs 3.916µs 3.918µs 3.920µs 0.21% -1.209 11.503 0.06% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 255104865.858op/s 255635547.718op/s ± 165802.056op/s 255648857.446op/s ± 75580.201op/s 255716596.007op/s 255847602.319op/s 255908444.119op/s 256804516.224op/s 0.45% 1.233 11.670 0.06% 11723.976op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 67.422µs 67.691µs ± 0.300µs 67.545µs ± 0.099µs 67.804µs 68.262µs 68.847µs 69.153µs 2.38% 1.931 4.532 0.44% 0.021µs 1 200
credit_card/is_card_number/378282246310005 throughput 14460684.379op/s 14773261.624op/s ± 65018.651op/s 14804917.454op/s ± 21796.578op/s 14819429.013op/s 14826943.448op/s 14831221.754op/s 14831909.370op/s 0.18% -1.894 4.321 0.44% 4597.513op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 44.715µs 45.193µs ± 0.151µs 45.199µs ± 0.104µs 45.304µs 45.427µs 45.516µs 45.548µs 0.77% -0.209 -0.027 0.33% 0.011µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 21954674.081op/s 22127713.542op/s ± 74130.949op/s 22124423.021op/s ± 50779.167op/s 22174256.245op/s 22248147.037op/s 22321084.238op/s 22363997.430op/s 1.08% 0.229 -0.006 0.33% 5241.850op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 6.028µs 6.036µs ± 0.007µs 6.034µs ± 0.002µs 6.037µs 6.046µs 6.049µs 6.103µs 1.13% 5.734 53.735 0.11% 0.000µs 1 200
credit_card/is_card_number/x371413321323331 throughput 163865152.725op/s 165681921.936op/s ± 177984.984op/s 165717632.357op/s ± 63874.122op/s 165776364.884op/s 165837436.117op/s 165873158.980op/s 165886622.450op/s 0.10% -5.661 52.690 0.11% 12585.439op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 3.898µs 3.913µs ± 0.003µs 3.913µs ± 0.002µs 3.914µs 3.917µs 3.920µs 3.925µs 0.29% -0.072 4.408 0.07% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 254796118.247op/s 255554733.284op/s ± 183987.325op/s 255547472.219op/s ± 108322.251op/s 255683634.117op/s 255795180.698op/s 255881198.211op/s 256529509.023op/s 0.38% 0.086 4.441 0.07% 13009.869op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 65.443µs 65.789µs ± 0.077µs 65.800µs ± 0.051µs 65.837µs 65.897µs 65.927µs 65.933µs 0.20% -0.871 1.648 0.12% 0.005µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 15166937.425op/s 15200218.171op/s ± 17778.352op/s 15197520.083op/s ± 11667.531op/s 15211659.807op/s 15231392.406op/s 15252967.141op/s 15280363.205op/s 0.55% 0.881 1.685 0.12% 1257.119op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 52.951µs 53.011µs ± 0.027µs 53.007µs ± 0.018µs 53.030µs 53.057µs 53.086µs 53.095µs 0.17% 0.451 0.029 0.05% 0.002µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 18834163.299op/s 18863939.749op/s ± 9631.902op/s 18865395.206op/s ± 6554.472op/s 18870660.840op/s 18878720.944op/s 18881831.902op/s 18885526.133op/s 0.11% -0.448 0.025 0.05% 681.078op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.900µs 3.912µs ± 0.003µs 3.912µs ± 0.002µs 3.914µs 3.917µs 3.922µs 3.924µs 0.30% 0.665 3.422 0.07% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 254866738.685op/s 255601147.524op/s ± 189425.795op/s 255623287.452op/s ± 104049.801op/s 255722906.380op/s 255826691.775op/s 255930006.600op/s 256432242.268op/s 0.32% -0.654 3.424 0.07% 13394.426op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 49.753µs 49.817µs ± 0.029µs 49.817µs ± 0.018µs 49.833µs 49.869µs 49.899µs 49.923µs 0.21% 0.512 1.146 0.06% 0.002µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 20030653.876op/s 20073559.225op/s ± 11670.175op/s 20073491.951op/s ± 7216.337op/s 20080974.281op/s 20090897.618op/s 20098392.249op/s 20099421.137op/s 0.13% -0.506 1.135 0.06% 825.206op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 44.756µs 45.198µs ± 0.142µs 45.204µs ± 0.100µs 45.304µs 45.429µs 45.481µs 45.516µs 0.69% -0.178 -0.166 0.31% 0.010µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 21970496.197op/s 22125240.419op/s ± 69686.134op/s 22121978.097op/s ± 49161.845op/s 22170198.877op/s 22239983.316op/s 22284978.237op/s 22343134.589op/s 1.00% 0.195 -0.150 0.31% 4927.554op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 6.027µs 6.035µs ± 0.006µs 6.034µs ± 0.002µs 6.036µs 6.041µs 6.048µs 6.100µs 1.10% 7.253 77.263 0.10% 0.000µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 163931849.042op/s 165710382.340op/s ± 159311.256op/s 165727701.291op/s ± 59052.348op/s 165785158.087op/s 165853454.569op/s 165879093.312op/s 165926784.656op/s 0.12% -7.176 76.088 0.10% 11265.007op/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.008%; +0.008%] None None None
credit_card/is_card_number/ throughput [255622962.411op/s; 255663910.771op/s] or [-0.008%; +0.008%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [77.460µs; 77.587µs] or [-0.082%; +0.082%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12889228.255op/s; 12910321.333op/s] or [-0.082%; +0.082%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [70.991µs; 71.113µs] or [-0.086%; +0.086%] None None None
credit_card/is_card_number/ 378282246310005 throughput [14062804.473op/s; 14086727.352op/s] or [-0.085%; +0.085%] None None None
credit_card/is_card_number/37828224631 execution_time [3.911µs; 3.912µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/37828224631 throughput [255612569.148op/s; 255658526.288op/s] or [-0.009%; +0.009%] None None None
credit_card/is_card_number/378282246310005 execution_time [67.650µs; 67.733µs] or [-0.062%; +0.062%] None None None
credit_card/is_card_number/378282246310005 throughput [14764250.664op/s; 14782272.584op/s] or [-0.061%; +0.061%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [45.172µs; 45.214µs] or [-0.046%; +0.046%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [22117439.705op/s; 22137987.378op/s] or [-0.046%; +0.046%] None None None
credit_card/is_card_number/x371413321323331 execution_time [6.035µs; 6.037µs] or [-0.015%; +0.015%] None None None
credit_card/is_card_number/x371413321323331 throughput [165657254.929op/s; 165706588.943op/s] or [-0.015%; +0.015%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.913µs; 3.913µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/ throughput [255529234.410op/s; 255580232.158op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [65.778µs; 65.799µs] or [-0.016%; +0.016%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15197754.262op/s; 15202682.079op/s] or [-0.016%; +0.016%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [53.007µs; 53.015µs] or [-0.007%; +0.007%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [18862604.860op/s; 18865274.638op/s] or [-0.007%; +0.007%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.912µs; 3.913µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255574894.930op/s; 255627400.117op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [49.813µs; 49.821µs] or [-0.008%; +0.008%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [20071941.851op/s; 20075176.599op/s] or [-0.008%; +0.008%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [45.178µs; 45.217µs] or [-0.044%; +0.044%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [22115582.591op/s; 22134898.247op/s] or [-0.044%; +0.044%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [6.034µs; 6.035µs] or [-0.013%; +0.013%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [165688303.332op/s; 165732461.347op/s] or [-0.013%; +0.013%] None None None

Group 14

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 188.944ns 191.475ns ± 2.039ns 191.158ns ± 1.486ns 192.595ns 195.188ns 197.022ns 198.868ns 4.03% 0.903 0.504 1.06% 0.144ns 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.193ns; 191.758ns] or [-0.148%; +0.148%] None None None

Group 15

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 33.068µs 33.672µs ± 0.928µs 33.235µs ± 0.051µs 33.454µs 35.621µs 35.655µs 37.194µs 11.91% 1.738 1.348 2.75% 0.066µ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.544µs; 33.801µs] or [-0.382%; +0.382%] None None None

Group 16

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 241.819ns 252.723ns ± 12.754ns 247.325ns ± 3.503ns 255.523ns 286.484ns 288.817ns 289.857ns 17.20% 1.704 1.805 5.03% 0.902ns 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 [250.955ns; 254.490ns] or [-0.699%; +0.699%] None None None

Group 17

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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.474ms 48.857ms ± 1.156ms 48.721ms ± 0.067ms 48.793ms 48.949ms 51.086ms 63.724ms 30.79% 11.261 137.607 2.36% 0.082ms 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.697ms; 49.017ms] or [-0.328%; +0.328%] None None None

Group 18

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 9.477ms 9.866ms ± 0.110ms 9.885ms ± 0.033ms 9.915ms 9.990ms 10.041ms 10.604ms 7.27% 0.559 10.365 1.11% 0.008ms 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 [9.851ms; 9.881ms] or [-0.154%; +0.154%] None None None

Group 19

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 30532bd 1770398674 ekump/speed-up-bin-tests-maybe
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 534.989µs 536.801µs ± 1.488µs 536.332µs ± 0.577µs 537.362µs 539.331µs 541.907µs 546.377µs 1.87% 2.806 12.797 0.28% 0.105µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 1830237.899op/s 1862900.340op/s ± 5126.195op/s 1864517.879op/s ± 2005.231op/s 1866102.738op/s 1867570.735op/s 1868499.791op/s 1869197.105op/s 0.25% -2.750 12.320 0.27% 362.477op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 381.289µs 381.986µs ± 0.258µs 381.964µs ± 0.176µs 382.150µs 382.436µs 382.546µs 382.729µs 0.20% 0.283 -0.066 0.07% 0.018µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2612815.405op/s 2617897.966op/s ± 1770.103op/s 2618044.496op/s ± 1209.125op/s 2619243.032op/s 2620402.481op/s 2621509.357op/s 2622682.233op/s 0.18% -0.279 -0.068 0.07% 125.165op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 189.363µs 190.019µs ± 0.471µs 190.022µs ± 0.135µs 190.152µs 190.323µs 190.633µs 195.680µs 2.98% 8.601 102.187 0.25% 0.033µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 5110375.596op/s 5262651.075op/s ± 12789.450op/s 5262548.902op/s ± 3726.519op/s 5266725.733op/s 5276937.469op/s 5278257.116op/s 5280875.553op/s 0.35% -8.378 98.757 0.24% 904.351op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 36.436µs 36.576µs ± 0.054µs 36.571µs ± 0.033µs 36.607µs 36.657µs 36.737µs 36.841µs 0.74% 0.962 2.937 0.15% 0.004µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 27143777.338op/s 27340444.316op/s ± 39982.084op/s 27343931.645op/s ± 24848.250op/s 27367306.890op/s 27394524.423op/s 27414271.847op/s 27445284.456op/s 0.37% -0.945 2.868 0.15% 2827.160op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 45.945µs 46.061µs ± 0.056µs 46.061µs ± 0.042µs 46.096µs 46.150µs 46.188µs 46.285µs 0.49% 0.444 0.534 0.12% 0.004µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 21605043.481op/s 21710226.726op/s ± 26273.835op/s 21710107.588op/s ± 19931.819op/s 21730561.561op/s 21749920.288op/s 21760270.493op/s 21765332.952op/s 0.25% -0.435 0.512 0.12% 1857.841op/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.595µs; 537.008µs] or [-0.038%; +0.038%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [1862189.899op/s; 1863610.782op/s] or [-0.038%; +0.038%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [381.950µs; 382.022µs] or [-0.009%; +0.009%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2617652.647op/s; 2618143.285op/s] or [-0.009%; +0.009%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [189.954µs; 190.085µs] or [-0.034%; +0.034%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [5260878.580op/s; 5264423.570op/s] or [-0.034%; +0.034%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [36.569µs; 36.583µs] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [27334903.184op/s; 27345985.448op/s] or [-0.020%; +0.020%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [46.054µs; 46.069µs] or [-0.017%; +0.017%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [21706585.425op/s; 21713868.026op/s] or [-0.017%; +0.017%] None None None

Baseline

Omitted due to size.

@ekump ekump force-pushed the ekump/speed-up-bin-tests-maybe branch from 01261a7 to 8a81768 Compare February 6, 2026 15:46
@dd-octo-sts
Copy link
Copy Markdown
Contributor

dd-octo-sts Bot commented Feb 6, 2026

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 91.69 MB 91.69 MB 0% (0 B) 👌
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 8.38 MB 8.38 MB 0% (0 B) 👌
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 106.40 MB 106.40 MB 0% (0 B) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 10.76 MB 10.76 MB 0% (0 B) 👌
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 25.08 MB 25.08 MB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 75.94 KB 75.94 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 172.52 MB 172.51 MB -0% (-16.00 KB) 👌
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 882.84 MB 882.84 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 9.57 MB 9.57 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 75.94 KB 75.94 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 23.04 MB 23.04 MB 0% (0 B) 👌
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 48.45 MB 48.45 MB 0% (0 B) 👌
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 21.22 MB 21.22 MB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 77.12 KB 77.12 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 176.62 MB 176.62 MB 0% (0 B) 👌
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 866.93 MB 866.93 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 7.24 MB 7.24 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 77.12 KB 77.12 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 24.62 MB 24.62 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 44.15 MB 44.15 MB 0% (0 B) 👌
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 80.18 MB 80.18 MB 0% (0 B) 👌
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 9.88 MB 9.88 MB 0% (0 B) 👌
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 100.31 MB 100.31 MB 0% (0 B) 👌
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 11.44 MB 11.44 MB 0% (0 B) 👌

@ekump ekump changed the title [WIP] use file lock for bin_tests artifact building test(crashtracker): pre-build artifacts for bin_tests to improve test execution time on CI Feb 6, 2026
Copy link
Copy Markdown
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.

🙇

@ekump ekump marked this pull request as ready for review February 6, 2026 17:39
@ekump ekump requested review from a team as code owners February 6, 2026 17:39
@codecov-commenter
Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 53.50318% with 73 lines in your changes missing coverage. Please review.
✅ Project coverage is 71.14%. Comparing base (f483c69) to head (30532bd).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1521      +/-   ##
==========================================
- Coverage   71.20%   71.14%   -0.06%     
==========================================
  Files         424      426       +2     
  Lines       69802    69897      +95     
==========================================
+ Hits        49700    49730      +30     
- Misses      20102    20167      +65     
Components Coverage Δ
libdd-crashtracker 62.37% <ø> (+0.01%) ⬆️
libdd-crashtracker-ffi 16.80% <ø> (ø)
libdd-alloc 98.73% <ø> (ø)
libdd-data-pipeline 86.86% <ø> (ø)
libdd-data-pipeline-ffi 78.68% <ø> (ø)
libdd-common 80.58% <ø> (ø)
libdd-common-ffi 74.54% <ø> (ø)
libdd-telemetry 65.09% <ø> (ø)
libdd-telemetry-ffi 21.17% <ø> (ø)
libdd-dogstatsd-client 83.75% <ø> (ø)
datadog-ipc 82.60% <ø> (ø)
libdd-profiling 81.76% <ø> (+0.02%) ⬆️
libdd-profiling-ffi 64.71% <ø> (ø)
datadog-sidecar 34.39% <ø> (ø)
datdog-sidecar-ffi 7.67% <ø> (ø)
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.37% <ø> (ø)
datadog-tracer-flare 62.06% <ø> (ø)
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.

@ekump
Copy link
Copy Markdown
Contributor Author

ekump commented Feb 6, 2026

/merge

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

gh-worker-devflow-routing-ef8351 Bot commented Feb 6, 2026

View all feedbacks in Devflow UI.

2026-02-06 18:07:07 UTC ℹ️ Start processing command /merge


2026-02-06 18:07:14 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-06 18:13:04 UTC ⚠️ MergeQueue: This merge request was unqueued

[email protected] unqueued this merge request

@ekump
Copy link
Copy Markdown
Contributor Author

ekump commented Feb 6, 2026

/remove

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

gh-worker-devflow-routing-ef8351 Bot commented Feb 6, 2026

View all feedbacks in Devflow UI.

2026-02-06 18:12:57 UTC ℹ️ Start processing command /remove


2026-02-06 18:13:01 UTC ℹ️ Devflow: /remove

@ekump
Copy link
Copy Markdown
Contributor Author

ekump commented Feb 6, 2026

/merge

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

gh-worker-devflow-routing-ef8351 Bot commented Feb 6, 2026

View all feedbacks in Devflow UI.

2026-02-06 18:13:22 UTC ℹ️ Start processing command /merge


2026-02-06 18:13:28 UTC ℹ️ MergeQueue: pull request added to the queue

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


2026-02-06 18:27:36 UTC ⚠️ MergeQueue: This merge request was unqueued

[email protected] unqueued this merge request

@ekump
Copy link
Copy Markdown
Contributor Author

ekump commented Feb 6, 2026

/merge --priority incident

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

gh-worker-devflow-routing-ef8351 Bot commented Feb 6, 2026

View all feedbacks in Devflow UI.

2026-02-06 18:27:04 UTC ℹ️ Start processing command /merge --priority incident


2026-02-06 18:27:07 UTC ❌ MergeQueue

PR already in the queue with status queued

@ekump
Copy link
Copy Markdown
Contributor Author

ekump commented Feb 6, 2026

/remove

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

gh-worker-devflow-routing-ef8351 Bot commented Feb 6, 2026

View all feedbacks in Devflow UI.

2026-02-06 18:27:28 UTC ℹ️ Start processing command /remove


2026-02-06 18:27:31 UTC ℹ️ Devflow: /remove

@ekump
Copy link
Copy Markdown
Contributor Author

ekump commented Feb 6, 2026

/merge --priority incident

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

gh-worker-devflow-routing-ef8351 Bot commented Feb 6, 2026

View all feedbacks in Devflow UI.

2026-02-06 18:27:41 UTC ℹ️ Start processing command /merge --priority incident


2026-02-06 18:27:46 UTC ℹ️ MergeQueue: pull request added to the queue

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


2026-02-06 19:04:54 UTC ℹ️ MergeQueue: This merge request was merged

@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d Bot merged commit 4bf2627 into main Feb 6, 2026
116 checks passed
@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d Bot deleted the ekump/speed-up-bin-tests-maybe branch February 6, 2026 19:04
gh-worker-dd-mergequeue-cf854d Bot pushed a commit that referenced this pull request Feb 17, 2026
…cripts (#1574)

# What does this PR do?

The script that runs after tests on CI to associate file names to tests in the junit.xml file was not handling the newly added nextest setup scripts, resulting in `prebuild-bin-tests` introduced in #1521 not having a file name, meaning test optimization couldn't associate a codeowner. This PR should fix that. 

# Motivation

What inspired you to submit this pull request?

# Additional Notes

Anything else we should know when reviewing?

# How to test the change?

Describe here in detail how the change can be validated.


Co-authored-by: edmund.kump <[email protected]>
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.

4 participants