-
Notifications
You must be signed in to change notification settings - Fork 536
Closed
Labels
bugSomething isn't workingSomething isn't workingtriage/acceptedIndicates an issue or PR is ready to be actively worked on.Indicates an issue or PR is ready to be actively worked on.
Description
Class PeriodicExportingMetricReader contains two thread instrumentations:
worker_thread_instrumentation_collect_thread_instrumentation_
but only one thread is actually running.
For subclasses of ThreadInstrumentation that do not use thread local storage, the SDK maintains the illusion that two threads are running, which was the case before the refactoring done in #3383.
For subclasses of ThreadInstrumentation that do use thread local storage, this creates chaos, because both the worker and collect instrumentation is invoked in the same thread, causing collisions in thread local storage state.
The proper fix is to remove collect_thread_instrumentation_ entirely, now that the collect thread no longer exist, and use worker_thread_instrumentation_ to instrument the (worker) thread execution.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingtriage/acceptedIndicates an issue or PR is ready to be actively worked on.Indicates an issue or PR is ready to be actively worked on.