Agroal has a reference to a Netty class while not depending on it
See original GitHub issueDescribe the bug
After upgrading our project to Quarkus 2.1.1 from 2.1.0 we noticed that our database integration tests started to fail.
Quarkus tries to start, but crashes directly with:
java.lang.RuntimeException: java.lang.RuntimeException: Failed to start quarkus
Caused by: java.lang.RuntimeException: Failed to start quarkus
Caused by: java.lang.NoClassDefFoundError: io/netty/util/concurrent/FastThreadLocal
Caused by: java.lang.ClassNotFoundException: io.netty.util.concurrent.FastThreadLocal
Could this be related to the work done here https://github.com/quarkusio/quarkus/pull/18925?
Expected behavior
No response
Actual behavior
No response
How to Reproduce?
Couldn’t get a simple reproducer right now.
Output of uname -a
or ver
Darwin Willems-MBP.i.btp34.nl 20.5.0 Darwin Kernel Version 20.5.0: Sat May 8 05:10:33 PDT 2021; root:xnu-7195.121.3~9/RELEASE_X86_64 x86_64
Output of java -version
openjdk 11.0.11 2021-04-20 OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9) OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (build 11.0.11+9, mixed mode)
GraalVM version (if different from Java)
No response
Quarkus version or git rev
2.1.1.Final
Build tool (ie. output of mvnw --version
or gradlew --version
)
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d) Maven home: /Users/wjglerum/.m2/wrapper/dists/apache-maven-3.8.1-bin/2l5mhf2pq2clrde7f7qp1rdt5m/apache-maven-3.8.1 Java version: 11.0.11, vendor: AdoptOpenJDK, runtime: /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home Default locale: en_NL, platform encoding: UTF-8 OS name: "mac os x", version: "11.4", arch: "x86_64", family: "mac"
Additional information
No response
Issue Analytics
- State:
- Created 2 years ago
- Comments:7 (6 by maintainers)
Top Results From Across the Web
Datasources - Quarkus
Agroal is a modern, lightweight connection pool implementation designed for very high performance and scalability, and features first class integration with ...
Read more >Non blocking I/O with Netty - Medium
Netty is a Non blocking I/O client server framework which enables quick and easy development of network applications such as protocol servers and...
Read more >Datasources - Quarkus
Agroal is a modern, light weight connection pool implementation designed for very high performance and scalability, and features first class integration with ...
Read more >User guide for 4.x - Netty.docs
Another inevitable case is when you have to deal with a legacy ... All class names in this document are linked to the...
Read more >Dependency Versions - Spring
Group ID Artifact ID Version
ch.qos.logback logback‑access 1.4.5
ch.qos.logback logback‑classic 1.4.5
ch.qos.logback logback‑core 1.4.5
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
It is definitely possible to run without Netty, e.g. a CLI hibernate app. That said most extensions that do anything with the network rely on it.
hi @xstefank ! AFAIK (but would like to hear confirmations from others) we almost always require Netty - perhaps only with CLI apps is it not required but I’m not sure. I’d suggest to get an authoritative answer about that first (Stuart will likely comment when he’s back), so to not do such work without need.