Comments (5)
I also tested with me.escoffier.loom:loom-unit:0.3.0
from @cescoffier and as expected, the behaviour is the same.
from quarkus.
Unfortunately, there is not much we can do.
Let me explain. We trigger JFR recording to detect pinning and analyze when a specific event is fired. Unfortunately, to ensure we do not miss any events, we must ensure the JFR recording is on and off. We fire a mock event and wait until we read it.
The JFR recording API is not great, and it takes a lot of time to do these loops, there are many file reads. As you can see, it takes around 2 seconds to start and 2 seconds to stop. But without them, we cannot be sure we are not missing an event.
I hope it will be improved in future versions of the JDK. I know we kind of abuse something that was not meant to be used like that.
I have tried other ways, based on bytecode manipulation - but manipulating classes from the JDK is... never a good idea.
from quarkus.
(obviously if you think of a better way, I would love to hear about it)
from quarkus.
Thank you very much for your explanation.
I’m not aware enough of JVM internals to have a better solution that the current one; however, I can add your explanation to the @VirtualThreadUnit
annotation Javadoc. This would at least warn users about the potential performance issues.
Let me know if this is a good idea and if yes, I’ll do it (I know some projects prefer not having this kind of data in their Javadoc).
PS: I could also add a note about the usage of JFR, thus this won’t work with JVM that don’t support it (as OpenJ9).
from quarkus.
Yes! Having a note in the javadoc would be great! Ping me once you have a PR.
from quarkus.
Related Issues (20)
- OidcProvider throws NPE when certificate chain is configured with OIDC server which has no JWK keys at the startup HOT 1
- Build Card Page for Dev UI results in NPE in ArtifactInfoUtil HOT 10
- ARJUNA012095: Abort of action id <ID> invoked while multiple threads active within it. HOT 2
- allow fetching of lazy relations outside of its original transaction HOT 12
- Customize Vert.x builder to update the Vert.x Cluster manager configuration HOT 1
- `ImageMetricsITCase.verifyImageMetrics` failures in `main` HOT 15
- quarkus-quartz: CDIAwareJob destroys instance of Quartz Job too early when Job is a @Dependent bean HOT 4
- try it out in swagger configuration option HOT 5
- Agroal Data Source Health check failing for reactive data source HOT 5
- Offer a way to block inside custom `SecurityContext.isUserInRole` with resteasy-reactive HOT 15
- Hibernate Reactive can't persist a many-to-many relation when one of the entities is a child (with the "joined" inheritance type) and the batch size is greater than 1 HOT 10
- Postgresql bump causing detection of instance Random/SplittableRandom HOT 11
- jpamodelgen fails with range out of bounds HOT 9
- Properly pass errors from JsonRPC backends to Dev UI HOT 2
- Unable to build a container with Jib when podman is running HOT 7
- Exception thrown when stopping devmode and with dev services running with Podman HOT 1
- Quarkus opentelemetry extension WARNING when exporting to dynatrace HOT 11
- GRPC server doesn't respond when running on the same server as HTTP and using TLS HOT 6
- Add @PermissionsAllowed to Panache Resources HOT 9
- Native: Introduce flag to favor build time improvements at the cost of using more resources and vice versa HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from quarkus.