Skip to content

Conversation

@jpbempel
Copy link
Member

@jpbempel jpbempel commented Jan 15, 2026

What Does This Do

Simplify code, reduce allocations
remove checked exceptions
use an enum for builders
move packages

Motivation

Reuse for Kotlin classes

Additional Notes

Related to

Note

There is no difference in the SMAP syntax between JSR 45 and Jakarta Debugging Support for Other Languages 2.0. The technical specification (grammar, sections, format) is identical.

Version History

Version Year Description
JSR 45 2003 Original specification from Java Community Process
Jakarta 1.0 2019 Re-release of JSR 45 under Eclipse Foundation Specification License (EFSL) for Jakarta EE 8
Jakarta 2.0 2020 Namespace migration from javax.* to jakarta.* for Jakarta EE 9

What Changed

  • Jakarta 1.0: Licensing only (JCP → EFSL). Explicitly documented as "a re-release of JSR 45 under the EFSL".
  • Jakarta 2.0: Namespace change (javax.*jakarta.*) as part of Jakarta EE 9.

SMAP Syntax

The SMAP grammar remains unchanged across all versions:

  • StratumSection, FileSection, LineSection, VendorSection, EmbeddedSourceMaps — all identical.

References

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@github-actions
Copy link
Contributor

github-actions bot commented Jan 15, 2026

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.

@jpbempel jpbempel added comp: tooling Build & Tooling type: refactoring tag: no release notes Changes to exclude from release notes labels Jan 15, 2026
@pr-commenter
Copy link

pr-commenter bot commented Jan 15, 2026

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jpbempel/refactor-smap
git_commit_date 1768824130 1768840233
git_commit_sha 34b1616 054089c
release_version 1.59.0-SNAPSHOT~34b16160f8 1.59.0-SNAPSHOT~054089ce96
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1768842564 1768842564
ci_job_id 1360277849 1360277849
ci_pipeline_id 91490631 91490631
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-775l4zzz 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-775l4zzz 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 59 metrics, 6 unstable metrics.

Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.59.0-SNAPSHOT~054089ce96, baseline=1.59.0-SNAPSHOT~34b16160f8

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.098 s) : 0, 1098369
Total [baseline] (10.771 s) : 0, 10770587
Agent [candidate] (1.095 s) : 0, 1094946
Total [candidate] (10.804 s) : 0, 10804265
section appsec
Agent [baseline] (1.262 s) : 0, 1262369
Total [baseline] (10.987 s) : 0, 10986990
Agent [candidate] (1.272 s) : 0, 1272139
Total [candidate] (11.03 s) : 0, 11030053
section iast
Agent [baseline] (1.232 s) : 0, 1231693
Total [baseline] (11.145 s) : 0, 11145386
Agent [candidate] (1.224 s) : 0, 1223971
Total [candidate] (11.25 s) : 0, 11250033
section profiling
Agent [baseline] (1.212 s) : 0, 1212058
Total [baseline] (10.879 s) : 0, 10879241
Agent [candidate] (1.213 s) : 0, 1212738
Total [candidate] (10.886 s) : 0, 10886276
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.098 s -
Agent appsec 1.262 s 164.0 ms (14.9%)
Agent iast 1.232 s 133.323 ms (12.1%)
Agent profiling 1.212 s 113.689 ms (10.4%)
Total tracing 10.771 s -
Total appsec 10.987 s 216.403 ms (2.0%)
Total iast 11.145 s 374.799 ms (3.5%)
Total profiling 10.879 s 108.653 ms (1.0%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.095 s -
Agent appsec 1.272 s 177.193 ms (16.2%)
Agent iast 1.224 s 129.025 ms (11.8%)
Agent profiling 1.213 s 117.792 ms (10.8%)
Total tracing 10.804 s -
Total appsec 11.03 s 225.788 ms (2.1%)
Total iast 11.25 s 445.767 ms (4.1%)
Total profiling 10.886 s 82.01 ms (0.8%)
gantt
    title petclinic - break down per module: candidate=1.59.0-SNAPSHOT~054089ce96, baseline=1.59.0-SNAPSHOT~34b16160f8

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.202 ms) : 0, 1202
crashtracking [candidate] (1.18 ms) : 0, 1180
BytebuddyAgent [baseline] (660.271 ms) : 0, 660271
BytebuddyAgent [candidate] (657.409 ms) : 0, 657409
GlobalTracer [baseline] (285.833 ms) : 0, 285833
GlobalTracer [candidate] (285.879 ms) : 0, 285879
AppSec [baseline] (33.293 ms) : 0, 33293
AppSec [candidate] (33.041 ms) : 0, 33041
Debugger [baseline] (68.41 ms) : 0, 68410
Debugger [candidate] (68.443 ms) : 0, 68443
Remote Config [baseline] (655.648 µs) : 0, 656
Remote Config [candidate] (627.279 µs) : 0, 627
Telemetry [baseline] (9.038 ms) : 0, 9038
Telemetry [candidate] (8.965 ms) : 0, 8965
Flare Poller [baseline] (3.87 ms) : 0, 3870
Flare Poller [candidate] (3.829 ms) : 0, 3829
section appsec
crashtracking [baseline] (1.182 ms) : 0, 1182
crashtracking [candidate] (1.196 ms) : 0, 1196
BytebuddyAgent [baseline] (689.494 ms) : 0, 689494
BytebuddyAgent [candidate] (696.092 ms) : 0, 696092
GlobalTracer [baseline] (257.856 ms) : 0, 257856
GlobalTracer [candidate] (259.973 ms) : 0, 259973
IAST [baseline] (24.64 ms) : 0, 24640
IAST [candidate] (24.749 ms) : 0, 24749
AppSec [baseline] (170.956 ms) : 0, 170956
AppSec [candidate] (173.593 ms) : 0, 173593
Debugger [baseline] (68.993 ms) : 0, 68993
Debugger [candidate] (67.244 ms) : 0, 67244
Remote Config [baseline] (752.545 µs) : 0, 753
Remote Config [candidate] (737.06 µs) : 0, 737
Telemetry [baseline] (9.396 ms) : 0, 9396
Telemetry [candidate] (9.254 ms) : 0, 9254
Flare Poller [baseline] (3.796 ms) : 0, 3796
Flare Poller [candidate] (3.78 ms) : 0, 3780
section iast
crashtracking [baseline] (1.184 ms) : 0, 1184
crashtracking [candidate] (1.189 ms) : 0, 1189
BytebuddyAgent [baseline] (796.82 ms) : 0, 796820
BytebuddyAgent [candidate] (791.953 ms) : 0, 791953
GlobalTracer [baseline] (258.178 ms) : 0, 258178
GlobalTracer [candidate] (256.037 ms) : 0, 256037
IAST [baseline] (27.219 ms) : 0, 27219
IAST [candidate] (26.873 ms) : 0, 26873
AppSec [baseline] (33.495 ms) : 0, 33495
AppSec [candidate] (34.944 ms) : 0, 34944
Debugger [baseline] (66.777 ms) : 0, 66777
Debugger [candidate] (65.041 ms) : 0, 65041
Remote Config [baseline] (573.123 µs) : 0, 573
Remote Config [candidate] (585.228 µs) : 0, 585
Telemetry [baseline] (8.463 ms) : 0, 8463
Telemetry [candidate] (8.461 ms) : 0, 8461
Flare Poller [baseline] (3.522 ms) : 0, 3522
Flare Poller [candidate] (3.581 ms) : 0, 3581
section profiling
crashtracking [baseline] (1.214 ms) : 0, 1214
crashtracking [candidate] (1.217 ms) : 0, 1217
BytebuddyAgent [baseline] (706.309 ms) : 0, 706309
BytebuddyAgent [candidate] (707.77 ms) : 0, 707770
GlobalTracer [baseline] (222.118 ms) : 0, 222118
GlobalTracer [candidate] (222.666 ms) : 0, 222666
AppSec [baseline] (32.811 ms) : 0, 32811
AppSec [candidate] (32.511 ms) : 0, 32511
Debugger [baseline] (69.003 ms) : 0, 69003
Debugger [candidate] (68.364 ms) : 0, 68364
Remote Config [baseline] (645.036 µs) : 0, 645
Remote Config [candidate] (611.85 µs) : 0, 612
Telemetry [baseline] (9.026 ms) : 0, 9026
Telemetry [candidate] (8.931 ms) : 0, 8931
Flare Poller [baseline] (3.749 ms) : 0, 3749
Flare Poller [candidate] (4.437 ms) : 0, 4437
ProfilingAgent [baseline] (97.064 ms) : 0, 97064
ProfilingAgent [candidate] (96.007 ms) : 0, 96007
Profiling [baseline] (97.65 ms) : 0, 97650
Profiling [candidate] (96.582 ms) : 0, 96582
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.59.0-SNAPSHOT~054089ce96, baseline=1.59.0-SNAPSHOT~34b16160f8

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.101 s) : 0, 1100510
Total [baseline] (8.749 s) : 0, 8748986
Agent [candidate] (1.098 s) : 0, 1098269
Total [candidate] (8.792 s) : 0, 8792055
section iast
Agent [baseline] (1.22 s) : 0, 1220176
Total [baseline] (9.337 s) : 0, 9336995
Agent [candidate] (1.232 s) : 0, 1232353
Total [candidate] (9.332 s) : 0, 9332199
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.101 s -
Agent iast 1.22 s 119.666 ms (10.9%)
Total tracing 8.749 s -
Total iast 9.337 s 588.01 ms (6.7%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.098 s -
Agent iast 1.232 s 134.085 ms (12.2%)
Total tracing 8.792 s -
Total iast 9.332 s 540.144 ms (6.1%)
gantt
    title insecure-bank - break down per module: candidate=1.59.0-SNAPSHOT~054089ce96, baseline=1.59.0-SNAPSHOT~34b16160f8

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.203 ms) : 0, 1203
crashtracking [candidate] (1.199 ms) : 0, 1199
BytebuddyAgent [baseline] (663.037 ms) : 0, 663037
BytebuddyAgent [candidate] (660.708 ms) : 0, 660708
GlobalTracer [baseline] (285.773 ms) : 0, 285773
GlobalTracer [candidate] (286.22 ms) : 0, 286220
AppSec [baseline] (33.244 ms) : 0, 33244
AppSec [candidate] (33.074 ms) : 0, 33074
Debugger [baseline] (67.827 ms) : 0, 67827
Debugger [candidate] (67.677 ms) : 0, 67677
Remote Config [baseline] (646.078 µs) : 0, 646
Remote Config [candidate] (633.242 µs) : 0, 633
Telemetry [baseline] (9.051 ms) : 0, 9051
Telemetry [candidate] (9.025 ms) : 0, 9025
Flare Poller [baseline] (3.834 ms) : 0, 3834
Flare Poller [candidate] (3.814 ms) : 0, 3814
section iast
crashtracking [baseline] (1.18 ms) : 0, 1180
crashtracking [candidate] (1.192 ms) : 0, 1192
BytebuddyAgent [baseline] (789.36 ms) : 0, 789360
BytebuddyAgent [candidate] (799.349 ms) : 0, 799349
GlobalTracer [baseline] (255.616 ms) : 0, 255616
GlobalTracer [candidate] (257.649 ms) : 0, 257649
IAST [baseline] (26.93 ms) : 0, 26930
IAST [candidate] (27.097 ms) : 0, 27097
AppSec [baseline] (35.316 ms) : 0, 35316
AppSec [candidate] (34.362 ms) : 0, 34362
Debugger [baseline] (63.786 ms) : 0, 63786
Debugger [candidate] (64.576 ms) : 0, 64576
Remote Config [baseline] (571.748 µs) : 0, 572
Remote Config [candidate] (586.045 µs) : 0, 586
Telemetry [baseline] (8.541 ms) : 0, 8541
Telemetry [candidate] (8.394 ms) : 0, 8394
Flare Poller [baseline] (3.616 ms) : 0, 3616
Flare Poller [candidate] (3.611 ms) : 0, 3611
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jpbempel/refactor-smap
git_commit_date 1768824130 1768840233
git_commit_sha 34b1616 054089c
release_version 1.59.0-SNAPSHOT~34b16160f8 1.59.0-SNAPSHOT~054089ce96
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1768843062 1768843062
ci_job_id 1360277853 1360277853
ci_pipeline_id 91490631 91490631
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-95bmad6l 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-95bmad6l 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 4 performance improvements and 0 performance regressions! Performance is the same for 16 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_GLOBAL:high_load better
[-270.876µs; -155.715µs] or [-9.358%; -5.380%]
better
[-672.296µs; -221.859µs] or [-8.217%; -2.712%]
unstable
[-67.721op/s; +218.471op/s] or [-5.384%; +17.369%]
2.681ms 7.735ms 1333.219op/s 2.895ms 8.182ms 1257.844op/s
scenario:load:insecure-bank:iast:high_load better
[-219.527µs; -78.256µs] or [-8.519%; -3.037%]
unstable
[-3.566ms; +9.387ms] or [-46.851%; +123.339%]
unstable
[-86.123op/s; +234.435op/s] or [-6.280%; +17.096%]
2.428ms 10.521ms 1445.438op/s 2.577ms 7.610ms 1371.281op/s
scenario:load:petclinic:appsec:high_load better
[-1.422ms; -0.586ms] or [-7.259%; -2.990%]
same
[-1135.489µs; +601.124µs] or [-3.705%; +1.962%]
unstable
[-15.605op/s; +33.230op/s] or [-6.587%; +14.026%]
18.590ms 30.378ms 245.719op/s 19.594ms 30.645ms 236.906op/s
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.59.0-SNAPSHOT~054089ce96, baseline=1.59.0-SNAPSHOT~34b16160f8
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.164 ms) : 1153, 1175
.   : milestone, 1164,
iast (3.339 ms) : 3293, 3385
.   : milestone, 3339,
iast_FULL (5.878 ms) : 5820, 5937
.   : milestone, 5878,
iast_GLOBAL (3.647 ms) : 3600, 3695
.   : milestone, 3647,
profiling (2.09 ms) : 2071, 2109
.   : milestone, 2090,
tracing (1.789 ms) : 1773, 1805
.   : milestone, 1789,
section candidate
no_agent (1.224 ms) : 1212, 1235
.   : milestone, 1224,
iast (3.164 ms) : 3119, 3209
.   : milestone, 3164,
iast_FULL (5.846 ms) : 5788, 5904
.   : milestone, 5846,
iast_GLOBAL (3.437 ms) : 3388, 3487
.   : milestone, 3437,
profiling (2.145 ms) : 2124, 2166
.   : milestone, 2145,
tracing (1.806 ms) : 1791, 1822
.   : milestone, 1806,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.164 ms [1.153 ms, 1.175 ms] -
iast 3.339 ms [3.293 ms, 3.385 ms] 2.175 ms (186.8%)
iast_FULL 5.878 ms [5.82 ms, 5.937 ms] 4.714 ms (404.9%)
iast_GLOBAL 3.647 ms [3.6 ms, 3.695 ms] 2.483 ms (213.3%)
profiling 2.09 ms [2.071 ms, 2.109 ms] 925.786 µs (79.5%)
tracing 1.789 ms [1.773 ms, 1.805 ms] 625.114 µs (53.7%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.224 ms [1.212 ms, 1.235 ms] -
iast 3.164 ms [3.119 ms, 3.209 ms] 1.94 ms (158.5%)
iast_FULL 5.846 ms [5.788 ms, 5.904 ms] 4.622 ms (377.7%)
iast_GLOBAL 3.437 ms [3.388 ms, 3.487 ms] 2.213 ms (180.8%)
profiling 2.145 ms [2.124 ms, 2.166 ms] 921.193 µs (75.3%)
tracing 1.806 ms [1.791 ms, 1.822 ms] 582.558 µs (47.6%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.59.0-SNAPSHOT~054089ce96, baseline=1.59.0-SNAPSHOT~34b16160f8
    dateFormat X
    axisFormat %s
section baseline
no_agent (19.005 ms) : 18811, 19199
.   : milestone, 19005,
appsec (19.705 ms) : 19505, 19904
.   : milestone, 19705,
code_origins (18.697 ms) : 18509, 18885
.   : milestone, 18697,
iast (17.787 ms) : 17609, 17965
.   : milestone, 17787,
profiling (19.145 ms) : 18952, 19337
.   : milestone, 19145,
tracing (17.994 ms) : 17818, 18170
.   : milestone, 17994,
section candidate
no_agent (19.038 ms) : 18842, 19233
.   : milestone, 19038,
appsec (18.99 ms) : 18798, 19182
.   : milestone, 18990,
code_origins (18.034 ms) : 17853, 18215
.   : milestone, 18034,
iast (17.997 ms) : 17818, 18177
.   : milestone, 17997,
profiling (19.035 ms) : 18844, 19226
.   : milestone, 19035,
tracing (17.668 ms) : 17492, 17845
.   : milestone, 17668,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 19.005 ms [18.811 ms, 19.199 ms] -
appsec 19.705 ms [19.505 ms, 19.904 ms] 699.276 µs (3.7%)
code_origins 18.697 ms [18.509 ms, 18.885 ms] -308.043 µs (-1.6%)
iast 17.787 ms [17.609 ms, 17.965 ms] -1.218 ms (-6.4%)
profiling 19.145 ms [18.952 ms, 19.337 ms] 139.502 µs (0.7%)
tracing 17.994 ms [17.818 ms, 18.17 ms] -1.012 ms (-5.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 19.038 ms [18.842 ms, 19.233 ms] -
appsec 18.99 ms [18.798 ms, 19.182 ms] -47.999 µs (-0.3%)
code_origins 18.034 ms [17.853 ms, 18.215 ms] -1.004 ms (-5.3%)
iast 17.997 ms [17.818 ms, 18.177 ms] -1.041 ms (-5.5%)
profiling 19.035 ms [18.844 ms, 19.226 ms] -2.638 µs (-0.0%)
tracing 17.668 ms [17.492 ms, 17.845 ms] -1.369 ms (-7.2%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jpbempel/refactor-smap
git_commit_date 1768824130 1768840233
git_commit_sha 34b1616 054089c
release_version 1.59.0-SNAPSHOT~34b16160f8 1.59.0-SNAPSHOT~054089ce96
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1768842830 1768842830
ci_job_id 1360277857 1360277857
ci_pipeline_id 91490631 91490631
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-bkzjmshm 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-bkzjmshm 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 10 metrics, 2 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.59.0-SNAPSHOT~054089ce96, baseline=1.59.0-SNAPSHOT~34b16160f8
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.48 ms) : 1468, 1492
.   : milestone, 1480,
appsec (3.738 ms) : 3517, 3960
.   : milestone, 3738,
iast (2.229 ms) : 2163, 2294
.   : milestone, 2229,
iast_GLOBAL (2.269 ms) : 2203, 2335
.   : milestone, 2269,
profiling (2.109 ms) : 2054, 2164
.   : milestone, 2109,
tracing (2.056 ms) : 2005, 2108
.   : milestone, 2056,
section candidate
no_agent (1.481 ms) : 1469, 1492
.   : milestone, 1481,
appsec (3.732 ms) : 3509, 3954
.   : milestone, 3732,
iast (2.234 ms) : 2168, 2300
.   : milestone, 2234,
iast_GLOBAL (2.271 ms) : 2205, 2336
.   : milestone, 2271,
profiling (2.5 ms) : 2337, 2663
.   : milestone, 2500,
tracing (2.068 ms) : 2016, 2120
.   : milestone, 2068,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.48 ms [1.468 ms, 1.492 ms] -
appsec 3.738 ms [3.517 ms, 3.96 ms] 2.258 ms (152.6%)
iast 2.229 ms [2.163 ms, 2.294 ms] 748.607 µs (50.6%)
iast_GLOBAL 2.269 ms [2.203 ms, 2.335 ms] 788.956 µs (53.3%)
profiling 2.109 ms [2.054 ms, 2.164 ms] 628.598 µs (42.5%)
tracing 2.056 ms [2.005 ms, 2.108 ms] 576.154 µs (38.9%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.481 ms [1.469 ms, 1.492 ms] -
appsec 3.732 ms [3.509 ms, 3.954 ms] 2.251 ms (152.0%)
iast 2.234 ms [2.168 ms, 2.3 ms] 753.228 µs (50.9%)
iast_GLOBAL 2.271 ms [2.205 ms, 2.336 ms] 790.005 µs (53.4%)
profiling 2.5 ms [2.337 ms, 2.663 ms] 1.019 ms (68.8%)
tracing 2.068 ms [2.016 ms, 2.12 ms] 587.139 µs (39.7%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.59.0-SNAPSHOT~054089ce96, baseline=1.59.0-SNAPSHOT~34b16160f8
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.585 s) : 15585000, 15585000
.   : milestone, 15585000,
appsec (14.92 s) : 14920000, 14920000
.   : milestone, 14920000,
iast (17.775 s) : 17775000, 17775000
.   : milestone, 17775000,
iast_GLOBAL (18.137 s) : 18137000, 18137000
.   : milestone, 18137000,
profiling (14.884 s) : 14884000, 14884000
.   : milestone, 14884000,
tracing (14.834 s) : 14834000, 14834000
.   : milestone, 14834000,
section candidate
no_agent (14.929 s) : 14929000, 14929000
.   : milestone, 14929000,
appsec (14.751 s) : 14751000, 14751000
.   : milestone, 14751000,
iast (18.17 s) : 18170000, 18170000
.   : milestone, 18170000,
iast_GLOBAL (17.85 s) : 17850000, 17850000
.   : milestone, 17850000,
profiling (15.124 s) : 15124000, 15124000
.   : milestone, 15124000,
tracing (14.767 s) : 14767000, 14767000
.   : milestone, 14767000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.585 s [15.585 s, 15.585 s] -
appsec 14.92 s [14.92 s, 14.92 s] -665.0 ms (-4.3%)
iast 17.775 s [17.775 s, 17.775 s] 2.19 s (14.1%)
iast_GLOBAL 18.137 s [18.137 s, 18.137 s] 2.552 s (16.4%)
profiling 14.884 s [14.884 s, 14.884 s] -701.0 ms (-4.5%)
tracing 14.834 s [14.834 s, 14.834 s] -751.0 ms (-4.8%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.929 s [14.929 s, 14.929 s] -
appsec 14.751 s [14.751 s, 14.751 s] -178.0 ms (-1.2%)
iast 18.17 s [18.17 s, 18.17 s] 3.241 s (21.7%)
iast_GLOBAL 17.85 s [17.85 s, 17.85 s] 2.921 s (19.6%)
profiling 15.124 s [15.124 s, 15.124 s] 195.0 ms (1.3%)
tracing 14.767 s [14.767 s, 14.767 s] -162.0 ms (-1.1%)

Copy link
Contributor

@bric3 bric3 left a comment

Choose a reason for hiding this comment

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

Cool !

@bric3
Copy link
Contributor

bric3 commented Jan 15, 2026

> Task :dd-java-agent:instrumentation:datadog:asm:iast-instrumenter:test
SourceMapperImplTest > test getFileAndLine FAILED
    java.lang.ClassCastException at SourceMapperImplTest.groovy:40

Groovy...

Comment on lines +26 to +29
public static StratumManager init(int sourceMappingLimit, IntConsumer limitReachedCallback) {
INSTANCE = new StratumManager(sourceMappingLimit, limitReachedCallback);
return INSTANCE;
}
Copy link
Contributor

Choose a reason for hiding this comment

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

note: This is weird, but as discussed IRL, this is enough for now.

import java.util.regex.Pattern;

public class Parser {
private static final Pattern END_OF_LINE_PATTERN = Pattern.compile("\n");
Copy link
Member

Choose a reason for hiding this comment

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

Just wondering if this works for all OS as they use different line ending (CR, LF y CRLF)

Maybe we can use Pattern.compile("\\r?\\n|\\r") or something similar

Copy link
Member Author

Choose a reason for hiding this comment

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

good catch!
I have modified the pattern

Copy link
Member

@jandro996 jandro996 left a comment

Choose a reason for hiding this comment

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

LGtM! just a comment in the Parser

@jpbempel jpbempel force-pushed the jpbempel/refactor-smap branch from 2db0877 to 616b864 Compare January 16, 2026 17:35
@jpbempel jpbempel force-pushed the jpbempel/refactor-smap branch from 616b864 to 054089c Compare January 19, 2026 16:38
@jpbempel jpbempel merged commit d775b3f into master Jan 19, 2026
568 checks passed
@jpbempel jpbempel deleted the jpbempel/refactor-smap branch January 19, 2026 18:05
@github-actions github-actions bot added this to the 1.59.0 milestone Jan 19, 2026
jandro996 pushed a commit that referenced this pull request Jan 21, 2026
Simplify code, reduce allocations
remove checked exceptions
use an enum for builders
Remove dependency to IAST with StratumManager
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: tooling Build & Tooling tag: no release notes Changes to exclude from release notes type: refactoring

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants