Skip to content

No exception is being thrown in the case of 429 error - waiting endlessly, leading to memory leak #2078

Open
@codertushar

Description

@codertushar

Bug description
No exception is thrown when a 429 (Too Many Requests) error occurs. The application hangs indefinitely at the chatResponse method invocation, waiting for it to return. This behavior likely applies to other errors as well.

Environment

  • Spring AI: v1.0.0-M5
  • LLM Provider: Azure OpenAI

Steps to reproduce

  1. Call the chatResponse method of the ChatClient when the rate limit is reached.
  2. Observe that no exception is thrown, and the operation hangs indefinitely at the method call.
  3. The control does not proceed to the next line, potentially causing a memory leak or unresponsiveness in the application.

Note: No retry mechanism has been used.

Image

Observed Behavior
The method does not throw any exception.
Control does not return from the chatResponse method, leading to an indefinite block.

Expected behavior

  • An appropriate exception should be thrown when a 429 error occurs, allowing it to be caught in a try-catch block.
  • Alternatively, the control should proceed to the next line, enabling developers to handle the error gracefully.

Additional Context
This issue is critical as it blocks operations and can lead to resource leaks. Is there any configuration or workaround available to handle this scenario until a fix is provided?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions