diff --git a/sdk/trace/src/main/java/io/opentelemetry/sdk/trace/AndroidFriendlyRandomIdGenerator.java b/sdk/trace/src/main/java/io/opentelemetry/sdk/trace/AndroidFriendlyRandomIdGenerator.java index ae320ae9e5..f033add3c2 100644 --- a/sdk/trace/src/main/java/io/opentelemetry/sdk/trace/AndroidFriendlyRandomIdGenerator.java +++ b/sdk/trace/src/main/java/io/opentelemetry/sdk/trace/AndroidFriendlyRandomIdGenerator.java @@ -31,12 +31,11 @@ enum AndroidFriendlyRandomIdGenerator implements IdGenerator { @Override public String generateTraceId() { - long idHi; + long idHi = random.nextLong(); long idLo; do { - idHi = random.nextLong(); idLo = random.nextLong(); - } while (idHi == INVALID_ID && idLo == INVALID_ID); + } while (idLo == INVALID_ID); return TraceId.fromLongs(idHi, idLo); } } diff --git a/sdk/trace/src/main/java/io/opentelemetry/sdk/trace/RandomIdGenerator.java b/sdk/trace/src/main/java/io/opentelemetry/sdk/trace/RandomIdGenerator.java index 2757a3e150..2026f8e579 100644 --- a/sdk/trace/src/main/java/io/opentelemetry/sdk/trace/RandomIdGenerator.java +++ b/sdk/trace/src/main/java/io/opentelemetry/sdk/trace/RandomIdGenerator.java @@ -26,13 +26,12 @@ enum RandomIdGenerator implements IdGenerator { @Override public String generateTraceId() { - long idHi; - long idLo; ThreadLocalRandom random = ThreadLocalRandom.current(); + long idHi = random.nextLong(); + long idLo; do { - idHi = random.nextLong(); idLo = random.nextLong(); - } while (idHi == INVALID_ID && idLo == INVALID_ID); + } while (idLo == INVALID_ID); return TraceId.fromLongs(idHi, idLo); } }