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

Return a 429 for all of the back pressure stuff. #4289

Closed
fulmicoton opened this issue Dec 16, 2023 · 2 comments
Closed

Return a 429 for all of the back pressure stuff. #4289

fulmicoton opened this issue Dec 16, 2023 · 2 comments
Assignees
Labels
bug Something isn't working high-priority

Comments

@fulmicoton
Copy link
Contributor

Right there are some case where we return a 500 when really it should have been a 429.

For instance, the router to count the number of request queue and circuit break when too many clients are waiting.
This results in the proper gRPC status code, but somehow the conversion somewhere along the chain is wrong and we return a 500 instead of a 429

@PSeitz
Copy link
Contributor

PSeitz commented Dec 21, 2023

#4294 should fix the issue, but I don't know how to trigger the router code mentioned in the ticket. A regular ingest does not.

#[async_trait]
impl IngestRouterService for IngestRouter {
    async fn ingest(
        &mut self,
        ingest_request: IngestRequestV2,
    ) -> IngestV2Result<IngestResponseV2>{..}

@PSeitz
Copy link
Contributor

PSeitz commented Dec 21, 2023

I could confirm that 429 is getting returned for queue full and the semaphore in the router.

@PSeitz PSeitz closed this as completed Dec 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working high-priority
Projects
None yet
Development

No branches or pull requests

2 participants