Skip to content

Conversation

@nikita-tkachenko-datadog
Copy link
Contributor

@nikita-tkachenko-datadog nikita-tkachenko-datadog commented Aug 5, 2025

What Does This Do

Updates repository indexer to not follow symlinks by default.

There's a config key (civisibility.repo.index.follow.symlinks) that allows to enable following symlinks if needed.

Motivation

It is unlikely that a repository contains symlinks that point outside of it to a folders that contain source code files (and such source paths would not be usable by the backend features anyway).

At the same time, following symlinks causes problems in some repos (such as in large Bazel projects where Bazel creates symlinks to its cache inside the repository, and following them increases indexing time by a lot).

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@nikita-tkachenko-datadog nikita-tkachenko-datadog added type: enhancement Enhancements and improvements comp: ci visibility Continuous Integration Visibility labels Aug 5, 2025
@datadog-datadog-prod-us1
Copy link
Contributor

datadog-datadog-prod-us1 bot commented Aug 5, 2025

Code coverage: total 57.22%, patch 22.22% (view details)

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

@nikita-tkachenko-datadog nikita-tkachenko-datadog marked this pull request as ready for review August 5, 2025 18:44
@pr-commenter
Copy link

pr-commenter bot commented Aug 5, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master nikita-tkachenko/repo-index-do-not-follow-symlinks
git_commit_date 1754423381 1754471508
git_commit_sha d6b43cb c427509
release_version 1.53.0-SNAPSHOT~d6b43cba5c 1.53.0-SNAPSHOT~c427509dfc
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1754473389 1754473389
ci_job_id 1066382649 1066382649
ci_pipeline_id 72820283 72820283
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-tm8dq9yi 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-tm8dq9yi 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 48 metrics, 11 unstable metrics.

Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.53.0-SNAPSHOT~c427509dfc, baseline=1.53.0-SNAPSHOT~d6b43cba5c

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.042 s) : 0, 1041616
Total [baseline] (10.655 s) : 0, 10655460
Agent [candidate] (1.043 s) : 0, 1043370
Total [candidate] (10.723 s) : 0, 10723352
section appsec
Agent [baseline] (1.231 s) : 0, 1230858
Total [baseline] (10.838 s) : 0, 10837961
Agent [candidate] (1.215 s) : 0, 1215274
Total [candidate] (10.741 s) : 0, 10741248
section iast
Agent [baseline] (1.174 s) : 0, 1174077
Total [baseline] (10.856 s) : 0, 10856034
Agent [candidate] (1.172 s) : 0, 1172171
Total [candidate] (10.921 s) : 0, 10920517
section profiling
Agent [baseline] (1.197 s) : 0, 1197310
Total [baseline] (10.93 s) : 0, 10929534
Agent [candidate] (1.191 s) : 0, 1190656
Total [candidate] (10.895 s) : 0, 10895052
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.042 s -
Agent appsec 1.231 s 189.241 ms (18.2%)
Agent iast 1.174 s 132.461 ms (12.7%)
Agent profiling 1.197 s 155.694 ms (14.9%)
Total tracing 10.655 s -
Total appsec 10.838 s 182.5 ms (1.7%)
Total iast 10.856 s 200.574 ms (1.9%)
Total profiling 10.93 s 274.074 ms (2.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.043 s -
Agent appsec 1.215 s 171.903 ms (16.5%)
Agent iast 1.172 s 128.801 ms (12.3%)
Agent profiling 1.191 s 147.286 ms (14.1%)
Total tracing 10.723 s -
Total appsec 10.741 s 17.896 ms (0.2%)
Total iast 10.921 s 197.165 ms (1.8%)
Total profiling 10.895 s 171.7 ms (1.6%)
gantt
    title petclinic - break down per module: candidate=1.53.0-SNAPSHOT~c427509dfc, baseline=1.53.0-SNAPSHOT~d6b43cba5c

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.43 ms) : 0, 1430
crashtracking [candidate] (1.422 ms) : 0, 1422
BytebuddyAgent [baseline] (728.032 ms) : 0, 728032
BytebuddyAgent [candidate] (730.441 ms) : 0, 730441
GlobalTracer [baseline] (240.73 ms) : 0, 240730
GlobalTracer [candidate] (241.633 ms) : 0, 241633
AppSec [baseline] (29.9 ms) : 0, 29900
AppSec [candidate] (30.262 ms) : 0, 30262
Debugger [baseline] (5.985 ms) : 0, 5985
Debugger [candidate] (6.034 ms) : 0, 6034
Remote Config [baseline] (650.928 µs) : 0, 651
Remote Config [candidate] (651.961 µs) : 0, 652
Telemetry [baseline] (14.004 ms) : 0, 14004
Telemetry [candidate] (12.006 ms) : 0, 12006
section appsec
crashtracking [baseline] (1.443 ms) : 0, 1443
crashtracking [candidate] (1.429 ms) : 0, 1429
BytebuddyAgent [baseline] (760.948 ms) : 0, 760948
BytebuddyAgent [candidate] (750.157 ms) : 0, 750157
GlobalTracer [baseline] (237.243 ms) : 0, 237243
GlobalTracer [candidate] (234.187 ms) : 0, 234187
IAST [baseline] (23.995 ms) : 0, 23995
IAST [candidate] (23.349 ms) : 0, 23349
AppSec [baseline] (168.241 ms) : 0, 168241
AppSec [candidate] (168.375 ms) : 0, 168375
Debugger [baseline] (8.734 ms) : 0, 8734
Debugger [candidate] (7.964 ms) : 0, 7964
Remote Config [baseline] (618.636 µs) : 0, 619
Remote Config [candidate] (637.461 µs) : 0, 637
Telemetry [baseline] (8.424 ms) : 0, 8424
Telemetry [candidate] (8.233 ms) : 0, 8233
section iast
crashtracking [baseline] (1.432 ms) : 0, 1432
crashtracking [candidate] (1.441 ms) : 0, 1441
BytebuddyAgent [baseline] (847.398 ms) : 0, 847398
BytebuddyAgent [candidate] (846.252 ms) : 0, 846252
GlobalTracer [baseline] (231.764 ms) : 0, 231764
GlobalTracer [candidate] (231.198 ms) : 0, 231198
IAST [baseline] (28.361 ms) : 0, 28361
IAST [candidate] (31.292 ms) : 0, 31292
AppSec [baseline] (27.762 ms) : 0, 27762
AppSec [candidate] (26.315 ms) : 0, 26315
Debugger [baseline] (7.605 ms) : 0, 7605
Debugger [candidate] (5.83 ms) : 0, 5830
Remote Config [baseline] (585.472 µs) : 0, 585
Remote Config [candidate] (594.761 µs) : 0, 595
Telemetry [baseline] (8.17 ms) : 0, 8170
Telemetry [candidate] (8.26 ms) : 0, 8260
section profiling
crashtracking [baseline] (1.397 ms) : 0, 1397
crashtracking [candidate] (1.421 ms) : 0, 1421
BytebuddyAgent [baseline] (762.843 ms) : 0, 762843
BytebuddyAgent [candidate] (758.443 ms) : 0, 758443
GlobalTracer [baseline] (221.947 ms) : 0, 221947
GlobalTracer [candidate] (221.297 ms) : 0, 221297
AppSec [baseline] (30.165 ms) : 0, 30165
AppSec [candidate] (29.887 ms) : 0, 29887
Debugger [baseline] (6.293 ms) : 0, 6293
Debugger [candidate] (6.336 ms) : 0, 6336
Remote Config [baseline] (676.777 µs) : 0, 677
Remote Config [candidate] (671.554 µs) : 0, 672
Telemetry [baseline] (15.523 ms) : 0, 15523
Telemetry [candidate] (16.051 ms) : 0, 16051
ProfilingAgent [baseline] (108.934 ms) : 0, 108934
ProfilingAgent [candidate] (107.13 ms) : 0, 107130
Profiling [baseline] (109.591 ms) : 0, 109591
Profiling [candidate] (107.791 ms) : 0, 107791
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.53.0-SNAPSHOT~c427509dfc, baseline=1.53.0-SNAPSHOT~d6b43cba5c

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.044 s) : 0, 1044136
Total [baseline] (8.565 s) : 0, 8564922
Agent [candidate] (1.052 s) : 0, 1051866
Total [candidate] (8.568 s) : 0, 8567514
section iast
Agent [baseline] (1.18 s) : 0, 1180126
Total [baseline] (9.352 s) : 0, 9351509
Agent [candidate] (1.181 s) : 0, 1181123
Total [candidate] (9.32 s) : 0, 9320300
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.044 s -
Agent iast 1.18 s 135.99 ms (13.0%)
Total tracing 8.565 s -
Total iast 9.352 s 786.588 ms (9.2%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.052 s -
Agent iast 1.181 s 129.257 ms (12.3%)
Total tracing 8.568 s -
Total iast 9.32 s 752.786 ms (8.8%)
gantt
    title insecure-bank - break down per module: candidate=1.53.0-SNAPSHOT~c427509dfc, baseline=1.53.0-SNAPSHOT~d6b43cba5c

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.426 ms) : 0, 1426
crashtracking [candidate] (1.447 ms) : 0, 1447
BytebuddyAgent [baseline] (729.804 ms) : 0, 729804
BytebuddyAgent [candidate] (736.315 ms) : 0, 736315
GlobalTracer [baseline] (241.212 ms) : 0, 241212
GlobalTracer [candidate] (243.365 ms) : 0, 243365
AppSec [baseline] (29.947 ms) : 0, 29947
AppSec [candidate] (30.309 ms) : 0, 30309
Debugger [baseline] (5.99 ms) : 0, 5990
Debugger [candidate] (6.043 ms) : 0, 6043
Remote Config [baseline] (637.065 µs) : 0, 637
Remote Config [candidate] (655.452 µs) : 0, 655
Telemetry [baseline] (14.212 ms) : 0, 14212
Telemetry [candidate] (12.641 ms) : 0, 12641
section iast
crashtracking [baseline] (1.447 ms) : 0, 1447
crashtracking [candidate] (1.436 ms) : 0, 1436
BytebuddyAgent [baseline] (852.544 ms) : 0, 852544
BytebuddyAgent [candidate] (853.348 ms) : 0, 853348
GlobalTracer [baseline] (233.093 ms) : 0, 233093
GlobalTracer [candidate] (232.677 ms) : 0, 232677
IAST [baseline] (30.209 ms) : 0, 30209
IAST [candidate] (30.816 ms) : 0, 30816
AppSec [baseline] (25.529 ms) : 0, 25529
AppSec [candidate] (26.352 ms) : 0, 26352
Debugger [baseline] (7.446 ms) : 0, 7446
Debugger [candidate] (6.708 ms) : 0, 6708
Remote Config [baseline] (594.895 µs) : 0, 595
Remote Config [candidate] (597.049 µs) : 0, 597
Telemetry [baseline] (8.286 ms) : 0, 8286
Telemetry [candidate] (8.193 ms) : 0, 8193
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master nikita-tkachenko/repo-index-do-not-follow-symlinks
git_commit_date 1754423381 1754471508
git_commit_sha d6b43cb c427509
release_version 1.53.0-SNAPSHOT~d6b43cba5c 1.53.0-SNAPSHOT~c427509dfc
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1754473063 1754473063
ci_job_id 1066382650 1066382650
ci_pipeline_id 72820283 72820283
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-ijkuhmqk 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-ijkuhmqk 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

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

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:insecure-bank:profiling:high_load worse
[+367.556µs; +666.246µs] or [+4.264%; +7.729%]
unstable
[-101.338op/s; +40.963op/s] or [-18.832%; +7.612%]
9.137ms 507.938op/s 8.620ms 538.125op/s
scenario:load:insecure-bank:iast_GLOBAL:high_load worse
[+402.510µs; +783.890µs] or [+4.071%; +7.928%]
unstable
[-102.933op/s; +23.734op/s] or [-21.911%; +5.052%]
10.480ms 430.182op/s 9.887ms 469.781op/s
scenario:load:petclinic:iast:high_load worse
[+1.625ms; +2.474ms] or [+3.690%; +5.618%]
unstable
[-12.065op/s; +2.715op/s] or [-11.359%; +2.556%]
46.084ms 101.537op/s 44.034ms 106.213op/s
scenario:load:petclinic:profiling:high_load better
[-2.713ms; -1.770ms] or [-5.595%; -3.650%]
unstable
[-2.321op/s; +11.746op/s] or [-2.406%; +12.177%]
46.252ms 101.175op/s 48.493ms 96.463op/s
scenario:load:petclinic:tracing:high_load better
[-1.905ms; -1.110ms] or [-4.342%; -2.531%]
unstable
[-3.892op/s; +11.492op/s] or [-3.650%; +10.778%]
42.364ms 110.425op/s 43.872ms 106.625op/s
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.53.0-SNAPSHOT~c427509dfc, baseline=1.53.0-SNAPSHOT~d6b43cba5c
    dateFormat X
    axisFormat %s
section baseline
no_agent (4.407 ms) : 4355, 4460
.   : milestone, 4407,
iast (9.21 ms) : 9060, 9359
.   : milestone, 9210,
iast_FULL (14.277 ms) : 13997, 14557
.   : milestone, 14277,
iast_GLOBAL (9.887 ms) : 9717, 10058
.   : milestone, 9887,
profiling (8.62 ms) : 8486, 8754
.   : milestone, 8620,
tracing (7.432 ms) : 7330, 7534
.   : milestone, 7432,
section candidate
no_agent (4.436 ms) : 4382, 4490
.   : milestone, 4436,
iast (9.398 ms) : 9241, 9556
.   : milestone, 9398,
iast_FULL (14.219 ms) : 13937, 14500
.   : milestone, 14219,
iast_GLOBAL (10.48 ms) : 10297, 10664
.   : milestone, 10480,
profiling (9.137 ms) : 8994, 9281
.   : milestone, 9137,
tracing (7.51 ms) : 7405, 7615
.   : milestone, 7510,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.407 ms [4.355 ms, 4.46 ms] -
iast 9.21 ms [9.06 ms, 9.359 ms] 4.802 ms (109.0%)
iast_FULL 14.277 ms [13.997 ms, 14.557 ms] 9.87 ms (223.9%)
iast_GLOBAL 9.887 ms [9.717 ms, 10.058 ms] 5.48 ms (124.3%)
profiling 8.62 ms [8.486 ms, 8.754 ms] 4.213 ms (95.6%)
tracing 7.432 ms [7.33 ms, 7.534 ms] 3.025 ms (68.6%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.436 ms [4.382 ms, 4.49 ms] -
iast 9.398 ms [9.241 ms, 9.556 ms] 4.962 ms (111.9%)
iast_FULL 14.219 ms [13.937 ms, 14.5 ms] 9.782 ms (220.5%)
iast_GLOBAL 10.48 ms [10.297 ms, 10.664 ms] 6.044 ms (136.3%)
profiling 9.137 ms [8.994 ms, 9.281 ms] 4.701 ms (106.0%)
tracing 7.51 ms [7.405 ms, 7.615 ms] 3.074 ms (69.3%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.53.0-SNAPSHOT~c427509dfc, baseline=1.53.0-SNAPSHOT~d6b43cba5c
    dateFormat X
    axisFormat %s
section baseline
no_agent (37.306 ms) : 37001, 37611
.   : milestone, 37306,
appsec (47.285 ms) : 46864, 47707
.   : milestone, 47285,
code_origins (45.111 ms) : 44716, 45506
.   : milestone, 45111,
iast (44.034 ms) : 43655, 44414
.   : milestone, 44034,
profiling (48.493 ms) : 48043, 48943
.   : milestone, 48493,
tracing (43.872 ms) : 43493, 44250
.   : milestone, 43872,
section candidate
no_agent (36.866 ms) : 36569, 37163
.   : milestone, 36866,
appsec (47.874 ms) : 47444, 48304
.   : milestone, 47874,
code_origins (44.48 ms) : 44085, 44875
.   : milestone, 44480,
iast (46.084 ms) : 45674, 46493
.   : milestone, 46084,
profiling (46.252 ms) : 45825, 46678
.   : milestone, 46252,
tracing (42.364 ms) : 42004, 42724
.   : milestone, 42364,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 37.306 ms [37.001 ms, 37.611 ms] -
appsec 47.285 ms [46.864 ms, 47.707 ms] 9.979 ms (26.7%)
code_origins 45.111 ms [44.716 ms, 45.506 ms] 7.805 ms (20.9%)
iast 44.034 ms [43.655 ms, 44.414 ms] 6.728 ms (18.0%)
profiling 48.493 ms [48.043 ms, 48.943 ms] 11.187 ms (30.0%)
tracing 43.872 ms [43.493 ms, 44.25 ms] 6.565 ms (17.6%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.866 ms [36.569 ms, 37.163 ms] -
appsec 47.874 ms [47.444 ms, 48.304 ms] 11.008 ms (29.9%)
code_origins 44.48 ms [44.085 ms, 44.875 ms] 7.614 ms (20.7%)
iast 46.084 ms [45.674 ms, 46.493 ms] 9.217 ms (25.0%)
profiling 46.252 ms [45.825 ms, 46.678 ms] 9.386 ms (25.5%)
tracing 42.364 ms [42.004 ms, 42.724 ms] 5.498 ms (14.9%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master nikita-tkachenko/repo-index-do-not-follow-symlinks
git_commit_date 1754423381 1754471508
git_commit_sha d6b43cb c427509
release_version 1.53.0-SNAPSHOT~d6b43cba5c 1.53.0-SNAPSHOT~c427509dfc
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1754473600 1754473600
ci_job_id 1066382651 1066382651
ci_pipeline_id 72820283 72820283
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-a09v7tgq 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-a09v7tgq 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

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

Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.53.0-SNAPSHOT~c427509dfc, baseline=1.53.0-SNAPSHOT~d6b43cba5c
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.966 s) : 14966000, 14966000
.   : milestone, 14966000,
appsec (14.793 s) : 14793000, 14793000
.   : milestone, 14793000,
iast (18.324 s) : 18324000, 18324000
.   : milestone, 18324000,
iast_GLOBAL (18.267 s) : 18267000, 18267000
.   : milestone, 18267000,
profiling (15.418 s) : 15418000, 15418000
.   : milestone, 15418000,
tracing (15.008 s) : 15008000, 15008000
.   : milestone, 15008000,
section candidate
no_agent (14.987 s) : 14987000, 14987000
.   : milestone, 14987000,
appsec (14.951 s) : 14951000, 14951000
.   : milestone, 14951000,
iast (18.995 s) : 18995000, 18995000
.   : milestone, 18995000,
iast_GLOBAL (18.044 s) : 18044000, 18044000
.   : milestone, 18044000,
profiling (15.093 s) : 15093000, 15093000
.   : milestone, 15093000,
tracing (14.867 s) : 14867000, 14867000
.   : milestone, 14867000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.966 s [14.966 s, 14.966 s] -
appsec 14.793 s [14.793 s, 14.793 s] -173.0 ms (-1.2%)
iast 18.324 s [18.324 s, 18.324 s] 3.358 s (22.4%)
iast_GLOBAL 18.267 s [18.267 s, 18.267 s] 3.301 s (22.1%)
profiling 15.418 s [15.418 s, 15.418 s] 452.0 ms (3.0%)
tracing 15.008 s [15.008 s, 15.008 s] 42.0 ms (0.3%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.987 s [14.987 s, 14.987 s] -
appsec 14.951 s [14.951 s, 14.951 s] -36.0 ms (-0.2%)
iast 18.995 s [18.995 s, 18.995 s] 4.008 s (26.7%)
iast_GLOBAL 18.044 s [18.044 s, 18.044 s] 3.057 s (20.4%)
profiling 15.093 s [15.093 s, 15.093 s] 106.0 ms (0.7%)
tracing 14.867 s [14.867 s, 14.867 s] -120.0 ms (-0.8%)
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.53.0-SNAPSHOT~c427509dfc, baseline=1.53.0-SNAPSHOT~d6b43cba5c
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.478 ms) : 1467, 1490
.   : milestone, 1478,
appsec (2.416 ms) : 2366, 2466
.   : milestone, 2416,
iast (2.203 ms) : 2140, 2266
.   : milestone, 2203,
iast_GLOBAL (2.25 ms) : 2187, 2313
.   : milestone, 2250,
profiling (2.075 ms) : 2024, 2127
.   : milestone, 2075,
tracing (2.018 ms) : 1969, 2067
.   : milestone, 2018,
section candidate
no_agent (1.482 ms) : 1470, 1493
.   : milestone, 1482,
appsec (3.684 ms) : 3467, 3901
.   : milestone, 3684,
iast (2.204 ms) : 2141, 2267
.   : milestone, 2204,
iast_GLOBAL (2.263 ms) : 2199, 2326
.   : milestone, 2263,
profiling (2.053 ms) : 2003, 2104
.   : milestone, 2053,
tracing (2.031 ms) : 1982, 2080
.   : milestone, 2031,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.478 ms [1.467 ms, 1.49 ms] -
appsec 2.416 ms [2.366 ms, 2.466 ms] 937.956 µs (63.5%)
iast 2.203 ms [2.14 ms, 2.266 ms] 724.848 µs (49.0%)
iast_GLOBAL 2.25 ms [2.187 ms, 2.313 ms] 771.431 µs (52.2%)
profiling 2.075 ms [2.024 ms, 2.127 ms] 597.229 µs (40.4%)
tracing 2.018 ms [1.969 ms, 2.067 ms] 539.856 µs (36.5%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.482 ms [1.47 ms, 1.493 ms] -
appsec 3.684 ms [3.467 ms, 3.901 ms] 2.202 ms (148.6%)
iast 2.204 ms [2.141 ms, 2.267 ms] 722.477 µs (48.8%)
iast_GLOBAL 2.263 ms [2.199 ms, 2.326 ms] 780.918 µs (52.7%)
profiling 2.053 ms [2.003 ms, 2.104 ms] 571.678 µs (38.6%)
tracing 2.031 ms [1.982 ms, 2.08 ms] 549.495 µs (37.1%)

// We'll visit the folder that it points to anyway,
// moreover, we don't want two different results for one file
// (one containing the symlink, the other - the actual folder).
if (Files.isSymbolicLink(dir) && !followSymlinks) {
Copy link
Member

Choose a reason for hiding this comment

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

Does it make sense to flip these two?

Suggested change
if (Files.isSymbolicLink(dir) && !followSymlinks) {
if (!followSymlinks && Files.isSymbolicLink(dir)) {

Also, does it make sense to keep readSymbolicLink(dir).startsWith(repoRoot)? 🤔

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Restored the startsWith for cases when followSymlinks is enabled

@nikita-tkachenko-datadog nikita-tkachenko-datadog merged commit 9de0da8 into master Aug 6, 2025
671 of 672 checks passed
@nikita-tkachenko-datadog nikita-tkachenko-datadog deleted the nikita-tkachenko/repo-index-do-not-follow-symlinks branch August 6, 2025 11:50
@github-actions github-actions bot added this to the 1.53.0 milestone Aug 6, 2025
@PerfectSlayer PerfectSlayer added the tag: performance Performance related changes label Aug 6, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Sep 4, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.52.1` -> `1.53.0` |

---

### Release Notes

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

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

### Components

#### Application Security Management (WAF)

- 🐛 Fix NullPointerException log in AppSec
([#&#8203;9355](DataDog/dd-trace-java#9355) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Add Forwarded header as a source to client IP resolution
([#&#8203;9310](DataDog/dd-trace-java#9310) -
[@&#8203;jandro996](https://github.com/jandro996))

#### Build & Tooling

- 📖 Update CODEOWNERS
([#&#8203;9294](DataDog/dd-trace-java#9294) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- ✨ Add dependency on Maven Central deployment to OCI publish
jobs
([#&#8203;9204](DataDog/dd-trace-java#9204) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))

#### Continuous Integration Visibility

- ✨ Upload code coverage reports to Datadog
([#&#8203;9425](DataDog/dd-trace-java#9425) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨⚡ Do not follow symlinks by default when building
repository index
([#&#8203;9318](DataDog/dd-trace-java#9318) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Improve tag propagation between test event levels
([#&#8203;9278](DataDog/dd-trace-java#9278) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))

#### Data Streams Monitoring

- ✨ Create container hash tags propagation
([#&#8203;9282](DataDog/dd-trace-java#9282) -
[@&#8203;ygree](https://github.com/ygree))

#### Database Monitoring

- 🐛 Prevent crash in SQL Server's JDBC when tracing execute methods
with generated keys
([#&#8203;9321](DataDog/dd-trace-java#9321) -
[@&#8203;na-ji](https://github.com/na-ji))
- ✨ Create container hash tags propagation
([#&#8203;9282](DataDog/dd-trace-java#9282) -
[@&#8203;ygree](https://github.com/ygree))

#### GraalVM native-image

- 🐛 Update GraalVM config to reflect TempLocationManager's new
package
([#&#8203;9337](DataDog/dd-trace-java#9337) -
[@&#8203;luneo7](https://github.com/luneo7) - thanks for the
contribution!)

#### Metrics

- 🐛 Add reflect config for CSS and graalvm
([#&#8203;9449](DataDog/dd-trace-java#9449) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Align CSS health metrics
([#&#8203;9444](DataDog/dd-trace-java#9444) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Aggregate peer tags for consumer span kind
([#&#8203;9442](DataDog/dd-trace-java#9442) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Implement health metrics for client stats
([#&#8203;9377](DataDog/dd-trace-java#9377) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add peer tags, span kind and trace root flag to MetricKey
bucket
([#&#8203;9178](DataDog/dd-trace-java#9178) -
[@&#8203;bric3](https://github.com/bric3))

#### Profiling

- ✨ Create a profile flare reporter (requires tracing or CI vis
to be enabled)
([#&#8203;9433](DataDog/dd-trace-java#9433) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- 🐛 Properly fall-back on UDS profiling URL
([#&#8203;9401](DataDog/dd-trace-java#9401) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- 🐛 Properly handle trace agent IPv6 URL in profiling
([#&#8203;9334](DataDog/dd-trace-java#9334) -
[@&#8203;jbachorik](https://github.com/jbachorik))

#### Realtime User Monitoring

- 🐛 Avoid multiple injections on dispatch on jboss
([#&#8203;9392](DataDog/dd-trace-java#9392) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Support async servlet for RUM injection
([#&#8203;9333](DataDog/dd-trace-java#9333) -
[@&#8203;amarziali](https://github.com/amarziali))
- 🐛 Improve RUM injection matching and avoid truncating responses
([#&#8203;9323](DataDog/dd-trace-java#9323) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡 Add telemetry for the RUM injector
([#&#8203;9267](DataDog/dd-trace-java#9267) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))
- ✨ Make rum injector stream/writer more resilient to errors
([#&#8203;9184](DataDog/dd-trace-java#9184) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Telemetry

- 🐛 Remediate error logs
([#&#8203;9459](DataDog/dd-trace-java#9459) -
[@&#8203;ygree](https://github.com/ygree))
- ✨ Report config\_id for Hands Off Config files
([#&#8203;9299](DataDog/dd-trace-java#9299) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- ✨ Adding Config Inversion Telemetry component
([#&#8203;9244](DataDog/dd-trace-java#9244) -
[@&#8203;mhlidd](https://github.com/mhlidd))

#### Trace context propagation

- 🧹 Migrate instrumentations to Context API
([#&#8203;9384](DataDog/dd-trace-java#9384),
[#&#8203;9378](DataDog/dd-trace-java#9378),
[#&#8203;9358](DataDog/dd-trace-java#9358) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨🔍 Add baggage propagation telemetry
([#&#8203;9289](DataDog/dd-trace-java#9289) -
[@&#8203;rachelyangdog](https://github.com/rachelyangdog))
- 🧹 Improve Instrumenter API to use Context instead of Span
([#&#8203;9211](DataDog/dd-trace-java#9211) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Tracer core

- 💡:test\_tube: Enable process level tags for java 21 applications
([#&#8203;9458](DataDog/dd-trace-java#9458) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Move base and peer service adder before span is published
([#&#8203;9408](DataDog/dd-trace-java#9408) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add ErrorPriorities level for manual instrumentation
([#&#8203;9387](DataDog/dd-trace-java#9387) -
[@&#8203;cecile75](https://github.com/cecile75))
- ✨ Throw InvalidBooleanValueException in
ConfigConverter.booleanValueOf
([#&#8203;9370](DataDog/dd-trace-java#9370) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- 🐛 Avoid NPE on featureDiscovery creation
([#&#8203;9353](DataDog/dd-trace-java#9353) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Stable Config improvements
([#&#8203;9259](DataDog/dd-trace-java#9259) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))

### Instrumentations

#### gRPC instrumentation

- 🐛 Changing GRPC instrumentation codes from `status.code` to
`grpc.status.code`
([#&#8203;9367](DataDog/dd-trace-java#9367) -
[@&#8203;mhlidd](https://github.com/mhlidd))

#### JDBC instrumentation

- 🐛 Prevent crash in SQL Server's JDBC when tracing execute methods
with generated keys
([#&#8203;9321](DataDog/dd-trace-java#9321) -
[@&#8203;na-ji](https://github.com/na-ji))

#### Kotlin instrumentation

- 🐛 Take defensive copy of original scope stack when restoring on
different thread
([#&#8203;9403](DataDog/dd-trace-java#9403) -
[@&#8203;mcculls](https://github.com/mcculls))

#### OpenTelemetry instrumentation

- 🐛 Fix using SpanAttribute annotation on multiple parameters
([#&#8203;9412](DataDog/dd-trace-java#9412) -
[@&#8203;cecile75](https://github.com/cecile75))

</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.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- 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: e23ec866cef91afc6b5226d5f0dc7da538d947e8
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: ci visibility Continuous Integration Visibility tag: performance Performance related changes type: enhancement Enhancements and improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants