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

Adaptive Request Concurrency (ARC) should maintain separate state per (some) partition keys #21725

Open
jszwedko opened this issue Nov 6, 2024 · 0 comments
Labels
domain: ARC Anything related to adaptive request concurrency type: bug A code related bug.

Comments

@jszwedko
Copy link
Member

jszwedko commented Nov 6, 2024

A note for the community

  • Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment

Problem

Broken off from #21402

Currently, ARC maintains a global view of requests originating from a given sink; however, different request partitions can have correlated response behavior from the upstream. For example, a Datadog Logs sink where some incoming events have different API keys, one of which is invalid, can cause ARC to think it should back off all requests, and not just the partition with the invalid API key.

Ideally, ARC would maintain separate limits per partition key that can impact upstream responses so that partitions don't conflict.

Open questions:

  • How should the documentation/configuration for ARC be updated to support the limits being applied per relevant partition key?
  • Should we tag ARC metrics with the partition key used to segment the state? I think we'd need to, but this could result in a high cardinality depending on the partition key.

Configuration

No response

Version

v0.42.0

Debug Output

No response

Example Data

No response

Additional Context

No response

References

@jszwedko jszwedko added type: bug A code related bug. domain: ARC Anything related to adaptive request concurrency labels Nov 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain: ARC Anything related to adaptive request concurrency type: bug A code related bug.
Projects
None yet
Development

No branches or pull requests

1 participant