-
-
Notifications
You must be signed in to change notification settings - Fork 441
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
Non-blocking UUID generation for Spans #3325
Comments
Hello @Andrevmatias thanks for opening this issue. We'll add this to the backlog but can't say when we'll get to it. |
In theory this should be straightforward:
To consider:
|
Hey Team, it would really help to have reduced impact on performance from the sentry library. Is there any update on this? cc @markushi |
@Angelodaniel thx for the ping, we'll revisit prio for this |
@lbloder Can you have a look at this? |
Reminder to check which improvements make sense to port to v7 |
Hi @Andrevmatias, @kozaxinan, @kozaxinan from which android version does your profile chart come from? I'm asking because apparently |
Our minimum API is 23. I used a device with API 34 for this. |
We are using Java 17. We implemented the Sentry instrumentation only because we upgraded the JDK from 8. We are aware of the Java 8 UUID problems. Our main problem is that our software does a lot of operations per second and all of them are generating UUIDs now. Most of the times, needlessly. |
Thanks @Andrevmatias we're currently testing some improvements to speed up the ID generation. |
We have just released |
Problem Statement
The UUID generation for Spans is made using
UUID.randomUUID()
deep within the library and can't be replaced easily.UUID.randomUUID()
can be a blocking method depending on the Java distribution and OS configurations and it's resulting in a lot of our threads being blocked, impairing the system performance. We don't have control over the servers were our system is installed.Also, the Spans and Transactions are created for every request regardless of whether it will be sent to Sentry. It occurs before the sampling process and is created even if
sentry.traces-sample-rate
is0
ornull
. This creates a lot of UUIDs that I think are not even necessary.Solution Brainstorm
┆Issue is synchronized with this Jira Improvement by Unito
The text was updated successfully, but these errors were encountered: