Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

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

Ouverte
#12,795 6 commentaires 0 réactions 1 personne assignée Voir sur GitHub

Les mainteneurs répondent en général sous 2 jours

@mcculls y travaille déjà.

Depuis le 8/10/2026.

Évaluation

Cette issue n'a pas encore été évaluée.

Description

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
Langage dominant
Java
Étoiles
736
Forks
364
Merge moyen
3 j 9 h
PR mergées (30 j)
219

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de DataDog/dd-trace-java

Toutes les issues de DataDog/dd-trace-java

Issues similaires

Plus d'issues Java

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.