Skip to content
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

fatal error: runtime: out of memory #6

Closed
6ecuk opened this issue Apr 7, 2020 · 15 comments
Closed

fatal error: runtime: out of memory #6

6ecuk opened this issue Apr 7, 2020 · 15 comments

Comments

@6ecuk
Copy link

6ecuk commented Apr 7, 2020

Unfortunately, the binary carrier is not safe and in the case when you have produced a message without tracing injection was handled by a subscriber with tracer extractor you can catch fatal error: runtime: out of memory.
Related issue: jaegertracing/jaeger-client-go#321
Example:

#Producer
nc.Publish("test", []byte(`"user_id":"49e3c5bb-9c84-4222-9650-30bdde4649a8"`)
#Subscriber
t := not.NewTraceMsg(msg)

// Extract the span context from the request message.
sc, err := tracer.Extract(opentracing.Binary, t)
if err != nil {
    log.Printf("Extract error: %v", err)
}

https://github.com/jaegertracing/jaeger-client-go/blob/ef8f5edb71dffedf02a69593a23bb2fae4e16dc4/propagation.go#L244
issue_1
issue_2

@6ecuk
Copy link
Author

6ecuk commented May 27, 2020

Generic header support may fix these issues. We can split spanID and payload between headers and body.
nats-io/nats.go#560

@derekcollison
Copy link
Member

We are about to land official header support.

@derekcollison
Copy link
Member

Also, is this a jaeger client issue or this client library?

@6ecuk
Copy link
Author

6ecuk commented May 28, 2020

It's the jaeger client issue

@derekcollison
Copy link
Member

Can we post an issue over there as well?

@6ecuk
Copy link
Author

6ecuk commented May 28, 2020

There exist the issue jaegertracing/jaeger-client-go#321

@derekcollison
Copy link
Member

Perfect thanks.

@6ecuk
Copy link
Author

6ecuk commented Jul 6, 2020

@derekcollison Is there any due of new(tag) version of NATS with the headers support?

@derekcollison
Copy link
Member

We are still working through any issues but could tag one if needed. Or do you mean do a release?

@6ecuk
Copy link
Author

6ecuk commented Jul 6, 2020

@derekcollison I waiting for the release to run a stable version on our stage env

@derekcollison
Copy link
Member

ok but we do not have a released server that supports it, only nightly builds etc.

@6ecuk 6ecuk closed this as completed Jul 6, 2020
@6ecuk 6ecuk reopened this Jul 6, 2020
@6ecuk
Copy link
Author

6ecuk commented Sep 10, 2020

@derekcollison is nats streaming server will be support headers too?

@derekcollison
Copy link
Member

We do not have plans at this time. @kozlovic will make final call though. We do support them in JetStream.

@kozlovic
Copy link
Member

No plan, but if they are to be supported by the streaming layer, should headers then not be part of the protobuf itself? But doing so, is different than having them at the core NATS layer, so not sure that applies to this issue.

@6ecuk
Copy link
Author

6ecuk commented Apr 15, 2021

jaegertracing/jaeger-client-go#529 fixed the problem

@6ecuk 6ecuk closed this as completed Apr 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants