Skip to content

Commit 2295cba

Browse files
committed
fallback to threadId -1 if it cannot be resolved
1 parent 802e79e commit 2295cba

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

sentry-async-profiler/src/main/java/io/sentry/asyncprofiler/convert/JfrAsyncProfilerToSentryProfileConverter.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626

2727
public final class JfrAsyncProfilerToSentryProfileConverter extends JfrConverter {
2828
private static final double NANOS_PER_SECOND = 1_000_000_000.0;
29+
private static final long UNKNOWN_THREAD_ID = -1;
2930

3031
private final @NotNull SentryProfile sentryProfile = new SentryProfile();
3132
private final @NotNull SentryStackTraceFactory stackTraceFactory;
@@ -113,13 +114,16 @@ public void visit(Event event, long samples, long value) {
113114
}
114115
}
115116

116-
private long resolveThreadId(int eventThreadId) {
117-
return jfr.threads.get(eventThreadId) != null
118-
? jfr.javaThreads.get(eventThreadId)
119-
: eventThreadId;
117+
private long resolveThreadId(int eventId) {
118+
Long javaThreadId = jfr.javaThreads.get(eventId);
119+
return javaThreadId != null ? javaThreadId : UNKNOWN_THREAD_ID;
120120
}
121121

122122
private void processThreadMetadata(Event event, long threadId) {
123+
if (threadId == UNKNOWN_THREAD_ID) {
124+
return;
125+
}
126+
123127
final String threadName = getPlainThreadName(event.tid);
124128
sentryProfile
125129
.getThreadMetadata()

0 commit comments

Comments
 (0)