Skip to content

Support CompletableFuture on Spring Messaging Spans#10979

Open
mhlidd wants to merge 4 commits intomasterfrom
mhlidd/async_spring_messaging
Open

Support CompletableFuture on Spring Messaging Spans#10979
mhlidd wants to merge 4 commits intomasterfrom
mhlidd/async_spring_messaging

Conversation

@mhlidd
Copy link
Copy Markdown
Contributor

@mhlidd mhlidd commented Mar 26, 2026

What Does This Do

This PR updates the spring-messaging integration to support Async message handlers. Previously, the message handler would finish the span directly after making the async call. Now, we detect if the call is sync/async, and add a whenComplete to the span.

This reuses previously written code to handle async processing in Spring WebMVC Controllers.

Motivation

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

Note: Once your PR is ready to merge, add it to the merge queue by commenting /merge. /merge -c cancels the queue request. /merge -f --reason "reason" skips all merge queue checks; please use this judiciously, as some checks do not run at the PR-level. For more information, see this doc.

@pr-commenter
Copy link
Copy Markdown

pr-commenter bot commented Mar 26, 2026

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/async_spring_messaging
git_commit_date 1774619422 1774628636
git_commit_sha 1abe140 7a58426
release_version 1.61.0-SNAPSHOT~1abe140bde 1.61.0-SNAPSHOT~7a58426997
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1774630500 1774630500
ci_job_id 1546264068 1546264068
ci_pipeline_id 104803474 104803474
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-2-qa7lqpog 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-2-qa7lqpog 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 63 metrics, 8 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.61.0-SNAPSHOT~7a58426997, baseline=1.61.0-SNAPSHOT~1abe140bde

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.062 s) : 0, 1061895
Total [baseline] (8.89 s) : 0, 8890230
Agent [candidate] (1.058 s) : 0, 1058323
Total [candidate] (8.893 s) : 0, 8892614
section iast
Agent [baseline] (1.229 s) : 0, 1229161
Total [baseline] (9.567 s) : 0, 9566673
Agent [candidate] (1.24 s) : 0, 1239935
Total [candidate] (9.588 s) : 0, 9587909
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.062 s -
Agent iast 1.229 s 167.267 ms (15.8%)
Total tracing 8.89 s -
Total iast 9.567 s 676.444 ms (7.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.058 s -
Agent iast 1.24 s 181.612 ms (17.2%)
Total tracing 8.893 s -
Total iast 9.588 s 695.295 ms (7.8%)
gantt
    title insecure-bank - break down per module: candidate=1.61.0-SNAPSHOT~7a58426997, baseline=1.61.0-SNAPSHOT~1abe140bde

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.2 ms) : 0, 1200
crashtracking [candidate] (1.197 ms) : 0, 1197
BytebuddyAgent [baseline] (631.259 ms) : 0, 631259
BytebuddyAgent [candidate] (629.995 ms) : 0, 629995
AgentMeter [baseline] (29.49 ms) : 0, 29490
AgentMeter [candidate] (29.409 ms) : 0, 29409
GlobalTracer [baseline] (258.258 ms) : 0, 258258
GlobalTracer [candidate] (257.439 ms) : 0, 257439
AppSec [baseline] (31.868 ms) : 0, 31868
AppSec [candidate] (32.095 ms) : 0, 32095
Debugger [baseline] (59.95 ms) : 0, 59950
Debugger [candidate] (59.845 ms) : 0, 59845
Remote Config [baseline] (590.15 µs) : 0, 590
Remote Config [candidate] (601.277 µs) : 0, 601
Telemetry [baseline] (8.045 ms) : 0, 8045
Telemetry [candidate] (8.088 ms) : 0, 8088
Flare Poller [baseline] (4.962 ms) : 0, 4962
Flare Poller [candidate] (3.557 ms) : 0, 3557
section iast
crashtracking [baseline] (1.21 ms) : 0, 1210
crashtracking [candidate] (1.215 ms) : 0, 1215
BytebuddyAgent [baseline] (797.258 ms) : 0, 797258
BytebuddyAgent [candidate] (805.242 ms) : 0, 805242
AgentMeter [baseline] (11.437 ms) : 0, 11437
AgentMeter [candidate] (11.732 ms) : 0, 11732
GlobalTracer [baseline] (247.791 ms) : 0, 247791
GlobalTracer [candidate] (249.786 ms) : 0, 249786
AppSec [baseline] (26.598 ms) : 0, 26598
AppSec [candidate] (26.885 ms) : 0, 26885
Debugger [baseline] (69.383 ms) : 0, 69383
Debugger [candidate] (67.238 ms) : 0, 67238
Remote Config [baseline] (536.906 µs) : 0, 537
Remote Config [candidate] (533.29 µs) : 0, 533
Telemetry [baseline] (9.723 ms) : 0, 9723
Telemetry [candidate] (11.398 ms) : 0, 11398
Flare Poller [baseline] (3.521 ms) : 0, 3521
Flare Poller [candidate] (3.919 ms) : 0, 3919
IAST [baseline] (25.442 ms) : 0, 25442
IAST [candidate] (25.676 ms) : 0, 25676
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.61.0-SNAPSHOT~7a58426997, baseline=1.61.0-SNAPSHOT~1abe140bde

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.061 s) : 0, 1061162
Total [baseline] (11.055 s) : 0, 11054614
Agent [candidate] (1.06 s) : 0, 1060187
Total [candidate] (11.071 s) : 0, 11070749
section appsec
Agent [baseline] (1.252 s) : 0, 1251636
Total [baseline] (11.112 s) : 0, 11111514
Agent [candidate] (1.26 s) : 0, 1259991
Total [candidate] (11.274 s) : 0, 11274106
section iast
Agent [baseline] (1.232 s) : 0, 1232476
Total [baseline] (11.341 s) : 0, 11341382
Agent [candidate] (1.248 s) : 0, 1248344
Total [candidate] (11.349 s) : 0, 11348943
section profiling
Agent [baseline] (1.185 s) : 0, 1184585
Total [baseline] (11.038 s) : 0, 11038178
Agent [candidate] (1.186 s) : 0, 1185975
Total [candidate] (11.184 s) : 0, 11184005
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.061 s -
Agent appsec 1.252 s 190.474 ms (17.9%)
Agent iast 1.232 s 171.314 ms (16.1%)
Agent profiling 1.185 s 123.424 ms (11.6%)
Total tracing 11.055 s -
Total appsec 11.112 s 56.901 ms (0.5%)
Total iast 11.341 s 286.768 ms (2.6%)
Total profiling 11.038 s -16.436 ms (-0.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.06 s -
Agent appsec 1.26 s 199.803 ms (18.8%)
Agent iast 1.248 s 188.157 ms (17.7%)
Agent profiling 1.186 s 125.788 ms (11.9%)
Total tracing 11.071 s -
Total appsec 11.274 s 203.356 ms (1.8%)
Total iast 11.349 s 278.194 ms (2.5%)
Total profiling 11.184 s 113.256 ms (1.0%)
gantt
    title petclinic - break down per module: candidate=1.61.0-SNAPSHOT~7a58426997, baseline=1.61.0-SNAPSHOT~1abe140bde

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.2 ms) : 0, 1200
crashtracking [candidate] (1.186 ms) : 0, 1186
BytebuddyAgent [baseline] (630.513 ms) : 0, 630513
BytebuddyAgent [candidate] (630.986 ms) : 0, 630986
AgentMeter [baseline] (29.466 ms) : 0, 29466
AgentMeter [candidate] (29.464 ms) : 0, 29464
GlobalTracer [baseline] (257.922 ms) : 0, 257922
GlobalTracer [candidate] (257.676 ms) : 0, 257676
AppSec [baseline] (31.773 ms) : 0, 31773
AppSec [candidate] (31.774 ms) : 0, 31774
Debugger [baseline] (60.524 ms) : 0, 60524
Debugger [candidate] (60.301 ms) : 0, 60301
Remote Config [baseline] (603.197 µs) : 0, 603
Remote Config [candidate] (590.373 µs) : 0, 590
Telemetry [baseline] (8.029 ms) : 0, 8029
Telemetry [candidate] (7.952 ms) : 0, 7952
Flare Poller [baseline] (5.032 ms) : 0, 5032
Flare Poller [candidate] (4.223 ms) : 0, 4223
section appsec
crashtracking [baseline] (1.189 ms) : 0, 1189
crashtracking [candidate] (1.191 ms) : 0, 1191
BytebuddyAgent [baseline] (661.299 ms) : 0, 661299
BytebuddyAgent [candidate] (664.867 ms) : 0, 664867
AgentMeter [baseline] (12.249 ms) : 0, 12249
AgentMeter [candidate] (12.24 ms) : 0, 12240
GlobalTracer [baseline] (259.034 ms) : 0, 259034
GlobalTracer [candidate] (260.878 ms) : 0, 260878
IAST [baseline] (24.234 ms) : 0, 24234
IAST [candidate] (24.585 ms) : 0, 24585
AppSec [baseline] (177.931 ms) : 0, 177931
AppSec [candidate] (179.587 ms) : 0, 179587
Debugger [baseline] (66.711 ms) : 0, 66711
Debugger [candidate] (67.246 ms) : 0, 67246
Remote Config [baseline] (640.369 µs) : 0, 640
Remote Config [candidate] (655.857 µs) : 0, 656
Telemetry [baseline] (8.328 ms) : 0, 8328
Telemetry [candidate] (8.596 ms) : 0, 8596
Flare Poller [baseline] (3.61 ms) : 0, 3610
Flare Poller [candidate] (3.691 ms) : 0, 3691
section iast
crashtracking [baseline] (1.195 ms) : 0, 1195
crashtracking [candidate] (1.217 ms) : 0, 1217
BytebuddyAgent [baseline] (799.334 ms) : 0, 799334
BytebuddyAgent [candidate] (810.748 ms) : 0, 810748
AgentMeter [baseline] (11.455 ms) : 0, 11455
AgentMeter [candidate] (12.037 ms) : 0, 12037
GlobalTracer [baseline] (248.576 ms) : 0, 248576
GlobalTracer [candidate] (250.9 ms) : 0, 250900
IAST [baseline] (25.354 ms) : 0, 25354
IAST [candidate] (25.846 ms) : 0, 25846
AppSec [baseline] (26.596 ms) : 0, 26596
AppSec [candidate] (27.041 ms) : 0, 27041
Debugger [baseline] (70.817 ms) : 0, 70817
Debugger [candidate] (70.269 ms) : 0, 70269
Remote Config [baseline] (528.322 µs) : 0, 528
Remote Config [candidate] (533.395 µs) : 0, 533
Telemetry [baseline] (9.172 ms) : 0, 9172
Telemetry [candidate] (9.893 ms) : 0, 9893
Flare Poller [baseline] (3.429 ms) : 0, 3429
Flare Poller [candidate] (3.405 ms) : 0, 3405
section profiling
crashtracking [baseline] (1.17 ms) : 0, 1170
crashtracking [candidate] (1.17 ms) : 0, 1170
BytebuddyAgent [baseline] (684.192 ms) : 0, 684192
BytebuddyAgent [candidate] (683.983 ms) : 0, 683983
AgentMeter [baseline] (8.995 ms) : 0, 8995
AgentMeter [candidate] (8.993 ms) : 0, 8993
GlobalTracer [baseline] (215.004 ms) : 0, 215004
GlobalTracer [candidate] (215.075 ms) : 0, 215075
AppSec [baseline] (32.204 ms) : 0, 32204
AppSec [candidate] (32.382 ms) : 0, 32382
Debugger [baseline] (65.483 ms) : 0, 65483
Debugger [candidate] (66.105 ms) : 0, 66105
Remote Config [baseline] (582.856 µs) : 0, 583
Remote Config [candidate] (573.767 µs) : 0, 574
Telemetry [baseline] (7.705 ms) : 0, 7705
Telemetry [candidate] (7.898 ms) : 0, 7898
Flare Poller [baseline] (4.287 ms) : 0, 4287
Flare Poller [candidate] (3.516 ms) : 0, 3516
ProfilingAgent [baseline] (94.046 ms) : 0, 94046
ProfilingAgent [candidate] (95.294 ms) : 0, 95294
Profiling [baseline] (94.597 ms) : 0, 94597
Profiling [candidate] (95.867 ms) : 0, 95867
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/async_spring_messaging
git_commit_date 1774619422 1774628636
git_commit_sha 1abe140 7a58426
release_version 1.61.0-SNAPSHOT~1abe140bde 1.61.0-SNAPSHOT~7a58426997
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1774630944 1774630944
ci_job_id 1546264069 1546264069
ci_pipeline_id 104803474 104803474
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-1-rxp7citd 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-1-rxp7citd 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 6 performance regressions! Performance is the same for 14 metrics, 16 unstable metrics.

scenario Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p95 Δ mean throughput candidate mean agg_http_req_duration_p50 candidate mean agg_http_req_duration_p95 candidate mean throughput baseline mean agg_http_req_duration_p50 baseline mean agg_http_req_duration_p95 baseline mean throughput
scenario:load:insecure-bank:iast_FULL:high_load worse
[+177.332µs; +374.552µs] or [+3.422%; +7.227%]
worse
[+461.546µs; +997.371µs] or [+3.752%; +8.107%]
unstable
[-112.657op/s; +34.469op/s] or [-14.206%; +4.347%]
5.458ms 13.032ms 753.938op/s 5.182ms 12.303ms 793.031op/s
scenario:load:petclinic:appsec:high_load worse
[+449.381µs; +1028.630µs] or [+2.535%; +5.803%]
unsure
[+269.117µs; +1461.448µs] or [+0.911%; +4.947%]
unstable
[-33.372op/s; +13.560op/s] or [-12.998%; +5.281%]
18.466ms 30.406ms 246.844op/s 17.727ms 29.541ms 256.750op/s
scenario:load:petclinic:profiling:high_load worse
[+0.994ms; +2.219ms] or [+5.356%; +11.951%]
worse
[+1.288ms; +3.462ms] or [+4.275%; +11.491%]
unstable
[-41.181op/s; +4.931op/s] or [-16.676%; +1.997%]
20.171ms 32.507ms 228.812op/s 18.565ms 30.131ms 246.938op/s
scenario:load:petclinic:no_agent:high_load worse
[+0.641ms; +2.192ms] or [+3.657%; +12.514%]
unstable
[+0.301ms; +3.902ms] or [+1.017%; +13.198%]
unstable
[-44.454op/s; +7.079op/s] or [-17.131%; +2.728%]
18.936ms 31.663ms 240.812op/s 17.520ms 29.562ms 259.500op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.61.0-SNAPSHOT~7a58426997, baseline=1.61.0-SNAPSHOT~1abe140bde
    dateFormat X
    axisFormat %s
section baseline
no_agent (17.985 ms) : 17798, 18172
.   : milestone, 17985,
appsec (18.177 ms) : 17993, 18361
.   : milestone, 18177,
code_origins (17.83 ms) : 17652, 18009
.   : milestone, 17830,
iast (17.703 ms) : 17525, 17881
.   : milestone, 17703,
profiling (18.899 ms) : 18709, 19090
.   : milestone, 18899,
tracing (17.799 ms) : 17621, 17977
.   : milestone, 17799,
section candidate
no_agent (19.387 ms) : 19187, 19588
.   : milestone, 19387,
appsec (18.907 ms) : 18713, 19102
.   : milestone, 18907,
code_origins (17.913 ms) : 17737, 18089
.   : milestone, 17913,
iast (17.698 ms) : 17522, 17873
.   : milestone, 17698,
profiling (20.403 ms) : 20187, 20618
.   : milestone, 20403,
tracing (17.724 ms) : 17549, 17898
.   : milestone, 17724,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 17.985 ms [17.798 ms, 18.172 ms] -
appsec 18.177 ms [17.993 ms, 18.361 ms] 191.354 µs (1.1%)
code_origins 17.83 ms [17.652 ms, 18.009 ms] -155.075 µs (-0.9%)
iast 17.703 ms [17.525 ms, 17.881 ms] -282.317 µs (-1.6%)
profiling 18.899 ms [18.709 ms, 19.09 ms] 914.227 µs (5.1%)
tracing 17.799 ms [17.621 ms, 17.977 ms] -185.822 µs (-1.0%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 19.387 ms [19.187 ms, 19.588 ms] -
appsec 18.907 ms [18.713 ms, 19.102 ms] -480.063 µs (-2.5%)
code_origins 17.913 ms [17.737 ms, 18.089 ms] -1.475 ms (-7.6%)
iast 17.698 ms [17.522 ms, 17.873 ms] -1.69 ms (-8.7%)
profiling 20.403 ms [20.187 ms, 20.618 ms] 1.015 ms (5.2%)
tracing 17.724 ms [17.549 ms, 17.898 ms] -1.664 ms (-8.6%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.61.0-SNAPSHOT~7a58426997, baseline=1.61.0-SNAPSHOT~1abe140bde
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.191 ms) : 1179, 1203
.   : milestone, 1191,
iast (3.11 ms) : 3070, 3151
.   : milestone, 3110,
iast_FULL (5.831 ms) : 5773, 5889
.   : milestone, 5831,
iast_GLOBAL (3.528 ms) : 3471, 3584
.   : milestone, 3528,
profiling (2.202 ms) : 2182, 2222
.   : milestone, 2202,
tracing (1.807 ms) : 1792, 1822
.   : milestone, 1807,
section candidate
no_agent (1.178 ms) : 1167, 1189
.   : milestone, 1178,
iast (3.179 ms) : 3137, 3221
.   : milestone, 3179,
iast_FULL (6.135 ms) : 6072, 6198
.   : milestone, 6135,
iast_GLOBAL (3.537 ms) : 3486, 3588
.   : milestone, 3537,
profiling (2.081 ms) : 2062, 2100
.   : milestone, 2081,
tracing (1.848 ms) : 1830, 1865
.   : milestone, 1848,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.191 ms [1.179 ms, 1.203 ms] -
iast 3.11 ms [3.07 ms, 3.151 ms] 1.919 ms (161.1%)
iast_FULL 5.831 ms [5.773 ms, 5.889 ms] 4.64 ms (389.6%)
iast_GLOBAL 3.528 ms [3.471 ms, 3.584 ms] 2.337 ms (196.2%)
profiling 2.202 ms [2.182 ms, 2.222 ms] 1.011 ms (84.9%)
tracing 1.807 ms [1.792 ms, 1.822 ms] 615.753 µs (51.7%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.178 ms [1.167 ms, 1.189 ms] -
iast 3.179 ms [3.137 ms, 3.221 ms] 2.001 ms (169.9%)
iast_FULL 6.135 ms [6.072 ms, 6.198 ms] 4.957 ms (420.8%)
iast_GLOBAL 3.537 ms [3.486 ms, 3.588 ms] 2.359 ms (200.2%)
profiling 2.081 ms [2.062 ms, 2.1 ms] 902.73 µs (76.6%)
tracing 1.848 ms [1.83 ms, 1.865 ms] 669.751 µs (56.9%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/async_spring_messaging
git_commit_date 1774619422 1774628636
git_commit_sha 1abe140 7a58426
release_version 1.61.0-SNAPSHOT~1abe140bde 1.61.0-SNAPSHOT~7a58426997
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1774630676 1774630676
ci_job_id 1546264070 1546264070
ci_pipeline_id 104803474 104803474
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-3-vgs010op 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-3-vgs010op 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

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

scenario Δ mean execution_time candidate mean execution_time baseline mean execution_time
scenario:dacapo:tomcat:appsec better
[-1.389ms; -1.042ms] or [-36.607%; -27.462%]
2.578ms 3.793ms
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.61.0-SNAPSHOT~7a58426997, baseline=1.61.0-SNAPSHOT~1abe140bde
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.471 ms) : 1459, 1482
.   : milestone, 1471,
appsec (3.793 ms) : 3573, 4014
.   : milestone, 3793,
iast (2.247 ms) : 2178, 2316
.   : milestone, 2247,
iast_GLOBAL (2.289 ms) : 2220, 2358
.   : milestone, 2289,
profiling (2.105 ms) : 2048, 2162
.   : milestone, 2105,
tracing (2.056 ms) : 2002, 2109
.   : milestone, 2056,
section candidate
no_agent (1.47 ms) : 1458, 1481
.   : milestone, 1470,
appsec (2.578 ms) : 2520, 2636
.   : milestone, 2578,
iast (2.247 ms) : 2178, 2316
.   : milestone, 2247,
iast_GLOBAL (2.29 ms) : 2221, 2359
.   : milestone, 2290,
profiling (2.097 ms) : 2041, 2154
.   : milestone, 2097,
tracing (2.053 ms) : 2000, 2106
.   : milestone, 2053,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.471 ms [1.459 ms, 1.482 ms] -
appsec 3.793 ms [3.573 ms, 4.014 ms] 2.323 ms (157.9%)
iast 2.247 ms [2.178 ms, 2.316 ms] 776.414 µs (52.8%)
iast_GLOBAL 2.289 ms [2.22 ms, 2.358 ms] 817.878 µs (55.6%)
profiling 2.105 ms [2.048 ms, 2.162 ms] 634.37 µs (43.1%)
tracing 2.056 ms [2.002 ms, 2.109 ms] 584.858 µs (39.8%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.47 ms [1.458 ms, 1.481 ms] -
appsec 2.578 ms [2.52 ms, 2.636 ms] 1.108 ms (75.4%)
iast 2.247 ms [2.178 ms, 2.316 ms] 776.941 µs (52.9%)
iast_GLOBAL 2.29 ms [2.221 ms, 2.359 ms] 820.135 µs (55.8%)
profiling 2.097 ms [2.041 ms, 2.154 ms] 627.547 µs (42.7%)
tracing 2.053 ms [2.0 ms, 2.106 ms] 582.879 µs (39.7%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.61.0-SNAPSHOT~7a58426997, baseline=1.61.0-SNAPSHOT~1abe140bde
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.799 s) : 14799000, 14799000
.   : milestone, 14799000,
appsec (14.728 s) : 14728000, 14728000
.   : milestone, 14728000,
iast (18.318 s) : 18318000, 18318000
.   : milestone, 18318000,
iast_GLOBAL (17.838 s) : 17838000, 17838000
.   : milestone, 17838000,
profiling (14.898 s) : 14898000, 14898000
.   : milestone, 14898000,
tracing (14.94 s) : 14940000, 14940000
.   : milestone, 14940000,
section candidate
no_agent (15.149 s) : 15149000, 15149000
.   : milestone, 15149000,
appsec (14.673 s) : 14673000, 14673000
.   : milestone, 14673000,
iast (17.896 s) : 17896000, 17896000
.   : milestone, 17896000,
iast_GLOBAL (17.833 s) : 17833000, 17833000
.   : milestone, 17833000,
profiling (14.651 s) : 14651000, 14651000
.   : milestone, 14651000,
tracing (14.782 s) : 14782000, 14782000
.   : milestone, 14782000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.799 s [14.799 s, 14.799 s] -
appsec 14.728 s [14.728 s, 14.728 s] -71.0 ms (-0.5%)
iast 18.318 s [18.318 s, 18.318 s] 3.519 s (23.8%)
iast_GLOBAL 17.838 s [17.838 s, 17.838 s] 3.039 s (20.5%)
profiling 14.898 s [14.898 s, 14.898 s] 99.0 ms (0.7%)
tracing 14.94 s [14.94 s, 14.94 s] 141.0 ms (1.0%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.149 s [15.149 s, 15.149 s] -
appsec 14.673 s [14.673 s, 14.673 s] -476.0 ms (-3.1%)
iast 17.896 s [17.896 s, 17.896 s] 2.747 s (18.1%)
iast_GLOBAL 17.833 s [17.833 s, 17.833 s] 2.684 s (17.7%)
profiling 14.651 s [14.651 s, 14.651 s] -498.0 ms (-3.3%)
tracing 14.782 s [14.782 s, 14.782 s] -367.0 ms (-2.4%)

@mhlidd mhlidd changed the title init Support CompletableFuture on Spring Messaging Spans Mar 27, 2026
@mhlidd mhlidd added type: enhancement Enhancements and improvements inst: spring Spring instrumentation labels Mar 27, 2026
@mhlidd mhlidd marked this pull request as ready for review March 27, 2026 18:20
@mhlidd mhlidd requested a review from a team as a code owner March 27, 2026 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

inst: spring Spring instrumentation type: enhancement Enhancements and improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant