Skip to content

Prevent possible NPE calculating Kafka record header size - #8292

Merged
ygree merged 1 commit into
masterfrom
ygree/fix-npe-computePayloadSizeBytes
Jan 28, 2025
Merged

Prevent possible NPE calculating Kafka record header size#8292
ygree merged 1 commit into
masterfrom
ygree/fix-npe-computePayloadSizeBytes

Conversation

@ygree

@ygreeygree commented Jan 27, 2025

Copy link
Copy Markdown
Contributor

What Does This Do

Prevents possible NPE

java.lang.NullPointerException: Cannotreadthearraylengthbecausethereturnvalueoforg.apache.kafka.common.header.Header.value()” isnullatdatadog.trace.instrumentation.kafka_common.Utils.computePayloadSizeBytes(Utils.java:17)
atdatadog.trace.instrumentation.kafka_clients38.TracingIterator.startNewRecordSpan(TracingIterator.java:107)
atdatadog.trace.instrumentation.kafka_clients38.TracingIterator.next(TracingIterator.java:69)
atdatadog.trace.instrumentation.kafka_clients38.TracingIterator.next(TracingIterator.java:30)
at (redacted: 6frames)
atjava.base/java.util.concurrent.CompletableFuture$AsyncRun.run(UnknownSource)
atjava.base/java.lang.Thread.run(UnknownSource)

Motivation

When a Kafka record header has a null value, it fails to silently create a span

Additional Notes

Contributor Checklist

Jira ticket: DSMS-25

@ygreeygree added type: bug fix Bug fix inst: kafka Kafka instrumentation labels Jan 27, 2025
@ygreeygree self-assigned this Jan 27, 2025
@ygree
ygree requested a review from a team as a code ownerJanuary 27, 2025 23:05
@pr-commenter

Copy link
Copy Markdown

Kafka / producer-benchmark

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmasterygree/fix-npe-computePayloadSizeBytes
git_commit_date17380009101738018592
git_commit_sha8c6ec6794a3a5b
See matching parameters
BaselineCandidate
ci_job_date17380201481738020148
ci_job_id782716828782716828
ci_pipeline_id5414246454142464
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
jdkVersion11.0.2511.0.25
jmhVersion1.361.36
jvm/usr/lib/jvm/java-11-openjdk-amd64/bin/java/usr/lib/jvm/java-11-openjdk-amd64/bin/java
jvmArgs-Dfile.encoding=UTF-8 -Djava.io.tmpdir=/go/src/github.com/DataDog/apm-reliability/dd-trace-java/platform/src/producer-benchmark/build/tmp/jmh -Duser.country=US -Duser.language=en -Duser.variant-Dfile.encoding=UTF-8 -Djava.io.tmpdir=/go/src/github.com/DataDog/apm-reliability/dd-trace-java/platform/src/producer-benchmark/build/tmp/jmh -Duser.country=US -Duser.language=en -Duser.variant
vmNameOpenJDK 64-Bit Server VMOpenJDK 64-Bit Server VM
vmVersion11.0.25+9-post-Ubuntu-1ubuntu122.0411.0.25+9-post-Ubuntu-1ubuntu122.04

Summary

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

See unchanged results
scenarioΔ mean throughput
scenario:not-instrumented/KafkaProduceBenchmark.benchProducesame
scenario:only-tracing-dsm-disabled-benchmarks/KafkaProduceBenchmark.benchProducesame
scenario:only-tracing-dsm-enabled-benchmarks/KafkaProduceBenchmark.benchProducesame

@pr-commenter

Copy link
Copy Markdown

Benchmarks

Startup

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmasterygree/fix-npe-computePayloadSizeBytes
git_commit_date17380009101738018592
git_commit_sha8c6ec6794a3a5b
release_version1.46.0-SNAPSHOT~8c6ec677491.46.0-SNAPSHOT~94a3a5b304
See matching parameters
BaselineCandidate
applicationinsecure-bankinsecure-bank
ci_job_date17380214021738021402
ci_job_id782716824782716824
ci_pipeline_id5414246454142464
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-8wlcx2s5-project-304-concurrent-0-h7k2wp4r 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/LinuxLinux runner-8wlcx2s5-project-304-concurrent-0-h7k2wp4r 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
moduleAgentAgent
parentNoneNone
variantiastiast

Summary

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

Startup time reports for petclinic
gantt
title petclinic - global startup overhead: candidate=1.46.0-SNAPSHOT~94a3a5b304, baseline=1.46.0-SNAPSHOT~8c6ec67749
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.041 s) : 0, 1041400
Total [baseline] (10.42 s) : 0, 10419750
Agent [candidate] (1.039 s) : 0, 1038739
Total [candidate] (10.457 s) : 0, 10456834
section appsec
Agent [baseline] (1.181 s) : 0, 1181046
Total [baseline] (10.735 s) : 0, 10735406
Agent [candidate] (1.181 s) : 0, 1181121
Total [candidate] (10.77 s) : 0, 10770097
section iast
Agent [baseline] (1.171 s) : 0, 1170508
Total [baseline] (10.905 s) : 0, 10904943
Agent [candidate] (1.176 s) : 0, 1176159
Total [candidate] (10.945 s) : 0, 10945277
section profiling
Agent [baseline] (1.274 s) : 0, 1274361
Total [baseline] (10.912 s) : 0, 10911925
Agent [candidate] (1.26 s) : 0, 1259942
Total [candidate] (10.831 s) : 0, 10830819
Loading
  • baseline results
ModuleVariantDurationΔ tracing
Agenttracing1.041 s-
Agentappsec1.181 s139.647 ms (13.4%)
Agentiast1.171 s129.108 ms (12.4%)
Agentprofiling1.274 s232.962 ms (22.4%)
Totaltracing10.42 s-
Totalappsec10.735 s315.657 ms (3.0%)
Totaliast10.905 s485.193 ms (4.7%)
Totalprofiling10.912 s492.175 ms (4.7%)
  • candidate results
ModuleVariantDurationΔ tracing
Agenttracing1.039 s-
Agentappsec1.181 s142.382 ms (13.7%)
Agentiast1.176 s137.419 ms (13.2%)
Agentprofiling1.26 s221.203 ms (21.3%)
Totaltracing10.457 s-
Totalappsec10.77 s313.263 ms (3.0%)
Totaliast10.945 s488.443 ms (4.7%)
Totalprofiling10.831 s373.985 ms (3.6%)
gantt
title petclinic - break down per module: candidate=1.46.0-SNAPSHOT~94a3a5b304, baseline=1.46.0-SNAPSHOT~8c6ec67749
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (715.599 ms) : 0, 715599
BytebuddyAgent [candidate] (713.71 ms) : 0, 713710
GlobalTracer [baseline] (240.314 ms) : 0, 240314
GlobalTracer [candidate] (240.176 ms) : 0, 240176
AppSec [baseline] (55.825 ms) : 0, 55825
AppSec [candidate] (55.748 ms) : 0, 55748
Remote Config [baseline] (724.209 µs) : 0, 724
Remote Config [candidate] (723.691 µs) : 0, 724
Telemetry [baseline] (13.689 ms) : 0, 13689
Telemetry [candidate] (13.069 ms) : 0, 13069
section appsec
BytebuddyAgent [baseline] (732.857 ms) : 0, 732857
BytebuddyAgent [candidate] (733.293 ms) : 0, 733293
GlobalTracer [baseline] (237.427 ms) : 0, 237427
GlobalTracer [candidate] (237.263 ms) : 0, 237263
AppSec [baseline] (176.848 ms) : 0, 176848
AppSec [candidate] (176.772 ms) : 0, 176772
Remote Config [baseline] (660.471 µs) : 0, 660
Remote Config [candidate] (654.706 µs) : 0, 655
Telemetry [baseline] (8.245 ms) : 0, 8245
Telemetry [candidate] (8.202 ms) : 0, 8202
IAST [baseline] (19.392 ms) : 0, 19392
IAST [candidate] (19.265 ms) : 0, 19265
section iast
BytebuddyAgent [baseline] (834.912 ms) : 0, 834912
BytebuddyAgent [candidate] (839.076 ms) : 0, 839076
GlobalTracer [baseline] (231.231 ms) : 0, 231231
GlobalTracer [candidate] (232.097 ms) : 0, 232097
AppSec [baseline] (58.31 ms) : 0, 58310
AppSec [candidate] (58.651 ms) : 0, 58651
Remote Config [baseline] (654.467 µs) : 0, 654
Remote Config [candidate] (657.136 µs) : 0, 657
Telemetry [baseline] (8.712 ms) : 0, 8712
Telemetry [candidate] (8.827 ms) : 0, 8827
IAST [baseline] (21.391 ms) : 0, 21391
IAST [candidate] (21.452 ms) : 0, 21452
section profiling
ProfilingAgent [baseline] (97.308 ms) : 0, 97308
ProfilingAgent [candidate] (96.458 ms) : 0, 96458
BytebuddyAgent [baseline] (714.829 ms) : 0, 714829
BytebuddyAgent [candidate] (705.642 ms) : 0, 705642
GlobalTracer [baseline] (353.957 ms) : 0, 353957
GlobalTracer [candidate] (351.352 ms) : 0, 351352
AppSec [baseline] (55.869 ms) : 0, 55869
AppSec [candidate] (54.509 ms) : 0, 54509
Remote Config [baseline] (727.375 µs) : 0, 727
Remote Config [candidate] (721.927 µs) : 0, 722
Telemetry [baseline] (9.106 ms) : 0, 9106
Telemetry [candidate] (8.974 ms) : 0, 8974
Profiling [baseline] (97.332 ms) : 0, 97332
Profiling [candidate] (96.482 ms) : 0, 96482
Loading
Startup time reports for insecure-bank
gantt
title insecure-bank - global startup overhead: candidate=1.46.0-SNAPSHOT~94a3a5b304, baseline=1.46.0-SNAPSHOT~8c6ec67749
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.037 s) : 0, 1036566
Total [baseline] (8.623 s) : 0, 8623120
Agent [candidate] (1.049 s) : 0, 1049018
Total [candidate] (8.64 s) : 0, 8640233
section iast
Agent [baseline] (1.171 s) : 0, 1170756
Total [baseline] (9.281 s) : 0, 9280594
Agent [candidate] (1.179 s) : 0, 1179352
Total [candidate] (9.258 s) : 0, 9257547
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.168 s) : 0, 1168012
Total [baseline] (9.168 s) : 0, 9167548
Agent [candidate] (1.173 s) : 0, 1173152
Total [candidate] (9.164 s) : 0, 9164425
section iast_TELEMETRY_OFF
Agent [baseline] (1.162 s) : 0, 1162301
Total [baseline] (9.224 s) : 0, 9224344
Agent [candidate] (1.164 s) : 0, 1163678
Total [candidate] (9.203 s) : 0, 9202623
Loading
  • baseline results
ModuleVariantDurationΔ tracing
Agenttracing1.037 s-
Agentiast1.171 s134.19 ms (12.9%)
Agentiast_HARDCODED_SECRET_DISABLED1.168 s131.445 ms (12.7%)
Agentiast_TELEMETRY_OFF1.162 s125.735 ms (12.1%)
Totaltracing8.623 s-
Totaliast9.281 s657.475 ms (7.6%)
Totaliast_HARDCODED_SECRET_DISABLED9.168 s544.429 ms (6.3%)
Totaliast_TELEMETRY_OFF9.224 s601.224 ms (7.0%)
  • candidate results
ModuleVariantDurationΔ tracing
Agenttracing1.049 s-
Agentiast1.179 s130.335 ms (12.4%)
Agentiast_HARDCODED_SECRET_DISABLED1.173 s124.134 ms (11.8%)
Agentiast_TELEMETRY_OFF1.164 s114.66 ms (10.9%)
Totaltracing8.64 s-
Totaliast9.258 s617.315 ms (7.1%)
Totaliast_HARDCODED_SECRET_DISABLED9.164 s524.193 ms (6.1%)
Totaliast_TELEMETRY_OFF9.203 s562.39 ms (6.5%)
gantt
title insecure-bank - break down per module: candidate=1.46.0-SNAPSHOT~94a3a5b304, baseline=1.46.0-SNAPSHOT~8c6ec67749
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (714.139 ms) : 0, 714139
BytebuddyAgent [candidate] (723.097 ms) : 0, 723097
GlobalTracer [baseline] (239.258 ms) : 0, 239258
GlobalTracer [candidate] (242.497 ms) : 0, 242497
AppSec [baseline] (55.097 ms) : 0, 55097
AppSec [candidate] (55.714 ms) : 0, 55714
Remote Config [baseline] (704.417 µs) : 0, 704
Remote Config [candidate] (728.064 µs) : 0, 728
Telemetry [baseline] (12.18 ms) : 0, 12180
Telemetry [candidate] (11.648 ms) : 0, 11648
section iast
BytebuddyAgent [baseline] (833.939 ms) : 0, 833939
BytebuddyAgent [candidate] (841.45 ms) : 0, 841450
GlobalTracer [baseline] (232.202 ms) : 0, 232202
GlobalTracer [candidate] (232.817 ms) : 0, 232817
AppSec [baseline] (58.71 ms) : 0, 58710
AppSec [candidate] (58.528 ms) : 0, 58528
IAST [baseline] (21.314 ms) : 0, 21314
IAST [candidate] (21.484 ms) : 0, 21484
Remote Config [baseline] (654.338 µs) : 0, 654
Remote Config [candidate] (652.7 µs) : 0, 653
Telemetry [baseline] (8.679 ms) : 0, 8679
Telemetry [candidate] (8.796 ms) : 0, 8796
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (833.588 ms) : 0, 833588
BytebuddyAgent [candidate] (837.738 ms) : 0, 837738
GlobalTracer [baseline] (230.095 ms) : 0, 230095
GlobalTracer [candidate] (230.98 ms) : 0, 230980
AppSec [baseline] (58.277 ms) : 0, 58277
AppSec [candidate] (58.213 ms) : 0, 58213
IAST [baseline] (21.422 ms) : 0, 21422
IAST [candidate] (21.29 ms) : 0, 21290
Remote Config [baseline] (650.557 µs) : 0, 651
Remote Config [candidate] (656.469 µs) : 0, 656
Telemetry [baseline] (8.706 ms) : 0, 8706
Telemetry [candidate] (8.71 ms) : 0, 8710
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (828.58 ms) : 0, 828580
BytebuddyAgent [candidate] (829.71 ms) : 0, 829710
GlobalTracer [baseline] (229.822 ms) : 0, 229822
GlobalTracer [candidate] (230.652 ms) : 0, 230652
AppSec [baseline] (58.488 ms) : 0, 58488
AppSec [candidate] (57.927 ms) : 0, 57927
IAST [baseline] (20.922 ms) : 0, 20922
IAST [candidate] (20.869 ms) : 0, 20869
Remote Config [baseline] (647.303 µs) : 0, 647
Remote Config [candidate] (643.486 µs) : 0, 643
Telemetry [baseline] (8.585 ms) : 0, 8585
Telemetry [candidate] (8.652 ms) : 0, 8652
Loading

Load

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
end_time2025-01-27T23:15:262025-01-27T23:22:32
git_branchmasterygree/fix-npe-computePayloadSizeBytes
git_commit_date17380009101738018592
git_commit_sha8c6ec6794a3a5b
release_version1.46.0-SNAPSHOT~8c6ec677491.46.0-SNAPSHOT~94a3a5b304
start_time2025-01-27T23:15:122025-01-27T23:22:18
See matching parameters
BaselineCandidate
applicationinsecure-bankinsecure-bank
ci_job_date17380205101738020510
ci_job_id782716825782716825
ci_pipeline_id5414246454142464
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-fgow3nxt-project-304-concurrent-1-m5zzdgw6 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/LinuxLinux runner-fgow3nxt-project-304-concurrent-1-m5zzdgw6 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
variantiastiast

Summary

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

Request duration reports for petclinic
gantt
title petclinic - request duration [CI 0.99] : candidate=1.46.0-SNAPSHOT~94a3a5b304, baseline=1.46.0-SNAPSHOT~8c6ec67749
dateFormat X
axisFormat %s
section baseline
no_agent (1.371 ms) : 1351, 1390
. : milestone, 1371,
appsec (1.749 ms) : 1725, 1773
. : milestone, 1749,
appsec_no_iast (1.785 ms) : 1759, 1810
. : milestone, 1785,
iast (1.511 ms) : 1487, 1534
. : milestone, 1511,
profiling (1.541 ms) : 1516, 1566
. : milestone, 1541,
tracing (1.496 ms) : 1471, 1521
. : milestone, 1496,
section candidate
no_agent (1.365 ms) : 1344, 1386
. : milestone, 1365,
appsec (1.753 ms) : 1727, 1778
. : milestone, 1753,
appsec_no_iast (1.747 ms) : 1723, 1772
. : milestone, 1747,
iast (1.514 ms) : 1490, 1537
. : milestone, 1514,
profiling (1.506 ms) : 1483, 1529
. : milestone, 1506,
tracing (1.473 ms) : 1448, 1498
. : milestone, 1473,
Loading
  • baseline results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent1.371 ms [1.351 ms, 1.39 ms]-
appsec1.749 ms [1.725 ms, 1.773 ms]378.268 µs (27.6%)
appsec_no_iast1.785 ms [1.759 ms, 1.81 ms]413.705 µs (30.2%)
iast1.511 ms [1.487 ms, 1.534 ms]139.696 µs (10.2%)
profiling1.541 ms [1.516 ms, 1.566 ms]170.373 µs (12.4%)
tracing1.496 ms [1.471 ms, 1.521 ms]125.421 µs (9.1%)
  • candidate results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent1.365 ms [1.344 ms, 1.386 ms]-
appsec1.753 ms [1.727 ms, 1.778 ms]387.681 µs (28.4%)
appsec_no_iast1.747 ms [1.723 ms, 1.772 ms]382.138 µs (28.0%)
iast1.514 ms [1.49 ms, 1.537 ms]148.492 µs (10.9%)
profiling1.506 ms [1.483 ms, 1.529 ms]141.071 µs (10.3%)
tracing1.473 ms [1.448 ms, 1.498 ms]107.949 µs (7.9%)
Request duration reports for insecure-bank
gantt
title insecure-bank - request duration [CI 0.99] : candidate=1.46.0-SNAPSHOT~94a3a5b304, baseline=1.46.0-SNAPSHOT~8c6ec67749
dateFormat X
axisFormat %s
section baseline
no_agent (381.452 µs) : 362, 401
. : milestone, 381,
iast (515.415 µs) : 492, 539
. : milestone, 515,
iast_FULL (746.242 µs) : 723, 769
. : milestone, 746,
iast_GLOBAL (561.703 µs) : 540, 584
. : milestone, 562,
iast_HARDCODED_SECRET_DISABLED (518.301 µs) : 496, 541
. : milestone, 518,
iast_INACTIVE (463.713 µs) : 442, 486
. : milestone, 464,
iast_TELEMETRY_OFF (497.199 µs) : 474, 521
. : milestone, 497,
tracing (458.452 µs) : 437, 479
. : milestone, 458,
section candidate
no_agent (384.481 µs) : 365, 404
. : milestone, 384,
iast (511.587 µs) : 488, 535
. : milestone, 512,
iast_FULL (741.483 µs) : 718, 765
. : milestone, 741,
iast_GLOBAL (557.713 µs) : 535, 580
. : milestone, 558,
iast_HARDCODED_SECRET_DISABLED (511.011 µs) : 488, 534
. : milestone, 511,
iast_INACTIVE (458.127 µs) : 437, 479
. : milestone, 458,
iast_TELEMETRY_OFF (505.046 µs) : 481, 529
. : milestone, 505,
tracing (455.857 µs) : 435, 477
. : milestone, 456,
Loading
  • baseline results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent381.452 µs [361.964 µs, 400.94 µs]-
iast515.415 µs [492.147 µs, 538.683 µs]133.963 µs (35.1%)
iast_FULL746.242 µs [723.19 µs, 769.295 µs]364.791 µs (95.6%)
iast_GLOBAL561.703 µs [539.565 µs, 583.842 µs]180.252 µs (47.3%)
iast_HARDCODED_SECRET_DISABLED518.301 µs [495.515 µs, 541.087 µs]136.849 µs (35.9%)
iast_INACTIVE463.713 µs [441.846 µs, 485.58 µs]82.261 µs (21.6%)
iast_TELEMETRY_OFF497.199 µs [473.886 µs, 520.511 µs]115.747 µs (30.3%)
tracing458.452 µs [437.413 µs, 479.49 µs]77.0 µs (20.2%)
  • candidate results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent384.481 µs [364.737 µs, 404.226 µs]-
iast511.587 µs [488.231 µs, 534.943 µs]127.106 µs (33.1%)
iast_FULL741.483 µs [718.209 µs, 764.758 µs]357.002 µs (92.9%)
iast_GLOBAL557.713 µs [535.058 µs, 580.367 µs]173.232 µs (45.1%)
iast_HARDCODED_SECRET_DISABLED511.011 µs [488.479 µs, 533.543 µs]126.53 µs (32.9%)
iast_INACTIVE458.127 µs [437.041 µs, 479.212 µs]73.645 µs (19.2%)
iast_TELEMETRY_OFF505.046 µs [481.282 µs, 528.81 µs]120.565 µs (31.4%)
tracing455.857 µs [435.01 µs, 476.705 µs]71.376 µs (18.6%)

Dacapo

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmasterygree/fix-npe-computePayloadSizeBytes
git_commit_date17380009101738018592
git_commit_sha8c6ec6794a3a5b
release_version1.46.0-SNAPSHOT~8c6ec677491.46.0-SNAPSHOT~94a3a5b304
See matching parameters
BaselineCandidate
applicationbiojavabiojava
ci_job_date17380210941738021094
ci_job_id782716826782716826
ci_pipeline_id5414246454142464
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-8wlcx2s5-project-304-concurrent-1-i5efua1o 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/LinuxLinux runner-8wlcx2s5-project-304-concurrent-1-i5efua1o 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:50:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
variantappsecappsec

Summary

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

Execution time for tomcat
gantt
title tomcat - execution time [CI 0.99] : candidate=1.46.0-SNAPSHOT~94a3a5b304, baseline=1.46.0-SNAPSHOT~8c6ec67749
dateFormat X
axisFormat %s
section baseline
no_agent (1.477 ms) : 1465, 1488
. : milestone, 1477,
appsec (2.368 ms) : 2324, 2411
. : milestone, 2368,
iast (2.118 ms) : 2062, 2173
. : milestone, 2118,
iast_GLOBAL (2.167 ms) : 2112, 2222
. : milestone, 2167,
profiling (1.966 ms) : 1923, 2009
. : milestone, 1966,
tracing (1.951 ms) : 1909, 1993
. : milestone, 1951,
section candidate
no_agent (1.477 ms) : 1466, 1489
. : milestone, 1477,
appsec (2.377 ms) : 2333, 2420
. : milestone, 2377,
iast (2.117 ms) : 2062, 2172
. : milestone, 2117,
iast_GLOBAL (2.161 ms) : 2105, 2216
. : milestone, 2161,
profiling (1.991 ms) : 1946, 2035
. : milestone, 1991,
tracing (1.954 ms) : 1912, 1997
. : milestone, 1954,
Loading
  • baseline results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent1.477 ms [1.465 ms, 1.488 ms]-
appsec2.368 ms [2.324 ms, 2.411 ms]891.169 µs (60.4%)
iast2.118 ms [2.062 ms, 2.173 ms]641.179 µs (43.4%)
iast_GLOBAL2.167 ms [2.112 ms, 2.222 ms]690.637 µs (46.8%)
profiling1.966 ms [1.923 ms, 2.009 ms]489.305 µs (33.1%)
tracing1.951 ms [1.909 ms, 1.993 ms]474.484 µs (32.1%)
  • candidate results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent1.477 ms [1.466 ms, 1.489 ms]-
appsec2.377 ms [2.333 ms, 2.42 ms]899.533 µs (60.9%)
iast2.117 ms [2.062 ms, 2.172 ms]639.852 µs (43.3%)
iast_GLOBAL2.161 ms [2.105 ms, 2.216 ms]683.559 µs (46.3%)
profiling1.991 ms [1.946 ms, 2.035 ms]513.323 µs (34.7%)
tracing1.954 ms [1.912 ms, 1.997 ms]477.037 µs (32.3%)
Execution time for biojava
gantt
title biojava - execution time [CI 0.99] : candidate=1.46.0-SNAPSHOT~94a3a5b304, baseline=1.46.0-SNAPSHOT~8c6ec67749
dateFormat X
axisFormat %s
section baseline
no_agent (14.871 s) : 14871000, 14871000
. : milestone, 14871000,
appsec (15.024 s) : 15024000, 15024000
. : milestone, 15024000,
iast (18.761 s) : 18761000, 18761000
. : milestone, 18761000,
iast_GLOBAL (17.876 s) : 17876000, 17876000
. : milestone, 17876000,
profiling (15.215 s) : 15215000, 15215000
. : milestone, 15215000,
tracing (14.857 s) : 14857000, 14857000
. : milestone, 14857000,
section candidate
no_agent (15.004 s) : 15004000, 15004000
. : milestone, 15004000,
appsec (14.858 s) : 14858000, 14858000
. : milestone, 14858000,
iast (18.485 s) : 18485000, 18485000
. : milestone, 18485000,
iast_GLOBAL (18.129 s) : 18129000, 18129000
. : milestone, 18129000,
profiling (15.164 s) : 15164000, 15164000
. : milestone, 15164000,
tracing (15.059 s) : 15059000, 15059000
. : milestone, 15059000,
Loading
  • baseline results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent14.871 s [14.871 s, 14.871 s]-
appsec15.024 s [15.024 s, 15.024 s]153.0 ms (1.0%)
iast18.761 s [18.761 s, 18.761 s]3.89 s (26.2%)
iast_GLOBAL17.876 s [17.876 s, 17.876 s]3.005 s (20.2%)
profiling15.215 s [15.215 s, 15.215 s]344.0 ms (2.3%)
tracing14.857 s [14.857 s, 14.857 s]-14.0 ms (-0.1%)
  • candidate results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent15.004 s [15.004 s, 15.004 s]-
appsec14.858 s [14.858 s, 14.858 s]-146.0 ms (-1.0%)
iast18.485 s [18.485 s, 18.485 s]3.481 s (23.2%)
iast_GLOBAL18.129 s [18.129 s, 18.129 s]3.125 s (20.8%)
profiling15.164 s [15.164 s, 15.164 s]160.0 ms (1.1%)
tracing15.059 s [15.059 s, 15.059 s]55.0 ms (0.4%)

@pr-commenter

Copy link
Copy Markdown

Kafka / consumer-benchmark

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmasterygree/fix-npe-computePayloadSizeBytes
git_commit_date17380009101738018592
git_commit_sha8c6ec6794a3a5b
See matching parameters
BaselineCandidate
ci_job_date17380201821738020182
ci_job_id782716829782716829
ci_pipeline_id5414246454142464
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
jdkVersion11.0.2511.0.25
jmhVersion1.361.36
jvm/usr/lib/jvm/java-11-openjdk-amd64/bin/java/usr/lib/jvm/java-11-openjdk-amd64/bin/java
jvmArgs-Dfile.encoding=UTF-8 -Djava.io.tmpdir=/go/src/github.com/DataDog/apm-reliability/dd-trace-java/platform/src/consumer-benchmark/build/tmp/jmh -Duser.country=US -Duser.language=en -Duser.variant-Dfile.encoding=UTF-8 -Djava.io.tmpdir=/go/src/github.com/DataDog/apm-reliability/dd-trace-java/platform/src/consumer-benchmark/build/tmp/jmh -Duser.country=US -Duser.language=en -Duser.variant
vmNameOpenJDK 64-Bit Server VMOpenJDK 64-Bit Server VM
vmVersion11.0.25+9-post-Ubuntu-1ubuntu122.0411.0.25+9-post-Ubuntu-1ubuntu122.04

Summary

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

scenarioΔ mean throughput
scenario:only-tracing-dsm-disabled-benchmarks/KafkaConsumerBenchmark.benchConsumebetter
[+4719.646op/s; +13515.195op/s] or [+1.537%; +4.402%]
See unchanged results
scenarioΔ mean throughput
scenario:not-instrumented/KafkaConsumerBenchmark.benchConsumesame
scenario:only-tracing-dsm-enabled-benchmarks/KafkaConsumerBenchmark.benchConsumesame

@ygree
ygree enabled auto-merge (squash) January 28, 2025 00:11
@ygree
ygree merged commit e379305 into masterJan 28, 2025
@ygree
ygree deleted the ygree/fix-npe-computePayloadSizeBytes branch January 28, 2025 07:40
@github-actionsgithub-actionsBot added this to the 1.46.0 milestone Jan 28, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Jan 31, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
|
[com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.25.4` -> `2.26.0` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.45.2` -> `1.46.0` |
| [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.45.2` -> `1.46.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
---
### Release Notes
<details>
<summary>googleapis/java-datastore
(com.google.cloud:google-cloud-datastore)</summary>
###
[`v2.26.0`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2260-2025-01-29)
##### Features
- Add firestoreInDatastoreMode for datastore emulator
([#&#8203;1698](googleapis/java-datastore#1698))
([50f106d](googleapis/java-datastore@50f106d))
##### Dependencies
- Update dependency com.google.cloud:sdk-platform-java-config to v3.42.0
([#&#8203;1725](googleapis/java-datastore#1725))
([1cbaf22](googleapis/java-datastore@1cbaf22))
</details>
<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>
###
[`v1.46.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.46.0):
1.46.0
##### Breaking Changes
> \[!WARNING]
> jnr-unixsocket is now an external dependency of dd-trace-ot and must
be included when deploying dd-trace-ot.
> \[!NOTE]
> The API `TracerScope.setAsync(boolean)`, used to manually control
asynchronous span propagation, does no more apply to the scope instance
but to the active span scope.
##### Components
##### Application Security Management (IAST)
- 🐛 Fix String.replace instrumentation for IAST
([#&#8203;8281](DataDog/dd-trace-java#8281) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Apply the standard nomenclature to the stacktrace configs
([#&#8203;8244](DataDog/dd-trace-java#8244) -
[@&#8203;jandro996](https://github.com/jandro996))
- 🐛 Exclude false positive weak randomness
([#&#8203;8232](DataDog/dd-trace-java#8232) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Propagation of translateEscapes of String class
([#&#8203;8186](DataDog/dd-trace-java#8186) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))
- ✨ Add security control metrics
([#&#8203;8175](DataDog/dd-trace-java#8175) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Increase IAST propagation to StringBuffer setLength
([#&#8203;8128](DataDog/dd-trace-java#8128) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Add IAST taint tracking for DB values
([#&#8203;8072](DataDog/dd-trace-java#8072) -
[@&#8203;Mariovido](https://github.com/Mariovido))
##### Application Security Management (WAF)
- 🐛 Prevents a NPE when there is no subscriber for user events
([#&#8203;8258](DataDog/dd-trace-java#8258) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Apply the standard nomenclature to the stacktrace configs
([#&#8203;8244](DataDog/dd-trace-java#8244) -
[@&#8203;jandro996](https://github.com/jandro996))
- 🐛 Ensure cached subscriptions are cleared on reconfiguration via
RC ([#&#8203;8229](DataDog/dd-trace-java#8229)
-
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Add support for session tracking in Vertx
([#&#8203;8167](DataDog/dd-trace-java#8167) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Create span tag: \_dd.appsec.rasp.timeout
([#&#8203;8269](DataDog/dd-trace-java#8269) -
[@&#8203;Mariovido](https://github.com/Mariovido))
##### Build & Tooling
- 🐛 Ensure shaded helpers have unique names when injected into
class-loaders
([#&#8203;8192](DataDog/dd-trace-java#8192) -
[@&#8203;mcculls](https://github.com/mcculls))
##### Configuration at Runtime
- 🐛 Remove filtering of `DD_SERVICE` and `DD_ENV` from the tracer
([#&#8203;8176](DataDog/dd-trace-java#8176) -
[@&#8203;mhlidd](https://github.com/mhlidd))
##### Continuous Integration Visibility
- 🧹 Generalize TestRetryPolicy to TestExecutionPolicy
([#&#8203;8302](DataDog/dd-trace-java#8302) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Parallelize CI Visibility settings requests
([#&#8203;8299](DataDog/dd-trace-java#8299) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Generalize test retry logic
([#&#8203;8289](DataDog/dd-trace-java#8289) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Generalize tests skipping logic
([#&#8203;8288](DataDog/dd-trace-java#8288) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Remove skip and shouldBeSkipped methods from TestEventsHandler
in favor of isSkippable
([#&#8203;8286](DataDog/dd-trace-java#8286) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨⚡ Optimize Git repository information computation
([#&#8203;8270](DataDog/dd-trace-java#8270) -
[@&#8203;dougqh](https://github.com/dougqh))
- ✨ Always request known tests from the backend
([#&#8203;8268](DataDog/dd-trace-java#8268) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Fix NPE when trying to get retry analyzer in Test NG
([#&#8203;8253](DataDog/dd-trace-java#8253) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Set test framework and test framework version tags atomically
([#&#8203;8252](DataDog/dd-trace-java#8252) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add debug logging to Android Gradle module layout logic
([#&#8203;8251](DataDog/dd-trace-java#8251) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Fix source and destination folders computation for Android
Gradle projects
([#&#8203;8190](DataDog/dd-trace-java#8190) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add basic Scala Weaver sbt support
([#&#8203;8189](DataDog/dd-trace-java#8189) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Implement impacted tests detection
([#&#8203;8188](DataDog/dd-trace-java#8188) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
##### Data Streams Monitoring
- ✨ Change hash computation for protobuf to better represent
impacting changes + save proto number in schema
([#&#8203;8201](DataDog/dd-trace-java#8201) -
[@&#8203;vandonr](https://github.com/vandonr))
##### Database Monitoring
- Add peer service tag in dbm sql commenter
([#&#8203;7913](DataDog/dd-trace-java#7913) -
[@&#8203;jordan-wong](https://github.com/jordan-wong))
##### Dynamic Instrumentation
- ✨ Add support for SymDB to scan directories
([#&#8203;8306](DataDog/dd-trace-java#8306) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add SymDB report for any jar scanning failures
([#&#8203;8300](DataDog/dd-trace-java#8300) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Use two budgets depending on type
([#&#8203;8283](DataDog/dd-trace-java#8283) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Institute a 10 snapshot per probe per trace budget
([#&#8203;8277](DataDog/dd-trace-java#8277) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- 🐛 Avoid double snapshots for Exception Replay
([#&#8203;8273](DataDog/dd-trace-java#8273) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Simplify code origins. Separate out snapshot generation.
([#&#8203;8263](DataDog/dd-trace-java#8263) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Add Exception probe custom instrumentation
([#&#8203;8230](DataDog/dd-trace-java#8230) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Enhance log probes to honor debug session tags
([#&#8203;8215](DataDog/dd-trace-java#8215) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- 🐛 Don't redact env tokens from debugger probe snapshots
([#&#8203;8211](DataDog/dd-trace-java#8211) -
[@&#8203;watson](https://github.com/watson))
- ✨⚡ Move Trace/SpanId capture at commit time
([#&#8203;8184](DataDog/dd-trace-java#8184) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Capture values at entry for method probe
([#&#8203;8169](DataDog/dd-trace-java#8169) -
[@&#8203;jpbempel](https://github.com/jpbempel))
##### JMX fetch
- 🐛 Mute JMXFetch Shutdown in progress error
([#&#8203;8068](DataDog/dd-trace-java#8068) -
[@&#8203;ygree](https://github.com/ygree))
##### OpenTracing
- ⚠️🧹 Make jnr-unixsocket an explicit dependency of
dd-trace-ot
([#&#8203;8307](DataDog/dd-trace-java#8307) -
[@&#8203;mcculls](https://github.com/mcculls))
##### Profiling
- 🐛 Avoid unsupported API call for creating folders on windows
([#&#8203;8304](DataDog/dd-trace-java#8304) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Tag profiles for serverless
([#&#8203;8279](DataDog/dd-trace-java#8279) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ add queue type and length to queue events
([#&#8203;8242](DataDog/dd-trace-java#8242) -
[@&#8203;richardstartin](https://github.com/richardstartin))
- 🐛 TempLocationManager Fixes and Improvements
([#&#8203;8191](DataDog/dd-trace-java#8191) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Bump ddprof to 1.18.0
([#&#8203;8173](DataDog/dd-trace-java#8173) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Report profiler initialization and configuration errors to
telemetry
([#&#8203;8171](DataDog/dd-trace-java#8171) -
[@&#8203;jbachorik](https://github.com/jbachorik))
##### Telemetry
- ✨ Add pending traces report in tracer flares
([#&#8203;8053](DataDog/dd-trace-java#8053) -
[@&#8203;mhlidd](https://github.com/mhlidd))
##### Testing
- ✨ Test http server requests in parallel
([#&#8203;8222](DataDog/dd-trace-java#8222) -
[@&#8203;amarziali](https://github.com/amarziali))
##### Trace context propagation
- ✨ Add non default propagator registration
([#&#8203;8310](DataDog/dd-trace-java#8310) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
##### Tracer core
- ✨ Probe for existence of IBMSASL or ACCP security providers
([#&#8203;8276](DataDog/dd-trace-java#8276) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨⚡ Overhead improvement to agent feedback based sampling
([#&#8203;8265](DataDog/dd-trace-java#8265) -
[@&#8203;dougqh](https://github.com/dougqh))
- 🧹 Move async propagation API from scope to tracer
([#&#8203;8231](DataDog/dd-trace-java#8231) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Introduce context propagation API
([#&#8203;8161](DataDog/dd-trace-java#8161) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨🧪 Use env-entry to add tags per webapp deployment
([#&#8203;8138](DataDog/dd-trace-java#8138) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Introduce context helpers API
([#&#8203;8134](DataDog/dd-trace-java#8134) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Support IPv6 values for `DD_AGENT_HOST` and
`DD_TRACE_AGENT_URL`
([#&#8203;7984](DataDog/dd-trace-java#7984) -
[@&#8203;mhlidd](https://github.com/mhlidd))
##### Instrumentations
##### Apache HttpComponents
- 🐛 Properly finish spans and support latest apache httpclient5
([#&#8203;8272](DataDog/dd-trace-java#8272) -
[@&#8203;amarziali](https://github.com/amarziali))
##### AWS Lambda instrumentation
- 🐛 Properly capture lambda payloads for all handler types.
([#&#8203;8264](DataDog/dd-trace-java#8264) -
[@&#8203;purple4reina](https://github.com/purple4reina))
##### AWS S3 instrumentation
- 💡 Create S3 instrumentation + add span pointers
([#&#8203;8075](DataDog/dd-trace-java#8075) -
[@&#8203;nhulston](https://github.com/nhulston))
##### AWS SDK instrumentation
- 🐛 Revert "Add avoid double instrumenting lambda non-streaming
handlers."
([#&#8203;8247](DataDog/dd-trace-java#8247) -
[@&#8203;nhulston](https://github.com/nhulston))
##### Cassandra
- ✨ Allow extracting keyspace from statement result
([#&#8203;8239](DataDog/dd-trace-java#8239) -
[@&#8203;amarziali](https://github.com/amarziali))
##### Core Java language instrumentation
- ✨ Propagation of translateEscapes of String class
([#&#8203;8186](DataDog/dd-trace-java#8186) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))
##### Eclipse Vert.x instrumentation
- 🐛 Fix vertx worker propagation and error handling
([#&#8203;8237](DataDog/dd-trace-java#8237) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Support vertx 5
([#&#8203;8220](DataDog/dd-trace-java#8220) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add support for session tracking in Vertx
([#&#8203;8167](DataDog/dd-trace-java#8167) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
##### Kafka instrumentation
- 🐛 Prevent possible NPE calculating Kafka record header size
([#&#8203;8292](DataDog/dd-trace-java#8292) -
[@&#8203;ygree](https://github.com/ygree))
##### Mule instrumentation
- 🐛 Fix crash using Mule with JPMS
([#&#8203;8187](DataDog/dd-trace-java#8187) -
[@&#8203;amarziali](https://github.com/amarziali))
##### Protocol Buffer instrumentation
- ✨ Change hash computation for protobuf to better represent
impacting changes + save proto number in schema
([#&#8203;8201](DataDog/dd-trace-java#8201) -
[@&#8203;vandonr](https://github.com/vandonr))
##### Spring instrumentation
- 🐛 Preserve getQualifier from spring scheduling runnables
([#&#8203;8293](DataDog/dd-trace-java#8293) -
[@&#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**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, 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: bb09d47e4eed77a003f630273b4d0a84003eb899
eizus pushed a commit to cdrxyz/misk that referenced this pull request Jul 18, 2026
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
|
[com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.25.4` -> `2.26.0` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.45.2` -> `1.46.0` |
| [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.45.2` -> `1.46.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.30.9` -> `2.30.10` |
---
### Release Notes
<details>
<summary>googleapis/java-datastore
(com.google.cloud:google-cloud-datastore)</summary>
###
[`v2.26.0`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2260-2025-01-29)
##### Features
- Add firestoreInDatastoreMode for datastore emulator
([#&#8203;1698](googleapis/java-datastore#1698))
([50f106d](googleapis/java-datastore@50f106d))
##### Dependencies
- Update dependency com.google.cloud:sdk-platform-java-config to v3.42.0
([#&#8203;1725](googleapis/java-datastore#1725))
([1cbaf22](googleapis/java-datastore@1cbaf22))
</details>
<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>
###
[`v1.46.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.46.0):
1.46.0
##### Breaking Changes
> \[!WARNING]
> jnr-unixsocket is now an external dependency of dd-trace-ot and must
be included when deploying dd-trace-ot.
> \[!NOTE]
> The API `TracerScope.setAsync(boolean)`, used to manually control
asynchronous span propagation, does no more apply to the scope instance
but to the active span scope.
##### Components
##### Application Security Management (IAST)
- 🐛 Fix String.replace instrumentation for IAST
([#&#8203;8281](DataDog/dd-trace-java#8281) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Apply the standard nomenclature to the stacktrace configs
([#&#8203;8244](DataDog/dd-trace-java#8244) -
[@&#8203;jandro996](https://github.com/jandro996))
- 🐛 Exclude false positive weak randomness
([#&#8203;8232](DataDog/dd-trace-java#8232) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Propagation of translateEscapes of String class
([#&#8203;8186](DataDog/dd-trace-java#8186) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))
- ✨ Add security control metrics
([#&#8203;8175](DataDog/dd-trace-java#8175) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Increase IAST propagation to StringBuffer setLength
([#&#8203;8128](DataDog/dd-trace-java#8128) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Add IAST taint tracking for DB values
([#&#8203;8072](DataDog/dd-trace-java#8072) -
[@&#8203;Mariovido](https://github.com/Mariovido))
##### Application Security Management (WAF)
- 🐛 Prevents a NPE when there is no subscriber for user events
([#&#8203;8258](DataDog/dd-trace-java#8258) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Apply the standard nomenclature to the stacktrace configs
([#&#8203;8244](DataDog/dd-trace-java#8244) -
[@&#8203;jandro996](https://github.com/jandro996))
- 🐛 Ensure cached subscriptions are cleared on reconfiguration via
RC ([#&#8203;8229](DataDog/dd-trace-java#8229)
-
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Add support for session tracking in Vertx
([#&#8203;8167](DataDog/dd-trace-java#8167) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Create span tag: \_dd.appsec.rasp.timeout
([#&#8203;8269](DataDog/dd-trace-java#8269) -
[@&#8203;Mariovido](https://github.com/Mariovido))
##### Build & Tooling
- 🐛 Ensure shaded helpers have unique names when injected into
class-loaders
([#&#8203;8192](DataDog/dd-trace-java#8192) -
[@&#8203;mcculls](https://github.com/mcculls))
##### Configuration at Runtime
- 🐛 Remove filtering of `DD_SERVICE` and `DD_ENV` from the tracer
([#&#8203;8176](DataDog/dd-trace-java#8176) -
[@&#8203;mhlidd](https://github.com/mhlidd))
##### Continuous Integration Visibility
- 🧹 Generalize TestRetryPolicy to TestExecutionPolicy
([#&#8203;8302](DataDog/dd-trace-java#8302) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Parallelize CI Visibility settings requests
([#&#8203;8299](DataDog/dd-trace-java#8299) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Generalize test retry logic
([#&#8203;8289](DataDog/dd-trace-java#8289) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Generalize tests skipping logic
([#&#8203;8288](DataDog/dd-trace-java#8288) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🧹 Remove skip and shouldBeSkipped methods from TestEventsHandler
in favor of isSkippable
([#&#8203;8286](DataDog/dd-trace-java#8286) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨⚡ Optimize Git repository information computation
([#&#8203;8270](DataDog/dd-trace-java#8270) -
[@&#8203;dougqh](https://github.com/dougqh))
- ✨ Always request known tests from the backend
([#&#8203;8268](DataDog/dd-trace-java#8268) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Fix NPE when trying to get retry analyzer in Test NG
([#&#8203;8253](DataDog/dd-trace-java#8253) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Set test framework and test framework version tags atomically
([#&#8203;8252](DataDog/dd-trace-java#8252) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add debug logging to Android Gradle module layout logic
([#&#8203;8251](DataDog/dd-trace-java#8251) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Fix source and destination folders computation for Android
Gradle projects
([#&#8203;8190](DataDog/dd-trace-java#8190) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add basic Scala Weaver sbt support
([#&#8203;8189](DataDog/dd-trace-java#8189) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Implement impacted tests detection
([#&#8203;8188](DataDog/dd-trace-java#8188) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
##### Data Streams Monitoring
- ✨ Change hash computation for protobuf to better represent
impacting changes + save proto number in schema
([#&#8203;8201](DataDog/dd-trace-java#8201) -
[@&#8203;vandonr](https://github.com/vandonr))
##### Database Monitoring
- Add peer service tag in dbm sql commenter
([#&#8203;7913](DataDog/dd-trace-java#7913) -
[@&#8203;jordan-wong](https://github.com/jordan-wong))
##### Dynamic Instrumentation
- ✨ Add support for SymDB to scan directories
([#&#8203;8306](DataDog/dd-trace-java#8306) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Add SymDB report for any jar scanning failures
([#&#8203;8300](DataDog/dd-trace-java#8300) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Use two budgets depending on type
([#&#8203;8283](DataDog/dd-trace-java#8283) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Institute a 10 snapshot per probe per trace budget
([#&#8203;8277](DataDog/dd-trace-java#8277) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- 🐛 Avoid double snapshots for Exception Replay
([#&#8203;8273](DataDog/dd-trace-java#8273) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Simplify code origins. Separate out snapshot generation.
([#&#8203;8263](DataDog/dd-trace-java#8263) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Add Exception probe custom instrumentation
([#&#8203;8230](DataDog/dd-trace-java#8230) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Enhance log probes to honor debug session tags
([#&#8203;8215](DataDog/dd-trace-java#8215) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- 🐛 Don't redact env tokens from debugger probe snapshots
([#&#8203;8211](DataDog/dd-trace-java#8211) -
[@&#8203;watson](https://github.com/watson))
- ✨⚡ Move Trace/SpanId capture at commit time
([#&#8203;8184](DataDog/dd-trace-java#8184) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Capture values at entry for method probe
([#&#8203;8169](DataDog/dd-trace-java#8169) -
[@&#8203;jpbempel](https://github.com/jpbempel))
##### JMX fetch
- 🐛 Mute JMXFetch Shutdown in progress error
([#&#8203;8068](DataDog/dd-trace-java#8068) -
[@&#8203;ygree](https://github.com/ygree))
##### OpenTracing
- ⚠️🧹 Make jnr-unixsocket an explicit dependency of
dd-trace-ot
([#&#8203;8307](DataDog/dd-trace-java#8307) -
[@&#8203;mcculls](https://github.com/mcculls))
##### Profiling
- 🐛 Avoid unsupported API call for creating folders on windows
([#&#8203;8304](DataDog/dd-trace-java#8304) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Tag profiles for serverless
([#&#8203;8279](DataDog/dd-trace-java#8279) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ add queue type and length to queue events
([#&#8203;8242](DataDog/dd-trace-java#8242) -
[@&#8203;richardstartin](https://github.com/richardstartin))
- 🐛 TempLocationManager Fixes and Improvements
([#&#8203;8191](DataDog/dd-trace-java#8191) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Bump ddprof to 1.18.0
([#&#8203;8173](DataDog/dd-trace-java#8173) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- ✨ Report profiler initialization and configuration errors to
telemetry
([#&#8203;8171](DataDog/dd-trace-java#8171) -
[@&#8203;jbachorik](https://github.com/jbachorik))
##### Telemetry
- ✨ Add pending traces report in tracer flares
([#&#8203;8053](DataDog/dd-trace-java#8053) -
[@&#8203;mhlidd](https://github.com/mhlidd))
##### Testing
- ✨ Test http server requests in parallel
([#&#8203;8222](DataDog/dd-trace-java#8222) -
[@&#8203;amarziali](https://github.com/amarziali))
##### Trace context propagation
- ✨ Add non default propagator registration
([#&#8203;8310](DataDog/dd-trace-java#8310) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
##### Tracer core
- ✨ Probe for existence of IBMSASL or ACCP security providers
([#&#8203;8276](DataDog/dd-trace-java#8276) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨⚡ Overhead improvement to agent feedback based sampling
([#&#8203;8265](DataDog/dd-trace-java#8265) -
[@&#8203;dougqh](https://github.com/dougqh))
- 🧹 Move async propagation API from scope to tracer
([#&#8203;8231](DataDog/dd-trace-java#8231) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Introduce context propagation API
([#&#8203;8161](DataDog/dd-trace-java#8161) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨🧪 Use env-entry to add tags per webapp deployment
([#&#8203;8138](DataDog/dd-trace-java#8138) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Introduce context helpers API
([#&#8203;8134](DataDog/dd-trace-java#8134) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Support IPv6 values for `DD_AGENT_HOST` and
`DD_TRACE_AGENT_URL`
([#&#8203;7984](DataDog/dd-trace-java#7984) -
[@&#8203;mhlidd](https://github.com/mhlidd))
##### Instrumentations
##### Apache HttpComponents
- 🐛 Properly finish spans and support latest apache httpclient5
([#&#8203;8272](DataDog/dd-trace-java#8272) -
[@&#8203;amarziali](https://github.com/amarziali))
##### AWS Lambda instrumentation
- 🐛 Properly capture lambda payloads for all handler types.
([#&#8203;8264](DataDog/dd-trace-java#8264) -
[@&#8203;purple4reina](https://github.com/purple4reina))
##### AWS S3 instrumentation
- 💡 Create S3 instrumentation + add span pointers
([#&#8203;8075](DataDog/dd-trace-java#8075) -
[@&#8203;nhulston](https://github.com/nhulston))
##### AWS SDK instrumentation
- 🐛 Revert "Add avoid double instrumenting lambda non-streaming
handlers."
([#&#8203;8247](DataDog/dd-trace-java#8247) -
[@&#8203;nhulston](https://github.com/nhulston))
##### Cassandra
- ✨ Allow extracting keyspace from statement result
([#&#8203;8239](DataDog/dd-trace-java#8239) -
[@&#8203;amarziali](https://github.com/amarziali))
##### Core Java language instrumentation
- ✨ Propagation of translateEscapes of String class
([#&#8203;8186](DataDog/dd-trace-java#8186) -
[@&#8203;sezen-datadog](https://github.com/sezen-datadog))
##### Eclipse Vert.x instrumentation
- 🐛 Fix vertx worker propagation and error handling
([#&#8203;8237](DataDog/dd-trace-java#8237) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Support vertx 5
([#&#8203;8220](DataDog/dd-trace-java#8220) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add support for session tracking in Vertx
([#&#8203;8167](DataDog/dd-trace-java#8167) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
##### Kafka instrumentation
- 🐛 Prevent possible NPE calculating Kafka record header size
([#&#8203;8292](DataDog/dd-trace-java#8292) -
[@&#8203;ygree](https://github.com/ygree))
##### Mule instrumentation
- 🐛 Fix crash using Mule with JPMS
([#&#8203;8187](DataDog/dd-trace-java#8187) -
[@&#8203;amarziali](https://github.com/amarziali))
##### Protocol Buffer instrumentation
- ✨ Change hash computation for protobuf to better represent
impacting changes + save proto number in schema
([#&#8203;8201](DataDog/dd-trace-java#8201) -
[@&#8203;vandonr](https://github.com/vandonr))
##### Spring instrumentation
- 🐛 Preserve getQualifier from spring scheduling runnables
([#&#8203;8293](DataDog/dd-trace-java#8293) -
[@&#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**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, 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: bb09d47e4eed77a003f630273b4d0a84003eb899
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

inst: kafkaKafka instrumentationtype: bug fixBug fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@ygree@amarziali