microsoft / microsoft/gctoolkit

IllegalStateException: Already undeployed

Open
#296 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Java
Stars
1.3k
Forks
177
Avg merge
1d 11h
Merged PRs (30d)
3

Description

Running the sample gives an IllegalStateException: Already undeployed. This is not an problem, so maybe the exception shouldn't be logged as severe.

First, run ./mvnw clean install from the project root. Then, from the sample directory, run ../mvnw compile dependency:copy-dependencies. Lastly, run java --module-path target/classes:target/lib --module com.microsoft.gctoolkit.sample/com.microsoft.gctoolkit.sample.Main ../gclogs/preunified/cms/defnew/details/defnew.log. These steps are in the README file for the root and sample.

java --module-path target/classes:target/lib --module com.microsoft.gctoolkit.sample/com.microsoft.gctoolkit.sample.Main ../gclogs/preunified/cms/defnew/details/defnew.log
Jun 13, 2023 12:25:30 PM io.netty.util.internal.PlatformDependent <clinit>
INFO: Your platform does not provide complete low-level API for accessing direct buffers reliably. Unless explicitly requested, heap buffer will always be preferred to avoid potential system instability.
Jun 13, 2023 12:25:30 PM io.netty.resolver.dns.DnsServerAddressStreamProviders <clinit>
WARNING: Can not find io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider in the classpath, fallback to system defaults. This may result in incorrect DNS resolutions on MacOS. Check whether you have a dependency on 'io.netty:netty-resolver-dns-native-macos'
Jun 13, 2023 12:25:31 PM io.vertx.core.impl.DeploymentManager
SEVERE: Undeploy failed
java.lang.IllegalStateException: Already undeployed
	at io.vertx.core@4.4.3/io.vertx.core.impl.DeploymentManager$DeploymentImpl.doUndeploy(DeploymentManager.java:322)
	at io.vertx.core@4.4.3/io.vertx.core.impl.DeploymentManager.undeployVerticle(DeploymentManager.java:82)
	at io.vertx.core@4.4.3/io.vertx.core.impl.DeploymentManager.undeployAll(DeploymentManager.java:109)
	at io.vertx.core@4.4.3/io.vertx.core.impl.VertxImpl.lambda$close$15(VertxImpl.java:629)
	at io.vertx.core@4.4.3/io.vertx.core.impl.future.FutureImpl$3.onSuccess(FutureImpl.java:141)
	at io.vertx.core@4.4.3/io.vertx.core.impl.future.FutureBase.emitSuccess(FutureBase.java:60)
	at io.vertx.core@4.4.3/io.vertx.core.impl.future.FutureImpl.addListener(FutureImpl.java:196)
	at io.vertx.core@4.4.3/io.vertx.core.impl.future.PromiseImpl.addListener(PromiseImpl.java:23)
	at io.vertx.core@4.4.3/io.vertx.core.impl.future.FutureImpl.onComplete(FutureImpl.java:164)
	at io.vertx.core@4.4.3/io.vertx.core.impl.future.PromiseImpl.onComplete(PromiseImpl.java:23)
	at io.vertx.core@4.4.3/io.vertx.core.impl.VertxImpl.close(VertxImpl.java:628)
	at com.microsoft.gctoolkit.vertx@3.0.5-SNAPSHOT/com.microsoft.gctoolkit.vertx.VertxChannel.close(VertxChannel.java:36)
	at com.microsoft.gctoolkit.vertx@3.0.5-SNAPSHOT/com.microsoft.gctoolkit.vertx.VertxDataSourceChannel.close(VertxDataSourceChannel.java:39)
	at com.microsoft.gctoolkit.api@3.0.5-SNAPSHOT/com.microsoft.gctoolkit.jvm.AbstractJavaVirtualMachine.analyze(AbstractJavaVirtualMachine.java:199)
	at com.microsoft.gctoolkit.api@3.0.5-SNAPSHOT/com.microsoft.gctoolkit.GCToolKit.analyze(GCToolKit.java:308)
	at com.microsoft.gctoolkit.sample@3.0.5-SNAPSHOT/com.microsoft.gctoolkit.sample.Main.analyze(Main.java:53)
	at com.microsoft.gctoolkit.sample@3.0.5-SNAPSHOT/com.microsoft.gctoolkit.sample.Main.main(Main.java:31)

The XYDataSet for DefNew contains 19114 items.
The XYDataSet for Remark contains 26 items.
The XYDataSet for InitialMark contains 26 items.
DefNew : 19114
Remark : 26
InitialMark : 26

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Run the documented Maven build and sample command from the repository README, then trace the shutdown path through VertxChannel.close, AbstractJavaVirtualMachine.analyze, and the sample Main entry point. Determine whether the expected result is to suppress the benign Already undeployed SEVERE log while preserving the dataset output, and verify the sample no longer reports that error.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.