Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Startup ~2x slower with AOT class linking: agent retransforms ~22k preloaded classes (JDK 25, 1.67.0)

Aperta
#12,795 2 commenti 0 reazioni 1 assegnatario Vedi su GitHub

I maintainer di solito rispondono entro 2 giorni

@mcculls ci sta già lavorando.

Dal 8/10/2026.

Valutazione

Questa issue non è ancora stata valutata.

Descrizione

type: bug report
Tracer Version(s)

1.67.0

Java Version(s)

Temurin 25.0.2

JVM Vendor

Eclipse Adoptium / Temurin

Bug Report

Since AOT support has been improved here:

We have been trying out fully utilizing AOT. We are able to see gains on application start time at around 60% speed improvements. We notice before the app starts though, it's slowed down significantly, leaving us with only a total 20% speed improvement overall for startup.

Some examples from our actual applications:

Before (6 Oct):
2026-10-06T22:24:00Z  Started FooApplicationKt in 13.317 seconds (process running for 15.688)   gap 2.4s
2026-10-06T22:22:47Z  Started FooApplicationKt in 14.593 seconds (process running for 17.011)   gap 2.4s
2026-10-06T22:21:54Z  Started FooApplicationKt in 14.482 seconds (process running for 17.007)   gap 2.5s
After (8 Oct):
2026-10-08T16:45:05Z  Started FooApplicationKt in 6.136 seconds (process running for 12.36)    gap 6.2s
2026-10-08T16:45:04Z  Started FooApplicationKt in 7.517 seconds (process running for 14.191)   gap 6.7s
2026-10-08T16:38:03Z  Started FooApplicationKt in 5.985 seconds (process running for 12.091)   gap 6.1s
Expected Behavior

AOT application startup speed improvements should not be negated at pre-application startup stage.

Reproduction Code

Here's a repro:
https://gist.github.com/davidgoldtempo/fdc330f67eeba5848689e8a7fd4d815c

JDK:   openjdk version "25.0.2" 2026-01-20 LTS
Agent: dd-java-agent 1.67.0
Runs:  5 per variant
Work:  /tmp/aot-startup-repro-work  (rm -rf to clean up)
Main:  org.springframework.samples.petclinic.PetClinicApplication

Training AOT caches...

=== median of 5 starts, dd-java-agent 1.67.0 ===
  (pre-spring gap = JVM uptime at 'Started' minus Spring's own startup time)
  no AOT,           no agent               spring= 3.20s  process= 3.41s  pre-spring gap= 0.21s  redefined-classes=0
  no AOT,           agent                  spring= 3.87s  process= 4.91s  pre-spring gap= 1.04s  redefined-classes=8
  AOT no-classlink, agent                  spring= 3.80s  process= 4.88s  pre-spring gap= 1.08s  redefined-classes=8
  AOT classlink,    no agent               spring= 1.14s  process= 1.36s  pre-spring gap= 0.23s  redefined-classes=0
  AOT classlink,    agent  <== SLOW GAP    spring= 1.20s  process= 3.32s  pre-spring gap= 2.12s  redefined-classes=87
Lingua principale
Java
Stelle
736
Fork
364
Merge medio
3g 9h
PR unite (30g)
219

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di DataDog/dd-trace-java

Tutte le issue di DataDog/dd-trace-java

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.