opentelemetry-go icon indicating copy to clipboard operation
opentelemetry-go copied to clipboard

ID_GENERATOR PANIC

Open dino-ma opened this issue 3 years ago • 8 comments

Description

ID generator, sporadic panic in the read process.

Environment

  • OS: Centos
  • Architecture:amd64
  • Go Version: 1.16
  • opentelemetry-go version: 1.7.0

Steps To Reproduce

This Line : https://github.com/open-telemetry/opentelemetry-go/blob/main/sdk/trace/id_generator.go#L55

/go1-16-linux-amd64/src/runtime/panic.go:965 +0x1b9\nmath/rand.(*rngSource).Uint64(...)/ /go1-16-linux-amd64/src/math/rand/rng.go:249\nmath/rand.(*rngSource).Int63(...)/ /go1-16-linux-amd64/src/math/rand/rng.go:234\nmath/rand.read(0xc00267ebe8, 0x8, 0x8, 0x16c70b8, 0xc00034f500, 0xc00039d3a0, 0xc00039d3a8, 0x1, 0x0, 0x0)/ /go1-16-linux-amd64/src/math/rand/rand.go:274 +0x165\nmath/rand.(*Rand).Read(0xc00039d380, 0xc00267ebe8, 0x8, 0x8, 0x1, 0x0, 0x0)

Expected behavior

Sometimes it happens

dino-ma avatar Jul 10 '22 13:07 dino-ma

Is this the full error Go is providing? This looks like part of a stacktrace only.

dmathieu avatar Jul 11 '22 07:07 dmathieu

Have you built your application against the correct architecture? This looks like a mismatch:

Architecture:X86

vs

/go1-16-linux-amd64/src/runtime/panic.go:965 +0x1b9\nmath/rand.(*rngSource).Uint64(...)/

Moreover, Go 1.16 is not supported. See: https://github.com/open-telemetry/opentelemetry-go#compatibility

pellared avatar Jul 11 '22 09:07 pellared

Is this the full error Go is providing? This looks like part of a stacktrace only.

I desensitized the stack information. The core is only this part. Is there a solution? And this part of the code has nothing to do with the language version.

dino-ma avatar Jul 11 '22 09:07 dino-ma

Have you built your application against the correct architecture? This looks like a mismatch:

Architecture:X86

vs

/go1-16-linux-amd64/src/runtime/panic.go:965 +0x1b9\nmath/rand.(*rngSource).Uint64(...)/

Moreover, Go 1.16 is not supported. See: https://github.com/open-telemetry/opentelemetry-go#compatibility

Sorry,I desensitized the stack information. The core is only this part. Is there a solution? And this part of the code has nothing to do with the language version

dino-ma avatar Jul 11 '22 09:07 dino-ma

  1. It looks as if you build against amd64 arch instead of 386.
  2. From the information that you provided I can redirect you to create an issue in https://github.com/golang/go as nothing that you provided indicated a bug in https://github.com/open-telemetry/opentelemetry-go

pellared avatar Jul 11 '22 10:07 pellared

I see that you changed the environment information 👍

Can you please provide the exact steps to reproduce? Does it happen on all CentOS versions? Can you create a test or application that reproduces the panic? Have you tested it against Go 1.17 or Go 1.18 as well?

pellared avatar Jul 11 '22 11:07 pellared

I see that you changed the environment information 👍

Can you please provide the exact steps to reproduce? Does it happen on all CentOS versions? Can you create a test or application that reproduces the panic? Have you tested it against Go 1.17 or Go 1.18 as well?

Our production environment is currently at 16. This problem seems to have nothing to do with the language version.

This Line : https://github.com/open-telemetry/opentelemetry-go/blob/main/sdk/trace/id_generator.go#L55

dino-ma avatar Jul 11 '22 11:07 dino-ma

Please provide code and steps to run the code that reproduce the behavior. It is not possible to troubleshoot this without that information.

MrAlias avatar Jul 11 '22 15:07 MrAlias

Please provide code and steps to run the code that reproduce the behavior. It is not possible to troubleshoot this without that information.

MrAlias avatar Oct 20 '22 22:10 MrAlias