Skip to content

Introduce Java 8 bytecode bridge for instrumentation API #8736

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 30, 2025

Conversation

PerfectSlayer
Copy link
Contributor

@PerfectSlayer PerfectSlayer commented Apr 25, 2025

What Does This Do

Introduce Java 8 bytecode bride.

In instrumentation, we may need to call these methods in code that is inlined into an instrumented class, however many times the instrumented class has been compiled to a previous version of bytecode, and so we cannot inline calls to static interface methods, as those were not supported prior to Java 8 and will lead to a class verification error.

Motivation

Add has context API helpers

Additional Notes

Contributor Checklist

Jira ticket: LANGPLAT-457

@PerfectSlayer PerfectSlayer requested a review from a team as a code owner April 25, 2025 11:49
@PerfectSlayer PerfectSlayer requested a review from ygree April 25, 2025 11:49
@pr-commenter
Copy link

pr-commenter bot commented Apr 25, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master bbujon/context-propagation
git_commit_date 1745533252 1745581569
git_commit_sha de593cc a8005e7
release_version 1.49.0-SNAPSHOT~de593cc116 1.49.0-SNAPSHOT~a8005e7526
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1745584893 1745584893
ci_job_id 912597609 912597609
ci_pipeline_id 63329737 63329737
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-u-qwygag-project-304-concurrent-0-q8btq6ar 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-u-qwygag-project-304-concurrent-0-q8btq6ar 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None
variant iast iast

Summary

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

Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.49.0-SNAPSHOT~a8005e7526, baseline=1.49.0-SNAPSHOT~de593cc116

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.07 s) : 0, 1070385
Total [baseline] (10.583 s) : 0, 10582945
Agent [candidate] (1.068 s) : 0, 1068399
Total [candidate] (10.579 s) : 0, 10578692
section appsec
Agent [baseline] (1.211 s) : 0, 1211128
Total [baseline] (10.755 s) : 0, 10755030
Agent [candidate] (1.199 s) : 0, 1198963
Total [candidate] (10.698 s) : 0, 10697555
section iast
Agent [baseline] (1.192 s) : 0, 1191699
Total [baseline] (10.962 s) : 0, 10962021
Agent [candidate] (1.188 s) : 0, 1187718
Total [candidate] (10.906 s) : 0, 10906289
section profiling
Agent [baseline] (1.313 s) : 0, 1313236
Total [baseline] (10.825 s) : 0, 10824582
Agent [candidate] (1.324 s) : 0, 1323507
Total [candidate] (10.844 s) : 0, 10843764
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.07 s -
Agent appsec 1.211 s 140.743 ms (13.1%)
Agent iast 1.192 s 121.314 ms (11.3%)
Agent profiling 1.313 s 242.85 ms (22.7%)
Total tracing 10.583 s -
Total appsec 10.755 s 172.085 ms (1.6%)
Total iast 10.962 s 379.076 ms (3.6%)
Total profiling 10.825 s 241.637 ms (2.3%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.068 s -
Agent appsec 1.199 s 130.564 ms (12.2%)
Agent iast 1.188 s 119.32 ms (11.2%)
Agent profiling 1.324 s 255.108 ms (23.9%)
Total tracing 10.579 s -
Total appsec 10.698 s 118.862 ms (1.1%)
Total iast 10.906 s 327.597 ms (3.1%)
Total profiling 10.844 s 265.072 ms (2.5%)
gantt
    title petclinic - break down per module: candidate=1.49.0-SNAPSHOT~a8005e7526, baseline=1.49.0-SNAPSHOT~de593cc116

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (732.25 ms) : 0, 732250
BytebuddyAgent [candidate] (727.989 ms) : 0, 727989
GlobalTracer [baseline] (242.204 ms) : 0, 242204
GlobalTracer [candidate] (241.968 ms) : 0, 241968
AppSec [baseline] (55.249 ms) : 0, 55249
AppSec [candidate] (55.745 ms) : 0, 55745
Debugger [baseline] (7.747 ms) : 0, 7747
Debugger [candidate] (9.238 ms) : 0, 9238
Remote Config [baseline] (712.145 µs) : 0, 712
Remote Config [candidate] (719.025 µs) : 0, 719
Telemetry [baseline] (8.55 ms) : 0, 8550
Telemetry [candidate] (9.233 ms) : 0, 9233
section appsec
BytebuddyAgent [baseline] (748.123 ms) : 0, 748123
BytebuddyAgent [candidate] (739.487 ms) : 0, 739487
GlobalTracer [baseline] (237.94 ms) : 0, 237940
GlobalTracer [candidate] (236.029 ms) : 0, 236029
IAST [baseline] (22.012 ms) : 0, 22012
IAST [candidate] (21.697 ms) : 0, 21697
AppSec [baseline] (176.416 ms) : 0, 176416
AppSec [candidate] (174.885 ms) : 0, 174885
Debugger [baseline] (5.925 ms) : 0, 5925
Debugger [candidate] (6.272 ms) : 0, 6272
Remote Config [baseline] (625.038 µs) : 0, 625
Remote Config [candidate] (627.001 µs) : 0, 627
Telemetry [baseline] (7.396 ms) : 0, 7396
Telemetry [candidate] (7.335 ms) : 0, 7335
section iast
BytebuddyAgent [baseline] (843.924 ms) : 0, 843924
BytebuddyAgent [candidate] (841.604 ms) : 0, 841604
GlobalTracer [baseline] (230.197 ms) : 0, 230197
GlobalTracer [candidate] (229.647 ms) : 0, 229647
IAST [baseline] (23.029 ms) : 0, 23029
IAST [candidate] (23.469 ms) : 0, 23469
AppSec [baseline] (53.39 ms) : 0, 53390
AppSec [candidate] (52.106 ms) : 0, 52106
Debugger [baseline] (5.97 ms) : 0, 5970
Debugger [candidate] (5.865 ms) : 0, 5865
Remote Config [baseline] (595.682 µs) : 0, 596
Remote Config [candidate] (598.16 µs) : 0, 598
Telemetry [baseline] (7.939 ms) : 0, 7939
Telemetry [candidate] (7.883 ms) : 0, 7883
section profiling
BytebuddyAgent [baseline] (713.921 ms) : 0, 713921
BytebuddyAgent [candidate] (720.623 ms) : 0, 720623
GlobalTracer [baseline] (376.447 ms) : 0, 376447
GlobalTracer [candidate] (378.243 ms) : 0, 378243
AppSec [baseline] (54.116 ms) : 0, 54116
AppSec [candidate] (53.858 ms) : 0, 53858
Debugger [baseline] (6.171 ms) : 0, 6171
Debugger [candidate] (6.188 ms) : 0, 6188
Remote Config [baseline] (678.749 µs) : 0, 679
Remote Config [candidate] (673.765 µs) : 0, 674
Telemetry [baseline] (8.163 ms) : 0, 8163
Telemetry [candidate] (8.258 ms) : 0, 8258
ProfilingAgent [baseline] (103.5 ms) : 0, 103500
ProfilingAgent [candidate] (105.055 ms) : 0, 105055
Profiling [baseline] (103.524 ms) : 0, 103524
Profiling [candidate] (105.079 ms) : 0, 105079
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.49.0-SNAPSHOT~a8005e7526, baseline=1.49.0-SNAPSHOT~de593cc116

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.062 s) : 0, 1061587
Total [baseline] (8.712 s) : 0, 8711515
Agent [candidate] (1.056 s) : 0, 1055887
Total [candidate] (8.68 s) : 0, 8680214
section iast
Agent [baseline] (1.189 s) : 0, 1188704
Total [baseline] (9.279 s) : 0, 9278929
Agent [candidate] (1.19 s) : 0, 1190236
Total [candidate] (9.246 s) : 0, 9246073
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.192 s) : 0, 1191889
Total [baseline] (9.23 s) : 0, 9229967
Agent [candidate] (1.206 s) : 0, 1205951
Total [candidate] (9.296 s) : 0, 9296210
section iast_TELEMETRY_OFF
Agent [baseline] (1.183 s) : 0, 1182904
Total [baseline] (9.287 s) : 0, 9286852
Agent [candidate] (1.185 s) : 0, 1184811
Total [candidate] (9.211 s) : 0, 9211148
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.062 s -
Agent iast 1.189 s 127.117 ms (12.0%)
Agent iast_HARDCODED_SECRET_DISABLED 1.192 s 130.302 ms (12.3%)
Agent iast_TELEMETRY_OFF 1.183 s 121.317 ms (11.4%)
Total tracing 8.712 s -
Total iast 9.279 s 567.413 ms (6.5%)
Total iast_HARDCODED_SECRET_DISABLED 9.23 s 518.451 ms (6.0%)
Total iast_TELEMETRY_OFF 9.287 s 575.337 ms (6.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.056 s -
Agent iast 1.19 s 134.348 ms (12.7%)
Agent iast_HARDCODED_SECRET_DISABLED 1.206 s 150.064 ms (14.2%)
Agent iast_TELEMETRY_OFF 1.185 s 128.923 ms (12.2%)
Total tracing 8.68 s -
Total iast 9.246 s 565.86 ms (6.5%)
Total iast_HARDCODED_SECRET_DISABLED 9.296 s 615.997 ms (7.1%)
Total iast_TELEMETRY_OFF 9.211 s 530.934 ms (6.1%)
gantt
    title insecure-bank - break down per module: candidate=1.49.0-SNAPSHOT~a8005e7526, baseline=1.49.0-SNAPSHOT~de593cc116

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (724.433 ms) : 0, 724433
BytebuddyAgent [candidate] (721.442 ms) : 0, 721442
GlobalTracer [baseline] (240.023 ms) : 0, 240023
GlobalTracer [candidate] (239.948 ms) : 0, 239948
AppSec [baseline] (55.317 ms) : 0, 55317
AppSec [candidate] (54.376 ms) : 0, 54376
Debugger [baseline] (7.626 ms) : 0, 7626
Debugger [candidate] (6.868 ms) : 0, 6868
Remote Config [baseline] (704.396 µs) : 0, 704
Remote Config [candidate] (694.291 µs) : 0, 694
Telemetry [baseline] (9.844 ms) : 0, 9844
Telemetry [candidate] (9.114 ms) : 0, 9114
section iast
BytebuddyAgent [baseline] (841.809 ms) : 0, 841809
BytebuddyAgent [candidate] (842.708 ms) : 0, 842708
GlobalTracer [baseline] (229.958 ms) : 0, 229958
GlobalTracer [candidate] (230.291 ms) : 0, 230291
IAST [baseline] (24.304 ms) : 0, 24304
IAST [candidate] (24.35 ms) : 0, 24350
AppSec [baseline] (53.27 ms) : 0, 53270
AppSec [candidate] (54.995 ms) : 0, 54995
Debugger [baseline] (5.894 ms) : 0, 5894
Debugger [candidate] (5.953 ms) : 0, 5953
Remote Config [baseline] (617.106 µs) : 0, 617
Remote Config [candidate] (603.506 µs) : 0, 604
Telemetry [baseline] (7.896 ms) : 0, 7896
Telemetry [candidate] (7.928 ms) : 0, 7928
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (843.068 ms) : 0, 843068
BytebuddyAgent [candidate] (855.384 ms) : 0, 855384
GlobalTracer [baseline] (231.455 ms) : 0, 231455
GlobalTracer [candidate] (232.318 ms) : 0, 232318
IAST [baseline] (23.198 ms) : 0, 23198
IAST [candidate] (25.882 ms) : 0, 25882
AppSec [baseline] (54.675 ms) : 0, 54675
AppSec [candidate] (52.54 ms) : 0, 52540
Debugger [baseline] (5.871 ms) : 0, 5871
Debugger [candidate] (5.96 ms) : 0, 5960
Remote Config [baseline] (621.123 µs) : 0, 621
Remote Config [candidate] (601.212 µs) : 0, 601
Telemetry [baseline] (7.919 ms) : 0, 7919
Telemetry [candidate] (8.045 ms) : 0, 8045
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (836.846 ms) : 0, 836846
BytebuddyAgent [candidate] (838.573 ms) : 0, 838573
GlobalTracer [baseline] (229.423 ms) : 0, 229423
GlobalTracer [candidate] (230.363 ms) : 0, 230363
IAST [baseline] (22.368 ms) : 0, 22368
IAST [candidate] (22.422 ms) : 0, 22422
AppSec [baseline] (56.537 ms) : 0, 56537
AppSec [candidate] (55.077 ms) : 0, 55077
Debugger [baseline] (5.978 ms) : 0, 5978
Debugger [candidate] (5.915 ms) : 0, 5915
Remote Config [baseline] (604.908 µs) : 0, 605
Remote Config [candidate] (596.938 µs) : 0, 597
Telemetry [baseline] (7.842 ms) : 0, 7842
Telemetry [candidate] (7.75 ms) : 0, 7750
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-04-25T12:11:50 2025-04-25T12:19:38
git_branch master bbujon/context-propagation
git_commit_date 1745533252 1745581569
git_commit_sha de593cc a8005e7
release_version 1.49.0-SNAPSHOT~de593cc116 1.49.0-SNAPSHOT~a8005e7526
start_time 2025-04-25T12:11:35 2025-04-25T12:19:23
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1745583978 1745583978
ci_job_id 912597610 912597610
ci_pipeline_id 63329737 63329737
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-xpsrxtzn-project-304-concurrent-0-942r2ups 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-xpsrxtzn-project-304-concurrent-0-942r2ups 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant iast iast

Summary

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

Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~a8005e7526, baseline=1.49.0-SNAPSHOT~de593cc116
    dateFormat X
    axisFormat %s
section baseline
no_agent (393.525 µs) : 374, 413
.   : milestone, 394,
iast (532.569 µs) : 509, 556
.   : milestone, 533,
iast_FULL (740.581 µs) : 717, 764
.   : milestone, 741,
iast_GLOBAL (573.95 µs) : 552, 596
.   : milestone, 574,
iast_HARDCODED_SECRET_DISABLED (526.753 µs) : 504, 549
.   : milestone, 527,
iast_INACTIVE (472.023 µs) : 450, 494
.   : milestone, 472,
iast_TELEMETRY_OFF (521.961 µs) : 498, 546
.   : milestone, 522,
tracing (465.123 µs) : 443, 487
.   : milestone, 465,
section candidate
no_agent (385.227 µs) : 366, 405
.   : milestone, 385,
iast (521.075 µs) : 499, 543
.   : milestone, 521,
iast_FULL (743.749 µs) : 721, 766
.   : milestone, 744,
iast_GLOBAL (582.791 µs) : 559, 606
.   : milestone, 583,
iast_HARDCODED_SECRET_DISABLED (531.421 µs) : 509, 553
.   : milestone, 531,
iast_INACTIVE (467.509 µs) : 446, 489
.   : milestone, 468,
iast_TELEMETRY_OFF (511.162 µs) : 488, 534
.   : milestone, 511,
tracing (471.816 µs) : 450, 494
.   : milestone, 472,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 393.525 µs [373.694 µs, 413.356 µs] -
iast 532.569 µs [509.012 µs, 556.126 µs] 139.045 µs (35.3%)
iast_FULL 740.581 µs [716.939 µs, 764.223 µs] 347.056 µs (88.2%)
iast_GLOBAL 573.95 µs [552.047 µs, 595.852 µs] 180.425 µs (45.8%)
iast_HARDCODED_SECRET_DISABLED 526.753 µs [504.348 µs, 549.157 µs] 133.228 µs (33.9%)
iast_INACTIVE 472.023 µs [449.661 µs, 494.385 µs] 78.498 µs (19.9%)
iast_TELEMETRY_OFF 521.961 µs [498.376 µs, 545.546 µs] 128.436 µs (32.6%)
tracing 465.123 µs [443.314 µs, 486.933 µs] 71.599 µs (18.2%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 385.227 µs [365.72 µs, 404.734 µs] -
iast 521.075 µs [498.942 µs, 543.209 µs] 135.849 µs (35.3%)
iast_FULL 743.749 µs [721.302 µs, 766.196 µs] 358.522 µs (93.1%)
iast_GLOBAL 582.791 µs [559.274 µs, 606.309 µs] 197.564 µs (51.3%)
iast_HARDCODED_SECRET_DISABLED 531.421 µs [509.386 µs, 553.455 µs] 146.194 µs (38.0%)
iast_INACTIVE 467.509 µs [446.231 µs, 488.787 µs] 82.282 µs (21.4%)
iast_TELEMETRY_OFF 511.162 µs [488.302 µs, 534.021 µs] 125.935 µs (32.7%)
tracing 471.816 µs [449.807 µs, 493.824 µs] 86.589 µs (22.5%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~a8005e7526, baseline=1.49.0-SNAPSHOT~de593cc116
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.378 ms) : 1358, 1397
.   : milestone, 1378,
appsec (1.763 ms) : 1739, 1787
.   : milestone, 1763,
appsec_no_iast (1.757 ms) : 1733, 1781
.   : milestone, 1757,
code_origins (1.692 ms) : 1665, 1718
.   : milestone, 1692,
iast (1.54 ms) : 1516, 1563
.   : milestone, 1540,
profiling (1.549 ms) : 1524, 1574
.   : milestone, 1549,
tracing (1.494 ms) : 1469, 1519
.   : milestone, 1494,
section candidate
no_agent (1.372 ms) : 1352, 1393
.   : milestone, 1372,
appsec (1.755 ms) : 1732, 1779
.   : milestone, 1755,
appsec_no_iast (1.735 ms) : 1712, 1758
.   : milestone, 1735,
code_origins (1.688 ms) : 1661, 1715
.   : milestone, 1688,
iast (1.518 ms) : 1494, 1542
.   : milestone, 1518,
profiling (1.538 ms) : 1513, 1564
.   : milestone, 1538,
tracing (1.504 ms) : 1479, 1528
.   : milestone, 1504,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.378 ms [1.358 ms, 1.397 ms] -
appsec 1.763 ms [1.739 ms, 1.787 ms] 385.353 µs (28.0%)
appsec_no_iast 1.757 ms [1.733 ms, 1.781 ms] 379.327 µs (27.5%)
code_origins 1.692 ms [1.665 ms, 1.718 ms] 314.062 µs (22.8%)
iast 1.54 ms [1.516 ms, 1.563 ms] 161.896 µs (11.8%)
profiling 1.549 ms [1.524 ms, 1.574 ms] 171.403 µs (12.4%)
tracing 1.494 ms [1.469 ms, 1.519 ms] 116.658 µs (8.5%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.372 ms [1.352 ms, 1.393 ms] -
appsec 1.755 ms [1.732 ms, 1.779 ms] 382.855 µs (27.9%)
appsec_no_iast 1.735 ms [1.712 ms, 1.758 ms] 362.897 µs (26.4%)
code_origins 1.688 ms [1.661 ms, 1.715 ms] 315.64 µs (23.0%)
iast 1.518 ms [1.494 ms, 1.542 ms] 145.658 µs (10.6%)
profiling 1.538 ms [1.513 ms, 1.564 ms] 166.023 µs (12.1%)
tracing 1.504 ms [1.479 ms, 1.528 ms] 131.483 µs (9.6%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master bbujon/context-propagation
git_commit_date 1745533252 1745581569
git_commit_sha de593cc a8005e7
release_version 1.49.0-SNAPSHOT~de593cc116 1.49.0-SNAPSHOT~a8005e7526
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1745584463 1745584463
ci_job_id 912597611 912597611
ci_pipeline_id 63329737 63329737
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-u-qwygag-project-304-concurrent-1-b2tedwth 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-u-qwygag-project-304-concurrent-1-b2tedwth 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant appsec appsec

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.49.0-SNAPSHOT~a8005e7526, baseline=1.49.0-SNAPSHOT~de593cc116
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.476 ms) : 1465, 1488
.   : milestone, 1476,
appsec (2.388 ms) : 2341, 2435
.   : milestone, 2388,
iast (2.159 ms) : 2101, 2218
.   : milestone, 2159,
iast_GLOBAL (2.217 ms) : 2157, 2278
.   : milestone, 2217,
profiling (2.488 ms) : 2305, 2670
.   : milestone, 2488,
tracing (1.984 ms) : 1939, 2029
.   : milestone, 1984,
section candidate
no_agent (1.476 ms) : 1464, 1487
.   : milestone, 1476,
appsec (2.383 ms) : 2336, 2429
.   : milestone, 2383,
iast (2.151 ms) : 2092, 2209
.   : milestone, 2151,
iast_GLOBAL (2.2 ms) : 2142, 2259
.   : milestone, 2200,
profiling (2.009 ms) : 1962, 2056
.   : milestone, 2009,
tracing (1.978 ms) : 1933, 2023
.   : milestone, 1978,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.476 ms [1.465 ms, 1.488 ms] -
appsec 2.388 ms [2.341 ms, 2.435 ms] 911.894 µs (61.8%)
iast 2.159 ms [2.101 ms, 2.218 ms] 683.304 µs (46.3%)
iast_GLOBAL 2.217 ms [2.157 ms, 2.278 ms] 741.316 µs (50.2%)
profiling 2.488 ms [2.305 ms, 2.67 ms] 1.012 ms (68.5%)
tracing 1.984 ms [1.939 ms, 2.029 ms] 507.978 µs (34.4%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.476 ms [1.464 ms, 1.487 ms] -
appsec 2.383 ms [2.336 ms, 2.429 ms] 906.961 µs (61.5%)
iast 2.151 ms [2.092 ms, 2.209 ms] 674.878 µs (45.7%)
iast_GLOBAL 2.2 ms [2.142 ms, 2.259 ms] 724.747 µs (49.1%)
profiling 2.009 ms [1.962 ms, 2.056 ms] 533.235 µs (36.1%)
tracing 1.978 ms [1.933 ms, 2.023 ms] 502.206 µs (34.0%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.49.0-SNAPSHOT~a8005e7526, baseline=1.49.0-SNAPSHOT~de593cc116
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.868 s) : 14868000, 14868000
.   : milestone, 14868000,
appsec (14.961 s) : 14961000, 14961000
.   : milestone, 14961000,
iast (18.921 s) : 18921000, 18921000
.   : milestone, 18921000,
iast_GLOBAL (18.068 s) : 18068000, 18068000
.   : milestone, 18068000,
profiling (14.945 s) : 14945000, 14945000
.   : milestone, 14945000,
tracing (14.687 s) : 14687000, 14687000
.   : milestone, 14687000,
section candidate
no_agent (15.414 s) : 15414000, 15414000
.   : milestone, 15414000,
appsec (14.875 s) : 14875000, 14875000
.   : milestone, 14875000,
iast (18.603 s) : 18603000, 18603000
.   : milestone, 18603000,
iast_GLOBAL (17.792 s) : 17792000, 17792000
.   : milestone, 17792000,
profiling (15.277 s) : 15277000, 15277000
.   : milestone, 15277000,
tracing (15.254 s) : 15254000, 15254000
.   : milestone, 15254000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.868 s [14.868 s, 14.868 s] -
appsec 14.961 s [14.961 s, 14.961 s] 93.0 ms (0.6%)
iast 18.921 s [18.921 s, 18.921 s] 4.053 s (27.3%)
iast_GLOBAL 18.068 s [18.068 s, 18.068 s] 3.2 s (21.5%)
profiling 14.945 s [14.945 s, 14.945 s] 77.0 ms (0.5%)
tracing 14.687 s [14.687 s, 14.687 s] -181.0 ms (-1.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.414 s [15.414 s, 15.414 s] -
appsec 14.875 s [14.875 s, 14.875 s] -539.0 ms (-3.5%)
iast 18.603 s [18.603 s, 18.603 s] 3.189 s (20.7%)
iast_GLOBAL 17.792 s [17.792 s, 17.792 s] 2.378 s (15.4%)
profiling 15.277 s [15.277 s, 15.277 s] -137.0 ms (-0.9%)
tracing 15.254 s [15.254 s, 15.254 s] -160.0 ms (-1.0%)

@PerfectSlayer PerfectSlayer merged commit 856a0d8 into master Apr 30, 2025
461 of 462 checks passed
@PerfectSlayer PerfectSlayer deleted the bbujon/context-propagation branch April 30, 2025 05:49
@github-actions github-actions bot added this to the 1.49.0 milestone Apr 30, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request May 7, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
|
[com.google.cloud:google-cloud-logging](https://github.com/googleapis/java-logging)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`3.22.2` -> `3.22.3` |
|
[com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.28.0` -> `2.28.1` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.48.2` -> `1.49.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.31.36` -> `2.31.37` |
| [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.31.36` -> `2.31.37` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.31.36` -> `2.31.37` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.31.36` -> `2.31.37` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.31.36` -> `2.31.37` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.31.36` -> `2.31.37` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.31.36` -> `2.31.37` |

---

### Release Notes

<details>
<summary>googleapis/java-logging
(com.google.cloud:google-cloud-logging)</summary>

###
[`v3.22.3`](https://github.com/googleapis/java-logging/blob/HEAD/CHANGELOG.md#3223-2025-05-06)

##### Bug Fixes

- **deps:** Update the Java code generator (gapic-generator-java) to
2.56.3
([844f4fa](googleapis/java-logging@844f4fa))

##### Dependencies

- Update dependency com.google.cloud:sdk-platform-java-config to v3.46.3
([#&#8203;1801](googleapis/java-logging#1801))
([d7aa7bc](googleapis/java-logging@d7aa7bc))
- Update dependency com.google.cloud:sdk-platform-java-config to v3.47.0
([#&#8203;1803](googleapis/java-logging#1803))
([5967ffe](googleapis/java-logging@5967ffe))
- Update googleapis/sdk-platform-java action to v2.57.0
([#&#8203;1804](googleapis/java-logging#1804))
([e9a27ec](googleapis/java-logging@e9a27ec))

</details>

<details>
<summary>googleapis/java-datastore
(com.google.cloud:google-cloud-datastore)</summary>

###
[`v2.28.1`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2281-2025-05-06)

##### Dependencies

- Update dependency com.google.cloud:sdk-platform-java-config to v3.47.0
([#&#8203;1841](googleapis/java-datastore#1841))
([ac393e6](googleapis/java-datastore@ac393e6))
- Update googleapis/sdk-platform-java action to v2.57.0
([#&#8203;1842](googleapis/java-datastore#1842))
([0745906](googleapis/java-datastore@0745906))

</details>

<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>

###
[`v1.49.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.49.0):
1.49.0

### Components

#### Configuration at Runtime

- ✨ Add process tags as list to remote config payload
([#&#8203;8705](DataDog/dd-trace-java#8705) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Continuous Integration Visibility

- 🐛 Add span propagation for Pekko scheduled tasks
([#&#8203;8765](DataDog/dd-trace-java#8765) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Update test.retry_reason to use full name of the feature
([#&#8203;8689](DataDog/dd-trace-java#8689) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- 🧹 Remove unused TestEventsHandler methods
([#&#8203;8674](DataDog/dd-trace-java#8674) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))

#### Dynamic Instrumentation

- 🐛 Fix exclude identifiers normalization
([#&#8203;8742](DataDog/dd-trace-java#8742) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Make source file tracking asynchronous
([#&#8203;8684](DataDog/dd-trace-java#8684) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add scope filtering for symbol extraction
([#&#8203;8676](DataDog/dd-trace-java#8676) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add support for [@&#8203;key](https://github.com/key) and
[@&#8203;value](https://github.com/value) for Map filtering
([#&#8203;8669](DataDog/dd-trace-java#8669) -
[@&#8203;jpbempel](https://github.com/jpbempel))

#### Library Injection

- ✨ Add system property to force injection of the tracing
library even though multiple javaagents have been detected
([#&#8203;8697](DataDog/dd-trace-java#8697) -
[@&#8203;cecile75](https://github.com/cecile75))

#### Metrics

- ✨ Allow dogstatsd port to be configurable with
DD_DOGSTATSD_PORT
([#&#8203;8693](DataDog/dd-trace-java#8693) -
[@&#8203;randomanderson](https://github.com/randomanderson))

#### Profiling

- ✨ Bump ddprof-java to 1.25.1
([#&#8203;8750](DataDog/dd-trace-java#8750) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- 🐛 Remove cleanup-on-shutdown for temporary files
([#&#8203;8746](DataDog/dd-trace-java#8746) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨⚡ Replace a regex-based SMAP parser with a hand-crafted
one
([#&#8203;8730](DataDog/dd-trace-java#8730) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Improve error reporting on profiler startup
([#&#8203;8714](DataDog/dd-trace-java#8714) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Exclude ProxyLeakTask exception from exception profiling
([#&#8203;8666](DataDog/dd-trace-java#8666) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Use jvmstat for JDKs 9+ programmatically
([#&#8203;8641](DataDog/dd-trace-java#8641) -
[@&#8203;MattAlp](https://github.com/MattAlp))

#### Telemetry

- ✨ Allow dogstatsd port to be configurable with
DD_DOGSTATSD_PORT
([#&#8203;8693](DataDog/dd-trace-java#8693) -
[@&#8203;randomanderson](https://github.com/randomanderson))
- 🐛 Fix appsec.waf.requests telemetry metric
([#&#8203;8644](DataDog/dd-trace-java#8644) -
[@&#8203;jandro996](https://github.com/jandro996))

#### Tracer core

- ✨ Exclude jackson afterburner dynamic classes from
instrumentation
([#&#8203;8747](DataDog/dd-trace-java#8747) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Introduce Java 8 bytecode bridge for instrumentation API
([#&#8203;8736](DataDog/dd-trace-java#8736) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ⚡🧹 Use byte-buddy classes optimized for Java8+
([#&#8203;8735](DataDog/dd-trace-java#8735) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🐛 Do not set the hibernate or datanucleus span service name when
disabled
([#&#8203;8727](DataDog/dd-trace-java#8727) -
[@&#8203;ygree](https://github.com/ygree))
- ✨ Update bytebuddy and ASM to support JDK 24
([#&#8203;8720](DataDog/dd-trace-java#8720) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))
- 🐛 Turn off JDK socket support by default
([#&#8203;8715](DataDog/dd-trace-java#8715) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🐛 Log warning when trace buffer overflow occurs
([#&#8203;8712](DataDog/dd-trace-java#8712) -
[@&#8203;ygree](https://github.com/ygree))
- ✨🧪 Introducing an internal integration name
([#&#8203;8708](DataDog/dd-trace-java#8708) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add process tags to client stats payload
([#&#8203;8704](DataDog/dd-trace-java#8704) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Collect process tags for tracing
([#&#8203;8698](DataDog/dd-trace-java#8698) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Stable Config file: target system properties in
process_arguments and support template variables in YamlParser
([#&#8203;8690](DataDog/dd-trace-java#8690) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- ✨⚡ Use prefix trie for proxy ignores
([#&#8203;8678](DataDog/dd-trace-java#8678) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Allow agent to be automatically injected when running aside
Log4J patch agent
([#&#8203;8648](DataDog/dd-trace-java#8648) -
[@&#8203;paullegranddc](https://github.com/paullegranddc))
- ✨ Use jvmstat for JDKs 9+ programmatically
([#&#8203;8641](DataDog/dd-trace-java#8641) -
[@&#8203;MattAlp](https://github.com/MattAlp))

#### Tracer internal logging

- 🐛 Delete print line
([#&#8203;8686](DataDog/dd-trace-java#8686) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))

### Instrumentations

#### Akka instrumentation

- 🐛 Handle reentrant scope cleanup in Akka/Pekko actor
instrumentations
([#&#8203;8722](DataDog/dd-trace-java#8722) -
[@&#8203;mcculls](https://github.com/mcculls))

#### Apache Spark instrumentation

- ✨ Use OpenLineage root parent information to generate trace
id ([#&#8203;8726](DataDog/dd-trace-java#8726)
- [@&#8203;mobuchowski](https://github.com/mobuchowski))
- ✨ Spark job cancellation no longer marks application as
failed
([#&#8203;8701](DataDog/dd-trace-java#8701) -
[@&#8203;paul-laffon-dd](https://github.com/paul-laffon-dd))

#### JDBC instrumentation

- 💡 Add support for sybase tds jdbc driver
([#&#8203;8764](DataDog/dd-trace-java#8764) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Kotlin instrumentation

- 🐛 Take defensive copy of parent scope stack when closing nested
coroutines
([#&#8203;8749](DataDog/dd-trace-java#8749) -
[@&#8203;mcculls](https://github.com/mcculls))

#### Reactor instrumentation

- ✨⚡ Do not inspect reactor context when not needed
([#&#8203;8745](DataDog/dd-trace-java#8745) -
[@&#8203;amarziali](https://github.com/amarziali))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am
every weekday" in timezone Australia/Melbourne, Automerge - At any time
(no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

GitOrigin-RevId: 795f347ae34d056efc1194c2f606cee7bca1beea
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.

2 participants