-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
[chore] [exporterhelper] Remove retry sender -> queue sender callback #8942
Conversation
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #8942 +/- ##
==========================================
- Coverage 91.55% 91.55% -0.01%
==========================================
Files 315 315
Lines 17117 17105 -12
==========================================
- Hits 15672 15660 -12
Misses 1150 1150
Partials 295 295 ☔ View full report in Codecov by Sentry. |
ae14cff
to
c25c88e
Compare
39c1e38
to
94a70c0
Compare
94a70c0
to
df85077
Compare
The coverage will be improved after #8960 is merged |
This PR introduces a significant change in behavior: re-enqueueing in the persistent queue will be always enabled even if the retry sender is disabled. I'm turning it into a draft for now until it's properly addressed. |
) Update the test validating failed re-enqueue to ensure that the request is sent through the queue sender, not the retry sender. It'll unblock removing the dependency on the retry sender for the re-enqueue as done in #8942
df85077
to
82f55a4
Compare
This is now resolved by introducing a separate config option for re-enqueue. |
2b3035d
to
9727f41
Compare
I'm going to break this PR down |
Remove the QueueRequest wrapper. Pass consumeFunc to the queue instead of asking for the QueueRequest wrapper with callback. The callback isn't needed for the memory queue, and the field for the callback is occupying the memory even it's always empty. The bounded queue benchmark results show the RAM savings: Before: ``` Benchmark_QueueUsage_50000_1_50000 Benchmark_QueueUsage_50000_1_50000-10 1 69813548417 ns/op 2806232 B/op 99753 allocs/op ``` After: ``` Benchmark_QueueUsage_50000_1_50000 Benchmark_QueueUsage_50000_1_50000-10 1 65498055709 ns/op 2404832 B/op 99754 allocs/op ``` Cut from #8942
This change changes the re-enqueue capability of the queue sender to not depend on the retry sender and have a separate configuration for that
9727f41
to
d84c40a
Compare
Closing in favor of #8985 |
…en-telemetry#8960) Update the test validating failed re-enqueue to ensure that the request is sent through the queue sender, not the retry sender. It'll unblock removing the dependency on the retry sender for the re-enqueue as done in open-telemetry#8942
…etry#8982) Remove the QueueRequest wrapper. Pass consumeFunc to the queue instead of asking for the QueueRequest wrapper with callback. The callback isn't needed for the memory queue, and the field for the callback is occupying the memory even it's always empty. The bounded queue benchmark results show the RAM savings: Before: ``` Benchmark_QueueUsage_50000_1_50000 Benchmark_QueueUsage_50000_1_50000-10 1 69813548417 ns/op 2806232 B/op 99753 allocs/op ``` After: ``` Benchmark_QueueUsage_50000_1_50000 Benchmark_QueueUsage_50000_1_50000-10 1 65498055709 ns/op 2404832 B/op 99754 allocs/op ``` Cut from open-telemetry#8942
Use returned error instead to simplify the senders feedback loop