Skip to content

Conversation

@ValentinZakharov
Copy link
Contributor

What Does This Do

Fixed missing event processing for OpenTelemetry spans. Since OTelSpan wraps DDSpan, event serialization didn’t always happen. Now, events are processed reliably at the finalization stage when DDSpan is finished, and DDSpan.finishAndAddToTrace() triggers a cascading finish for wrapper spans.
Issue happens when span created with annotations @Trace or @WithSpan.

Motivation

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@ValentinZakharov ValentinZakharov self-assigned this Oct 26, 2025
@ValentinZakharov ValentinZakharov requested a review from a team as a code owner October 26, 2025 10:36
@ValentinZakharov ValentinZakharov added the inst: opentelemetry OpenTelemetry instrumentation label Oct 26, 2025
@ValentinZakharov ValentinZakharov requested review from a team as code owners October 26, 2025 10:36
@ValentinZakharov ValentinZakharov requested review from mhlidd and removed request for a team October 26, 2025 10:36
@ValentinZakharov ValentinZakharov added the type: bug Bug report and fix label Oct 26, 2025
@github-actions
Copy link
Contributor

Hi! 👋 Thanks for your pull request! 🎉

To help us review it, please make sure to:

  • Add at least one type, and one component or instrumentation label to the pull request

If you need help, please check our contributing guidelines.

@datadog-datadog-prod-us1
Copy link
Contributor

datadog-datadog-prod-us1 bot commented Oct 27, 2025

🎯 Code Coverage
Patch Coverage: 66.67%
Total Coverage: 60.18% (+0.49%)

View detailed report

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

@pr-commenter
Copy link

pr-commenter bot commented Oct 27, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master vzakharov/otel-span-events-fix
git_commit_date 1761745018 1761760973
git_commit_sha 8747faa 65a896d
release_version 1.55.0-SNAPSHOT~8747faa1b4 1.55.0-SNAPSHOT~65a896d6a4
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1761762750 1761762750
ci_job_id 1205206675 1205206675
ci_pipeline_id 80659173 80659173
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-0-bkpqmuvz 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-0-bkpqmuvz 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 54 metrics, 11 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.55.0-SNAPSHOT~65a896d6a4, baseline=1.55.0-SNAPSHOT~8747faa1b4

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.03 s) : 0, 1029841
Total [baseline] (8.705 s) : 0, 8705256
Agent [candidate] (1.03 s) : 0, 1030385
Total [candidate] (8.625 s) : 0, 8624966
section iast
Agent [baseline] (1.174 s) : 0, 1173948
Total [baseline] (9.378 s) : 0, 9377710
Agent [candidate] (1.161 s) : 0, 1161095
Total [candidate] (9.327 s) : 0, 9326907
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.03 s -
Agent iast 1.174 s 144.106 ms (14.0%)
Total tracing 8.705 s -
Total iast 9.378 s 672.454 ms (7.7%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.03 s -
Agent iast 1.161 s 130.71 ms (12.7%)
Total tracing 8.625 s -
Total iast 9.327 s 701.94 ms (8.1%)
gantt
    title insecure-bank - break down per module: candidate=1.55.0-SNAPSHOT~65a896d6a4, baseline=1.55.0-SNAPSHOT~8747faa1b4

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.468 ms) : 0, 1468
crashtracking [candidate] (1.453 ms) : 0, 1453
BytebuddyAgent [baseline] (701.679 ms) : 0, 701679
BytebuddyAgent [candidate] (702.82 ms) : 0, 702820
GlobalTracer [baseline] (245.001 ms) : 0, 245001
GlobalTracer [candidate] (244.819 ms) : 0, 244819
AppSec [baseline] (32.266 ms) : 0, 32266
AppSec [candidate] (32.23 ms) : 0, 32230
Debugger [baseline] (6.381 ms) : 0, 6381
Debugger [candidate] (6.371 ms) : 0, 6371
Remote Config [baseline] (688.149 µs) : 0, 688
Remote Config [candidate] (668.306 µs) : 0, 668
Telemetry [baseline] (13.912 ms) : 0, 13912
Telemetry [candidate] (14.392 ms) : 0, 14392
Flare Poller [baseline] (7.308 ms) : 0, 7308
Flare Poller [candidate] (6.466 ms) : 0, 6466
section iast
crashtracking [baseline] (1.485 ms) : 0, 1485
crashtracking [candidate] (1.466 ms) : 0, 1466
BytebuddyAgent [baseline] (832.087 ms) : 0, 832087
BytebuddyAgent [candidate] (824.07 ms) : 0, 824070
GlobalTracer [baseline] (236.6 ms) : 0, 236600
GlobalTracer [candidate] (233.654 ms) : 0, 233654
IAST [baseline] (31.459 ms) : 0, 31459
IAST [candidate] (32.329 ms) : 0, 32329
AppSec [baseline] (31.201 ms) : 0, 31201
AppSec [candidate] (28.971 ms) : 0, 28971
Debugger [baseline] (6.196 ms) : 0, 6196
Debugger [candidate] (6.126 ms) : 0, 6126
Remote Config [baseline] (607.492 µs) : 0, 607
Remote Config [candidate] (599.782 µs) : 0, 600
Telemetry [baseline] (8.62 ms) : 0, 8620
Telemetry [candidate] (8.464 ms) : 0, 8464
Flare Poller [baseline] (4.141 ms) : 0, 4141
Flare Poller [candidate] (4.147 ms) : 0, 4147
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.55.0-SNAPSHOT~65a896d6a4, baseline=1.55.0-SNAPSHOT~8747faa1b4

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.032 s) : 0, 1031538
Total [baseline] (10.796 s) : 0, 10796150
Agent [candidate] (1.029 s) : 0, 1029223
Total [candidate] (10.755 s) : 0, 10754699
section appsec
Agent [baseline] (1.201 s) : 0, 1200523
Total [baseline] (10.92 s) : 0, 10920032
Agent [candidate] (1.205 s) : 0, 1204769
Total [candidate] (10.961 s) : 0, 10960995
section iast
Agent [baseline] (1.176 s) : 0, 1176034
Total [baseline] (11.199 s) : 0, 11198778
Agent [candidate] (1.158 s) : 0, 1158302
Total [candidate] (11.021 s) : 0, 11021187
section profiling
Agent [baseline] (1.171 s) : 0, 1171066
Total [baseline] (10.812 s) : 0, 10812054
Agent [candidate] (1.181 s) : 0, 1181351
Total [candidate] (10.864 s) : 0, 10863708
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.032 s -
Agent appsec 1.201 s 168.985 ms (16.4%)
Agent iast 1.176 s 144.496 ms (14.0%)
Agent profiling 1.171 s 139.528 ms (13.5%)
Total tracing 10.796 s -
Total appsec 10.92 s 123.882 ms (1.1%)
Total iast 11.199 s 402.628 ms (3.7%)
Total profiling 10.812 s 15.904 ms (0.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.029 s -
Agent appsec 1.205 s 175.546 ms (17.1%)
Agent iast 1.158 s 129.079 ms (12.5%)
Agent profiling 1.181 s 152.128 ms (14.8%)
Total tracing 10.755 s -
Total appsec 10.961 s 206.296 ms (1.9%)
Total iast 11.021 s 266.488 ms (2.5%)
Total profiling 10.864 s 109.009 ms (1.0%)
gantt
    title petclinic - break down per module: candidate=1.55.0-SNAPSHOT~65a896d6a4, baseline=1.55.0-SNAPSHOT~8747faa1b4

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.462 ms) : 0, 1462
crashtracking [candidate] (1.485 ms) : 0, 1485
BytebuddyAgent [baseline] (703.72 ms) : 0, 703720
BytebuddyAgent [candidate] (701.775 ms) : 0, 701775
GlobalTracer [baseline] (244.907 ms) : 0, 244907
GlobalTracer [candidate] (244.541 ms) : 0, 244541
AppSec [baseline] (32.278 ms) : 0, 32278
AppSec [candidate] (32.348 ms) : 0, 32348
Debugger [baseline] (6.379 ms) : 0, 6379
Debugger [candidate] (6.38 ms) : 0, 6380
Remote Config [baseline] (676.164 µs) : 0, 676
Remote Config [candidate] (670.852 µs) : 0, 671
Telemetry [baseline] (12.865 ms) : 0, 12865
Telemetry [candidate] (15.046 ms) : 0, 15046
Flare Poller [baseline] (7.997 ms) : 0, 7997
Flare Poller [candidate] (5.684 ms) : 0, 5684
section appsec
crashtracking [baseline] (1.458 ms) : 0, 1458
crashtracking [candidate] (1.466 ms) : 0, 1466
BytebuddyAgent [baseline] (724.88 ms) : 0, 724880
BytebuddyAgent [candidate] (726.224 ms) : 0, 726224
GlobalTracer [baseline] (235.716 ms) : 0, 235716
GlobalTracer [candidate] (237.293 ms) : 0, 237293
AppSec [baseline] (173.5 ms) : 0, 173500
AppSec [candidate] (174.301 ms) : 0, 174301
Debugger [baseline] (5.876 ms) : 0, 5876
Debugger [candidate] (6.009 ms) : 0, 6009
Remote Config [baseline] (628.368 µs) : 0, 628
Remote Config [candidate] (633.305 µs) : 0, 633
Telemetry [baseline] (8.406 ms) : 0, 8406
Telemetry [candidate] (8.469 ms) : 0, 8469
Flare Poller [baseline] (3.882 ms) : 0, 3882
Flare Poller [candidate] (3.908 ms) : 0, 3908
IAST [baseline] (25.037 ms) : 0, 25037
IAST [candidate] (25.303 ms) : 0, 25303
section iast
crashtracking [baseline] (1.506 ms) : 0, 1506
crashtracking [candidate] (1.457 ms) : 0, 1457
BytebuddyAgent [baseline] (834.31 ms) : 0, 834310
BytebuddyAgent [candidate] (821.179 ms) : 0, 821179
GlobalTracer [baseline] (236.627 ms) : 0, 236627
GlobalTracer [candidate] (233.809 ms) : 0, 233809
AppSec [baseline] (30.948 ms) : 0, 30948
AppSec [candidate] (27.098 ms) : 0, 27098
Debugger [baseline] (6.19 ms) : 0, 6190
Debugger [candidate] (6.202 ms) : 0, 6202
Remote Config [baseline] (617.536 µs) : 0, 618
Remote Config [candidate] (597.411 µs) : 0, 597
Telemetry [baseline] (8.671 ms) : 0, 8671
Telemetry [candidate] (8.474 ms) : 0, 8474
Flare Poller [baseline] (4.172 ms) : 0, 4172
Flare Poller [candidate] (4.121 ms) : 0, 4121
IAST [baseline] (31.507 ms) : 0, 31507
IAST [candidate] (34.153 ms) : 0, 34153
section profiling
ProfilingAgent [baseline] (109.153 ms) : 0, 109153
ProfilingAgent [candidate] (110.002 ms) : 0, 110002
crashtracking [baseline] (1.448 ms) : 0, 1448
crashtracking [candidate] (1.457 ms) : 0, 1457
BytebuddyAgent [baseline] (725.024 ms) : 0, 725024
BytebuddyAgent [candidate] (731.704 ms) : 0, 731704
GlobalTracer [baseline] (220.083 ms) : 0, 220083
GlobalTracer [candidate] (221.958 ms) : 0, 221958
AppSec [baseline] (32.286 ms) : 0, 32286
AppSec [candidate] (33.389 ms) : 0, 33389
Debugger [baseline] (11.445 ms) : 0, 11445
Debugger [candidate] (13.077 ms) : 0, 13077
Remote Config [baseline] (706.519 µs) : 0, 707
Remote Config [candidate] (714.384 µs) : 0, 714
Telemetry [baseline] (11.416 ms) : 0, 11416
Telemetry [candidate] (9.012 ms) : 0, 9012
Flare Poller [baseline] (4.109 ms) : 0, 4109
Flare Poller [candidate] (4.169 ms) : 0, 4169
Profiling [baseline] (109.784 ms) : 0, 109784
Profiling [candidate] (110.636 ms) : 0, 110636
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master vzakharov/otel-span-events-fix
git_commit_date 1761745018 1761760973
git_commit_sha 8747faa 65a896d
release_version 1.55.0-SNAPSHOT~8747faa1b4 1.55.0-SNAPSHOT~65a896d6a4
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1761763329 1761763329
ci_job_id 1205206676 1205206676
ci_pipeline_id 80659173 80659173
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-0-namhsf01 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-0-namhsf01 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 2 performance improvements and 3 performance regressions! Performance is the same for 7 metrics, 12 unstable metrics.

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:insecure-bank:tracing:high_load worse
[+70.702µs; +100.911µs] or [+4.125%; +5.887%]
unstable
[-390.543op/s; +151.293op/s] or [-14.923%; +5.781%]
1.800ms 2497.500op/s 1.714ms 2617.125op/s
scenario:load:insecure-bank:profiling:high_load better
[-186.875µs; -146.835µs] or [-8.777%; -6.896%]
unstable
[-82.107op/s; +428.420op/s] or [-3.866%; +20.172%]
1.962ms 2296.969op/s 2.129ms 2123.812op/s
scenario:load:petclinic:code_origins:high_load worse
[+0.869ms; +1.279ms] or [+4.721%; +6.944%]
unstable
[-42.450op/s; +14.637op/s] or [-16.747%; +5.775%]
19.486ms 239.562op/s 18.412ms 253.469op/s
scenario:load:petclinic:no_agent:high_load better
[-1.204ms; -0.804ms] or [-6.574%; -4.392%]
unstable
[-17.051op/s; +46.613op/s] or [-6.693%; +18.298%]
17.310ms 269.531op/s 18.314ms 254.750op/s
scenario:load:petclinic:tracing:high_load worse
[+0.832ms; +1.240ms] or [+4.553%; +6.786%]
unstable
[-42.606op/s; +15.293op/s] or [-16.680%; +5.987%]
19.307ms 241.781op/s 18.271ms 255.438op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.55.0-SNAPSHOT~65a896d6a4, baseline=1.55.0-SNAPSHOT~8747faa1b4
    dateFormat X
    axisFormat %s
section baseline
no_agent (18.314 ms) : 18118, 18510
.   : milestone, 18314,
appsec (19.956 ms) : 19748, 20164
.   : milestone, 19956,
code_origins (18.412 ms) : 18223, 18602
.   : milestone, 18412,
iast (17.906 ms) : 17729, 18084
.   : milestone, 17906,
profiling (20.857 ms) : 20642, 21073
.   : milestone, 20857,
tracing (18.271 ms) : 18088, 18455
.   : milestone, 18271,
section candidate
no_agent (17.31 ms) : 17135, 17485
.   : milestone, 17310,
appsec (20.319 ms) : 20108, 20530
.   : milestone, 20319,
code_origins (19.486 ms) : 19295, 19677
.   : milestone, 19486,
iast (17.579 ms) : 17405, 17753
.   : milestone, 17579,
profiling (20.241 ms) : 20042, 20440
.   : milestone, 20241,
tracing (19.307 ms) : 19112, 19503
.   : milestone, 19307,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 18.314 ms [18.118 ms, 18.51 ms] -
appsec 19.956 ms [19.748 ms, 20.164 ms] 1.642 ms (9.0%)
code_origins 18.412 ms [18.223 ms, 18.602 ms] 98.457 µs (0.5%)
iast 17.906 ms [17.729 ms, 18.084 ms] -407.821 µs (-2.2%)
profiling 20.857 ms [20.642 ms, 21.073 ms] 2.543 ms (13.9%)
tracing 18.271 ms [18.088 ms, 18.455 ms] -42.573 µs (-0.2%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 17.31 ms [17.135 ms, 17.485 ms] -
appsec 20.319 ms [20.108 ms, 20.53 ms] 3.009 ms (17.4%)
code_origins 19.486 ms [19.295 ms, 19.677 ms] 2.177 ms (12.6%)
iast 17.579 ms [17.405 ms, 17.753 ms] 269.296 µs (1.6%)
profiling 20.241 ms [20.042 ms, 20.44 ms] 2.931 ms (16.9%)
tracing 19.307 ms [19.112 ms, 19.503 ms] 1.997 ms (11.5%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.55.0-SNAPSHOT~65a896d6a4, baseline=1.55.0-SNAPSHOT~8747faa1b4
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.181 ms) : 1170, 1193
.   : milestone, 1181,
iast (3.151 ms) : 3109, 3193
.   : milestone, 3151,
iast_FULL (5.782 ms) : 5724, 5839
.   : milestone, 5782,
iast_GLOBAL (3.546 ms) : 3494, 3597
.   : milestone, 3546,
profiling (2.129 ms) : 2109, 2150
.   : milestone, 2129,
tracing (1.714 ms) : 1701, 1727
.   : milestone, 1714,
section candidate
no_agent (1.178 ms) : 1166, 1189
.   : milestone, 1178,
iast (3.247 ms) : 3201, 3292
.   : milestone, 3247,
iast_FULL (5.692 ms) : 5635, 5748
.   : milestone, 5692,
iast_GLOBAL (3.653 ms) : 3596, 3710
.   : milestone, 3653,
profiling (1.962 ms) : 1946, 1979
.   : milestone, 1962,
tracing (1.8 ms) : 1785, 1815
.   : milestone, 1800,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.181 ms [1.17 ms, 1.193 ms] -
iast 3.151 ms [3.109 ms, 3.193 ms] 1.97 ms (166.7%)
iast_FULL 5.782 ms [5.724 ms, 5.839 ms] 4.6 ms (389.4%)
iast_GLOBAL 3.546 ms [3.494 ms, 3.597 ms] 2.364 ms (200.2%)
profiling 2.129 ms [2.109 ms, 2.15 ms] 947.952 µs (80.3%)
tracing 1.714 ms [1.701 ms, 1.727 ms] 532.84 µs (45.1%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.178 ms [1.166 ms, 1.189 ms] -
iast 3.247 ms [3.201 ms, 3.292 ms] 2.069 ms (175.7%)
iast_FULL 5.692 ms [5.635 ms, 5.748 ms] 4.514 ms (383.3%)
iast_GLOBAL 3.653 ms [3.596 ms, 3.71 ms] 2.475 ms (210.2%)
profiling 1.962 ms [1.946 ms, 1.979 ms] 784.616 µs (66.6%)
tracing 1.8 ms [1.785 ms, 1.815 ms] 622.165 µs (52.8%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master vzakharov/otel-span-events-fix
git_commit_date 1761745018 1761760973
git_commit_sha 8747faa 65a896d
release_version 1.55.0-SNAPSHOT~8747faa1b4 1.55.0-SNAPSHOT~65a896d6a4
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1761763064 1761763064
ci_job_id 1205206677 1205206677
ci_pipeline_id 80659173 80659173
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-0-iifx6x35 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-0-iifx6x35 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 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.55.0-SNAPSHOT~65a896d6a4, baseline=1.55.0-SNAPSHOT~8747faa1b4
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.484 ms) : 1473, 1496
.   : milestone, 1484,
appsec (3.739 ms) : 3519, 3958
.   : milestone, 3739,
iast (2.218 ms) : 2154, 2282
.   : milestone, 2218,
iast_GLOBAL (2.267 ms) : 2204, 2331
.   : milestone, 2267,
profiling (2.094 ms) : 2040, 2147
.   : milestone, 2094,
tracing (2.048 ms) : 1999, 2098
.   : milestone, 2048,
section candidate
no_agent (1.485 ms) : 1473, 1496
.   : milestone, 1485,
appsec (3.733 ms) : 3514, 3952
.   : milestone, 3733,
iast (2.225 ms) : 2161, 2289
.   : milestone, 2225,
iast_GLOBAL (2.286 ms) : 2222, 2351
.   : milestone, 2286,
profiling (2.088 ms) : 2035, 2141
.   : milestone, 2088,
tracing (2.047 ms) : 1997, 2096
.   : milestone, 2047,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.484 ms [1.473 ms, 1.496 ms] -
appsec 3.739 ms [3.519 ms, 3.958 ms] 2.254 ms (151.9%)
iast 2.218 ms [2.154 ms, 2.282 ms] 733.638 µs (49.4%)
iast_GLOBAL 2.267 ms [2.204 ms, 2.331 ms] 782.789 µs (52.7%)
profiling 2.094 ms [2.04 ms, 2.147 ms] 609.267 µs (41.0%)
tracing 2.048 ms [1.999 ms, 2.098 ms] 563.902 µs (38.0%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.485 ms [1.473 ms, 1.496 ms] -
appsec 3.733 ms [3.514 ms, 3.952 ms] 2.248 ms (151.4%)
iast 2.225 ms [2.161 ms, 2.289 ms] 740.325 µs (49.9%)
iast_GLOBAL 2.286 ms [2.222 ms, 2.351 ms] 801.781 µs (54.0%)
profiling 2.088 ms [2.035 ms, 2.141 ms] 603.149 µs (40.6%)
tracing 2.047 ms [1.997 ms, 2.096 ms] 562.079 µs (37.9%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.55.0-SNAPSHOT~65a896d6a4, baseline=1.55.0-SNAPSHOT~8747faa1b4
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.835 s) : 14835000, 14835000
.   : milestone, 14835000,
appsec (14.859 s) : 14859000, 14859000
.   : milestone, 14859000,
iast (18.5 s) : 18500000, 18500000
.   : milestone, 18500000,
iast_GLOBAL (18.051 s) : 18051000, 18051000
.   : milestone, 18051000,
profiling (15.183 s) : 15183000, 15183000
.   : milestone, 15183000,
tracing (15.168 s) : 15168000, 15168000
.   : milestone, 15168000,
section candidate
no_agent (15.416 s) : 15416000, 15416000
.   : milestone, 15416000,
appsec (15.027 s) : 15027000, 15027000
.   : milestone, 15027000,
iast (18.475 s) : 18475000, 18475000
.   : milestone, 18475000,
iast_GLOBAL (18.064 s) : 18064000, 18064000
.   : milestone, 18064000,
profiling (15.577 s) : 15577000, 15577000
.   : milestone, 15577000,
tracing (15.441 s) : 15441000, 15441000
.   : milestone, 15441000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.835 s [14.835 s, 14.835 s] -
appsec 14.859 s [14.859 s, 14.859 s] 24.0 ms (0.2%)
iast 18.5 s [18.5 s, 18.5 s] 3.665 s (24.7%)
iast_GLOBAL 18.051 s [18.051 s, 18.051 s] 3.216 s (21.7%)
profiling 15.183 s [15.183 s, 15.183 s] 348.0 ms (2.3%)
tracing 15.168 s [15.168 s, 15.168 s] 333.0 ms (2.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.416 s [15.416 s, 15.416 s] -
appsec 15.027 s [15.027 s, 15.027 s] -389.0 ms (-2.5%)
iast 18.475 s [18.475 s, 18.475 s] 3.059 s (19.8%)
iast_GLOBAL 18.064 s [18.064 s, 18.064 s] 2.648 s (17.2%)
profiling 15.577 s [15.577 s, 15.577 s] 161.0 ms (1.0%)
tracing 15.441 s [15.441 s, 15.441 s] 25.0 ms (0.2%)

Copy link
Contributor

@PerfectSlayer PerfectSlayer left a comment

Choose a reason for hiding this comment

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

Left few minor comments.

@@ -0,0 +1,5 @@
package datadog.trace.bootstrap.instrumentation.api;

public interface SpanWrapper {
Copy link
Contributor

Choose a reason for hiding this comment

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

🎯 suggestion: ‏Can we document the purpose of the interface?

🎯 suggestion: ‏Can we make it @FunctionalInterface too to make sure it does not grew unexpectedly for now?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done

package datadog.trace.bootstrap.instrumentation.api;

public interface SpanWrapper {
void onSpanFinished();
Copy link
Contributor

Choose a reason for hiding this comment

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

❔ question: ‏To avoid all the empty implementation, should we make it default?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks, done!


@Override
public void attachWrapper(Object wrapper) {
public void attachWrapper(SpanWrapper wrapper) {
Copy link
Contributor

Choose a reason for hiding this comment

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

🎯 suggestion: ‏Can we add @NonNull to keep it for the interface definition?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done!

@ValentinZakharov ValentinZakharov force-pushed the vzakharov/otel-span-events-fix branch 4 times, most recently from 706e308 to 9ee6982 Compare October 28, 2025 14:57
Copy link
Contributor

@PerfectSlayer PerfectSlayer left a comment

Choose a reason for hiding this comment

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

👏 praise: ‏Looking good! Thanks for the follow up changes 👍

@ValentinZakharov ValentinZakharov enabled auto-merge (squash) October 29, 2025 15:38
@ValentinZakharov ValentinZakharov force-pushed the vzakharov/otel-span-events-fix branch from 52eb181 to 4ff2348 Compare October 29, 2025 16:57
@ValentinZakharov ValentinZakharov force-pushed the vzakharov/otel-span-events-fix branch from 4ff2348 to 50a6840 Compare October 29, 2025 17:58
@ValentinZakharov ValentinZakharov requested review from a team as code owners October 29, 2025 17:58
@ValentinZakharov ValentinZakharov requested review from a team as code owners October 29, 2025 17:58
@ValentinZakharov ValentinZakharov requested review from amarziali, colin-higgins and ojung and removed request for a team October 29, 2025 17:58
@ValentinZakharov ValentinZakharov force-pushed the vzakharov/otel-span-events-fix branch from 50a6840 to 31e38f0 Compare October 29, 2025 18:00
@ValentinZakharov ValentinZakharov force-pushed the vzakharov/otel-span-events-fix branch from 31e38f0 to d93c9d6 Compare October 29, 2025 18:02
@ValentinZakharov ValentinZakharov merged commit d86fe55 into master Oct 29, 2025
539 checks passed
@ValentinZakharov ValentinZakharov deleted the vzakharov/otel-span-events-fix branch October 29, 2025 18:58
@github-actions github-actions bot added this to the 1.55.0 milestone Oct 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

inst: opentelemetry OpenTelemetry instrumentation type: bug Bug report and fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants