This agent release updates the following bundles:
* agent 1.1.776: Adds hostname resolution tracking and change detection
* agent-task-orchestrator 1.0.11: Tracks thread pools and prevents task leaks
* agent-jvm-handling 1.0.47: Standardizes JVM communication on AgentSocket endpoint
Features
This release adds the following features:
* All JVM-to-agent communication now uses the AgentSocket mechanism on port 42699. The ENABLE_AGENT_SOCKET environment variable is now a no-op, and the legacy socket-based communication channel has been removed.
Fixes
This release includes the following fixes:
* Previously, ServiceLoader.load() failed in custom classloaders when loading services from META-INF/services. Now, both AgentInMemoryClassLoader and AgentURLClassloader properly support ServiceLoader discovery.
* Previously, non-root users could not attach to OpenJ9 JVMs when root created attachment lock files. Now, Byte Buddy 1.18.9 enforces 0666 permissions on lock files, enabling multi-user attachment.
* Previously, metaspace exhaustion could prevent the monitor from detecting low memory conditions. Now, the metaspace monitor runs as an independent bundle and triggers agent restart when less than 20 MB metaspace remains available, with faster detection (50 seconds vs 3 minutes).
* Previously, hostname changes went undetected, causing troubleshooting difficulties. Now, the agent tracks hostname resolution methods and detects changes with detailed diagnostics.
* Previously, unreferenced thread pools could leak tasks indefinitely. Now, the agent tracks all thread pools and automatically cancels tasks in unreferenced pools after 60 seconds.
Internal updates
These changes improve internal stability and prepare future enhancements:
* javaagent-loader 1.3.77
* attach-tools 1.18.9
* agent-task-orchestrator-api 1.0.5
* agent-util 1.0.22