Skip to content
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

Monitoring dev mode ARC in dev ui crash quarkus "dev flow" #33137

Closed
PhilippeCancellier opened this issue May 5, 2023 · 3 comments · Fixed by #33367
Closed

Monitoring dev mode ARC in dev ui crash quarkus "dev flow" #33137

PhilippeCancellier opened this issue May 5, 2023 · 3 comments · Fixed by #33367
Labels
area/arc Issue related to ARC (dependency injection) area/dev-ui area/devmode kind/bug Something isn't working
Milestone

Comments

@PhilippeCancellier
Copy link

Describe the bug

In DEV-UI, in the configuration tab, activating the property quarkus.arc.dev-mode.monitoring-enabled implies a crash.
dev mode must be restarted.

2023-05-05 07:10:13,088 ERROR [io.qua.run.boo.StartupActionImpl] (Quarkus Main Thread) Error running Quarkus: java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at io.quarkus.runner.bootstrap.StartupActionImpl$1.run(StartupActionImpl.java:104)
	at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.ExceptionInInitializerError
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
	at io.quarkus.runtime.Quarkus.run(Quarkus.java:70)
	at io.quarkus.runtime.Quarkus.run(Quarkus.java:44)
	at io.quarkus.runtime.Quarkus.run(Quarkus.java:124)
	at io.quarkus.runner.GeneratedMain.main(Unknown Source)
	... 6 more
Caused by: java.lang.RuntimeException: Failed to start quarkus
	at io.quarkus.runner.ApplicationImpl.<clinit>(Unknown Source)
	... 15 more
Caused by: java.lang.NoSuchMethodError: io.quarkus.vertx.http.runtime.CurrentVertxRequest_Bean: method 'void <init>()' not found
	at io.quarkus.arc.setup.Default_ComponentsProvider.addBeans1(Unknown Source)
	at io.quarkus.arc.setup.Default_ComponentsProvider.getComponents(Unknown Source)
	at io.quarkus.arc.impl.ArcContainerImpl.<init>(ArcContainerImpl.java:120)
	at io.quarkus.arc.Arc.initialize(Arc.java:45)
	at io.quarkus.arc.runtime.ArcRecorder.initContainer(ArcRecorder.java:47)
	at io.quarkus.deployment.steps.ArcProcessor$generateResources844392269.deploy_0(Unknown Source)
	at io.quarkus.deployment.steps.ArcProcessor$generateResources844392269.deploy(Unknown Source)
	... 16 more

Expected behavior

If this property cannot be updated at runtime, it would be described in documentation and mentioned to the user in DEV UI.

Actual behavior

No response

How to Reproduce?

  1. Start the quarkus dev mode
  2. Go to dev ui
  3. Go to configuration tab
  4. Activate the property quarkus.arc.dev-mode.monitoring-enabled. A notification appears to acknowlegde the update.

quarkus arc dev-mode monitoring-enabled 2023-05-05

The quarkus console indicates that reload is done

INFO [io.qua.dep.dev.RuntimeUpdatesProcessor] (vert.x-worker-thread-1) Live reload total time: 0.173s

  1. Try to GET /hello or any other endpoints and you will see the stacktrace mentioned before.

Output of uname -a or ver

Darwin Kernel Version 21.6.0

Output of java -version

openjdk version "17.0.1" 2021-10-19 OpenJDK Runtime Environment (build 17.0.1+12-39) OpenJDK 64-Bit Server VM (build 17.0.1+12-39, mixed mode, sharing)

GraalVM version (if different from Java)

No response

Quarkus version or git rev

3.0.2.Final

Build tool (ie. output of mvnw --version or gradlew --version)

Maven home: /Users/fifcan/.m2/wrapper/dists/apache-maven-3.8.8-bin/67c30f74/apache-maven-3.8.8 Java version: 17.0.1, vendor: Oracle Corporation, runtime: /Users/fifcan/Library/Java/JavaVirtualMachines/openjdk-17.0.1/Contents/Home Default locale: fr_FR, platform encoding: UTF-8 OS name: "mac os x", version: "12.6.5", arch: "aarch64", family: "mac"

Additional information

No response

@PhilippeCancellier PhilippeCancellier added the kind/bug Something isn't working label May 5, 2023
@quarkus-bot quarkus-bot bot added area/arc Issue related to ARC (dependency injection) area/dev-ui area/devmode labels May 5, 2023
@quarkus-bot
Copy link

quarkus-bot bot commented May 5, 2023

/cc @Ladicek (arc), @cescoffier (devui), @manovotn (arc), @mkouba (arc), @phillip-kruger (devui)

@mkouba
Copy link
Contributor

mkouba commented May 9, 2023

Yes, this was never supported. A change in quarkus.arc.dev-mode.monitoring-enabled requires a full rebuild, i.e. we need to document this requirement.

@manovotn
Copy link
Contributor

The config property now has a javadoc that explains it needs a rebuild to operate properly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/arc Issue related to ARC (dependency injection) area/dev-ui area/devmode kind/bug Something isn't working
Projects
None yet
3 participants