-
Notifications
You must be signed in to change notification settings - Fork 306
Remove AttachableWrapper aspect from scopes #8534
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
Remove AttachableWrapper aspect from scopes #8534
Conversation
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
e5c50b4
to
d4278e3
Compare
BenchmarksStartupParameters
See matching parameters
SummaryFound 1 performance improvements and 0 performance regressions! Performance is the same for 56 metrics, 6 unstable metrics.
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.48.0-SNAPSHOT~d4278e3633, baseline=1.48.0-SNAPSHOT~5d109aa0f8
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.05 s) : 0, 1049813
Total [baseline] (10.52 s) : 0, 10519888
Agent [candidate] (1.043 s) : 0, 1043036
Total [candidate] (10.589 s) : 0, 10589463
section appsec
Agent [baseline] (1.19 s) : 0, 1190447
Total [baseline] (10.79 s) : 0, 10790093
Agent [candidate] (1.184 s) : 0, 1184482
Total [candidate] (10.746 s) : 0, 10745882
section iast
Agent [baseline] (1.173 s) : 0, 1172535
Total [baseline] (11.015 s) : 0, 11015428
Agent [candidate] (1.18 s) : 0, 1179531
Total [candidate] (11.007 s) : 0, 11007392
section profiling
Agent [baseline] (1.264 s) : 0, 1264144
Total [baseline] (10.837 s) : 0, 10837029
Agent [candidate] (1.27 s) : 0, 1269862
Total [candidate] (10.825 s) : 0, 10824827
gantt
title petclinic - break down per module: candidate=1.48.0-SNAPSHOT~d4278e3633, baseline=1.48.0-SNAPSHOT~5d109aa0f8
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (724.72 ms) : 0, 724720
BytebuddyAgent [candidate] (719.788 ms) : 0, 719788
GlobalTracer [baseline] (241.091 ms) : 0, 241091
GlobalTracer [candidate] (240.229 ms) : 0, 240229
AppSec [baseline] (55.327 ms) : 0, 55327
AppSec [candidate] (55.287 ms) : 0, 55287
Remote Config [baseline] (698.145 µs) : 0, 698
Remote Config [candidate] (698.115 µs) : 0, 698
Telemetry [baseline] (12.942 ms) : 0, 12942
Telemetry [candidate] (12.104 ms) : 0, 12104
section appsec
BytebuddyAgent [baseline] (741.143 ms) : 0, 741143
BytebuddyAgent [candidate] (736.414 ms) : 0, 736414
GlobalTracer [baseline] (237.545 ms) : 0, 237545
GlobalTracer [candidate] (236.372 ms) : 0, 236372
AppSec [baseline] (176.637 ms) : 0, 176637
AppSec [candidate] (177.042 ms) : 0, 177042
Remote Config [baseline] (668.124 µs) : 0, 668
Remote Config [candidate] (677.71 µs) : 0, 678
Telemetry [baseline] (8.661 ms) : 0, 8661
Telemetry [candidate] (8.265 ms) : 0, 8265
IAST [baseline] (21.759 ms) : 0, 21759
IAST [candidate] (21.611 ms) : 0, 21611
section iast
BytebuddyAgent [baseline] (837.375 ms) : 0, 837375
BytebuddyAgent [candidate] (844.705 ms) : 0, 844705
GlobalTracer [baseline] (231.03 ms) : 0, 231030
GlobalTracer [candidate] (231.038 ms) : 0, 231038
AppSec [baseline] (56.252 ms) : 0, 56252
AppSec [candidate] (56.625 ms) : 0, 56625
Remote Config [baseline] (631.594 µs) : 0, 632
Remote Config [candidate] (614.111 µs) : 0, 614
Telemetry [baseline] (8.763 ms) : 0, 8763
Telemetry [candidate] (8.802 ms) : 0, 8802
IAST [baseline] (23.512 ms) : 0, 23512
IAST [candidate] (22.723 ms) : 0, 22723
section profiling
BytebuddyAgent [baseline] (711.403 ms) : 0, 711403
BytebuddyAgent [candidate] (715.228 ms) : 0, 715228
GlobalTracer [baseline] (350.936 ms) : 0, 350936
GlobalTracer [candidate] (352.558 ms) : 0, 352558
AppSec [baseline] (55.15 ms) : 0, 55150
AppSec [candidate] (54.546 ms) : 0, 54546
Remote Config [baseline] (691.768 µs) : 0, 692
Remote Config [candidate] (681.142 µs) : 0, 681
Telemetry [baseline] (8.997 ms) : 0, 8997
Telemetry [candidate] (9.005 ms) : 0, 9005
ProfilingAgent [baseline] (96.41 ms) : 0, 96410
ProfilingAgent [candidate] (97.098 ms) : 0, 97098
Profiling [baseline] (96.435 ms) : 0, 96435
Profiling [candidate] (97.123 ms) : 0, 97123
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.48.0-SNAPSHOT~d4278e3633, baseline=1.48.0-SNAPSHOT~5d109aa0f8
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.048 s) : 0, 1048233
Total [baseline] (8.726 s) : 0, 8726057
Agent [candidate] (1.05 s) : 0, 1049583
Total [candidate] (8.665 s) : 0, 8664707
section iast
Agent [baseline] (1.173 s) : 0, 1172753
Total [baseline] (9.225 s) : 0, 9225066
Agent [candidate] (1.171 s) : 0, 1171375
Total [candidate] (9.253 s) : 0, 9252608
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.171 s) : 0, 1171410
Total [baseline] (9.185 s) : 0, 9185475
Agent [candidate] (1.173 s) : 0, 1172876
Total [candidate] (9.183 s) : 0, 9182999
section iast_TELEMETRY_OFF
Agent [baseline] (1.188 s) : 0, 1188458
Total [baseline] (9.313 s) : 0, 9313031
Agent [candidate] (1.169 s) : 0, 1168772
Total [candidate] (9.249 s) : 0, 9249169
gantt
title insecure-bank - break down per module: candidate=1.48.0-SNAPSHOT~d4278e3633, baseline=1.48.0-SNAPSHOT~5d109aa0f8
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (723.082 ms) : 0, 723082
BytebuddyAgent [candidate] (724.789 ms) : 0, 724789
GlobalTracer [baseline] (241.09 ms) : 0, 241090
GlobalTracer [candidate] (241.276 ms) : 0, 241276
AppSec [baseline] (55.156 ms) : 0, 55156
AppSec [candidate] (55.42 ms) : 0, 55420
Remote Config [baseline] (686.992 µs) : 0, 687
Remote Config [candidate] (697.566 µs) : 0, 698
Telemetry [baseline] (13.257 ms) : 0, 13257
Telemetry [candidate] (12.379 ms) : 0, 12379
section iast
BytebuddyAgent [baseline] (838.106 ms) : 0, 838106
BytebuddyAgent [candidate] (838.084 ms) : 0, 838084
GlobalTracer [baseline] (230.626 ms) : 0, 230626
GlobalTracer [candidate] (230.079 ms) : 0, 230079
AppSec [baseline] (56.212 ms) : 0, 56212
AppSec [candidate] (56.459 ms) : 0, 56459
Remote Config [baseline] (619.825 µs) : 0, 620
Remote Config [candidate] (602.599 µs) : 0, 603
Telemetry [baseline] (8.762 ms) : 0, 8762
Telemetry [candidate] (8.698 ms) : 0, 8698
IAST [baseline] (23.585 ms) : 0, 23585
IAST [candidate] (22.56 ms) : 0, 22560
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (837.156 ms) : 0, 837156
BytebuddyAgent [candidate] (838.058 ms) : 0, 838058
GlobalTracer [baseline] (230.868 ms) : 0, 230868
GlobalTracer [candidate] (230.802 ms) : 0, 230802
AppSec [baseline] (55.642 ms) : 0, 55642
AppSec [candidate] (56.907 ms) : 0, 56907
Remote Config [baseline] (611.549 µs) : 0, 612
Remote Config [candidate] (608.791 µs) : 0, 609
Telemetry [baseline] (8.683 ms) : 0, 8683
Telemetry [candidate] (8.701 ms) : 0, 8701
IAST [baseline] (23.582 ms) : 0, 23582
IAST [candidate] (22.906 ms) : 0, 22906
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (849.664 ms) : 0, 849664
BytebuddyAgent [candidate] (835.043 ms) : 0, 835043
GlobalTracer [baseline] (233.027 ms) : 0, 233027
GlobalTracer [candidate] (230.235 ms) : 0, 230235
AppSec [baseline] (58.079 ms) : 0, 58079
AppSec [candidate] (56.945 ms) : 0, 56945
Remote Config [baseline] (645.804 µs) : 0, 646
Remote Config [candidate] (613.26 µs) : 0, 613
Telemetry [baseline] (9.031 ms) : 0, 9031
Telemetry [candidate] (8.546 ms) : 0, 8546
IAST [baseline] (22.9 ms) : 0, 22900
IAST [candidate] (22.448 ms) : 0, 22448
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 14 metrics, 16 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~d4278e3633, baseline=1.48.0-SNAPSHOT~5d109aa0f8
dateFormat X
axisFormat %s
section baseline
no_agent (380.703 µs) : 360, 401
. : milestone, 381,
iast (511.212 µs) : 489, 533
. : milestone, 511,
iast_FULL (723.747 µs) : 702, 746
. : milestone, 724,
iast_GLOBAL (555.539 µs) : 533, 578
. : milestone, 556,
iast_HARDCODED_SECRET_DISABLED (506.696 µs) : 485, 529
. : milestone, 507,
iast_INACTIVE (464.483 µs) : 443, 486
. : milestone, 464,
iast_TELEMETRY_OFF (498.493 µs) : 476, 521
. : milestone, 498,
tracing (454.77 µs) : 434, 475
. : milestone, 455,
section candidate
no_agent (375.496 µs) : 356, 395
. : milestone, 375,
iast (512.1 µs) : 490, 534
. : milestone, 512,
iast_FULL (725.68 µs) : 704, 748
. : milestone, 726,
iast_GLOBAL (557.846 µs) : 536, 580
. : milestone, 558,
iast_HARDCODED_SECRET_DISABLED (508.171 µs) : 487, 530
. : milestone, 508,
iast_INACTIVE (459.926 µs) : 439, 481
. : milestone, 460,
iast_TELEMETRY_OFF (499.727 µs) : 478, 522
. : milestone, 500,
tracing (452.697 µs) : 432, 474
. : milestone, 453,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~d4278e3633, baseline=1.48.0-SNAPSHOT~5d109aa0f8
dateFormat X
axisFormat %s
section baseline
no_agent (1.361 ms) : 1341, 1381
. : milestone, 1361,
appsec (1.726 ms) : 1701, 1750
. : milestone, 1726,
appsec_no_iast (1.739 ms) : 1715, 1763
. : milestone, 1739,
code_origins (1.665 ms) : 1638, 1692
. : milestone, 1665,
iast (1.502 ms) : 1477, 1527
. : milestone, 1502,
profiling (1.511 ms) : 1488, 1535
. : milestone, 1511,
tracing (1.473 ms) : 1448, 1498
. : milestone, 1473,
section candidate
no_agent (1.362 ms) : 1342, 1382
. : milestone, 1362,
appsec (1.729 ms) : 1706, 1753
. : milestone, 1729,
appsec_no_iast (1.751 ms) : 1727, 1775
. : milestone, 1751,
code_origins (1.663 ms) : 1636, 1690
. : milestone, 1663,
iast (1.509 ms) : 1485, 1532
. : milestone, 1509,
profiling (1.533 ms) : 1511, 1556
. : milestone, 1533,
tracing (1.488 ms) : 1463, 1513
. : milestone, 1488,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~d4278e3633, baseline=1.48.0-SNAPSHOT~5d109aa0f8
dateFormat X
axisFormat %s
section baseline
no_agent (1.473 ms) : 1462, 1485
. : milestone, 1473,
appsec (2.367 ms) : 2322, 2413
. : milestone, 2367,
iast (2.133 ms) : 2076, 2189
. : milestone, 2133,
iast_GLOBAL (2.183 ms) : 2126, 2240
. : milestone, 2183,
profiling (2.014 ms) : 1968, 2061
. : milestone, 2014,
tracing (1.979 ms) : 1935, 2023
. : milestone, 1979,
section candidate
no_agent (1.482 ms) : 1471, 1494
. : milestone, 1482,
appsec (2.351 ms) : 2306, 2395
. : milestone, 2351,
iast (2.138 ms) : 2081, 2195
. : milestone, 2138,
iast_GLOBAL (2.186 ms) : 2128, 2243
. : milestone, 2186,
profiling (2.003 ms) : 1956, 2049
. : milestone, 2003,
tracing (1.972 ms) : 1928, 2016
. : milestone, 1972,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~d4278e3633, baseline=1.48.0-SNAPSHOT~5d109aa0f8
dateFormat X
axisFormat %s
section baseline
no_agent (14.973 s) : 14973000, 14973000
. : milestone, 14973000,
appsec (14.955 s) : 14955000, 14955000
. : milestone, 14955000,
iast (19.122 s) : 19122000, 19122000
. : milestone, 19122000,
iast_GLOBAL (18.131 s) : 18131000, 18131000
. : milestone, 18131000,
profiling (15.808 s) : 15808000, 15808000
. : milestone, 15808000,
tracing (14.925 s) : 14925000, 14925000
. : milestone, 14925000,
section candidate
no_agent (14.913 s) : 14913000, 14913000
. : milestone, 14913000,
appsec (15.104 s) : 15104000, 15104000
. : milestone, 15104000,
iast (18.515 s) : 18515000, 18515000
. : milestone, 18515000,
iast_GLOBAL (18.08 s) : 18080000, 18080000
. : milestone, 18080000,
profiling (15.078 s) : 15078000, 15078000
. : milestone, 15078000,
tracing (14.973 s) : 14973000, 14973000
. : milestone, 14973000,
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good. I would have forgot about removing this part as part the wider refactoring 👍
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
Motivation
In the majority of cases the scope wrapper will only be accessed once when activating a span or context. The other cases are deprecated calls to check the active scope, where the returned scope wrapper is short-lived and cheap to recreate.
Additional Notes
The Kotlin, Zio, and some Otel context tests are expected to fail as the scope manager rework is still in-flight
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: APMAPI-960