litellm - 💡(How to fix) Fix [Bug]: Getting a Python error periodically in Docker log [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
BerriAI/litellm#26751Fetched 2026-04-30 06:20:25
View on GitHub
Comments
0
Participants
1
Timeline
4
Reactions
1
Author
Participants
Timeline (top)
labeled ×3subscribed ×1

Error Message

litellm-1 | 05:30:59 - LiteLLM Proxy:ERROR: reset_budget_job.py:660 - Failed to reset budget windows for keys: Unable to match input value to any allowed input type for the field. Parse errors: [where.budget_limits.not: A value is required but not set, where.budget_limits.not: A value is required but not set, where.budget_limits.not: A value is required but not set] litellm-1 | Traceback (most recent call last): litellm-1 | File "/app/.venv/lib/python3.13/site-packages/litellm/proxy/common_utils/reset_budget_job.py", line 637, in reset_budget_windows litellm-1 | all_keys = await self.prisma_client.db.litellm_verificationtoken.find_many( litellm-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ litellm-1 | where={"budget_limits": {"not": None}} # type: ignore[arg-type] litellm-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ litellm-1 | ) litellm-1 | ^ litellm-1 | File "/app/.venv/lib/python3.13/site-packages/prisma/actions.py", line 14854, in find_many litellm-1 | resp = await self._client._execute( litellm-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ litellm-1 | ...<11 lines>... litellm-1 | ) litellm-1 | ^ litellm-1 | File "/app/.venv/lib/python3.13/site-packages/prisma/client.py", line 654, in _execute litellm-1 | return await self._engine.query(builder.build(), tx_id=self._tx_id) litellm-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ litellm-1 | File "/app/.venv/lib/python3.13/site-packages/prisma/engine/query.py", line 244, in query litellm-1 | return await self.request( litellm-1 | ^^^^^^^^^^^^^^^^^^^ litellm-1 | ...<4 lines>... litellm-1 | ) litellm-1 | ^ litellm-1 | File "/app/.venv/lib/python3.13/site-packages/prisma/engine/http.py", line 141, in request litellm-1 | return utils.handle_response_errors(resp, errors_data) litellm-1 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ litellm-1 | File "/app/.venv/lib/python3.13/site-packages/prisma/engine/utils.py", line 180, in handle_response_errors litellm-1 | raise prisma_errors.MissingRequiredValueError(error) litellm-1 | prisma.errors.MissingRequiredValueError: Unable to match input value to any allowed input type for the field. Parse errors: [where.budget_limits.not: A value is required but not set, where.budget_limits.not: A value is required but not set, where.budget_limits.not: A value is required but not set]

Code Example

litellm-1   | 05:30:59 - LiteLLM Proxy:ERROR: reset_budget_job.py:660 - Failed to reset budget windows for keys: Unable to match input value to any allowed input type for the field. Parse errors: [`where.budget_limits.not`: A value is required but not set, `where.budget_limits.not`: A value is required but not set, `where.budget_limits.not`: A value is required but not set]
litellm-1   | Traceback (most recent call last):
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/litellm/proxy/common_utils/reset_budget_job.py", line 637, in reset_budget_windows
litellm-1   |     all_keys = await self.prisma_client.db.litellm_verificationtoken.find_many(
litellm-1   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
litellm-1   |         where={"budget_limits": {"not": None}}  # type: ignore[arg-type]
litellm-1   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
litellm-1   |     )
litellm-1   |     ^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/actions.py", line 14854, in find_many
litellm-1   |     resp = await self._client._execute(
litellm-1   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
litellm-1   |     ...<11 lines>...
litellm-1   |     )
litellm-1   |     ^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/client.py", line 654, in _execute
litellm-1   |     return await self._engine.query(builder.build(), tx_id=self._tx_id)
litellm-1   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/engine/query.py", line 244, in query
litellm-1   |     return await self.request(
litellm-1   |            ^^^^^^^^^^^^^^^^^^^
litellm-1   |     ...<4 lines>...
litellm-1   |     )
litellm-1   |     ^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/engine/http.py", line 141, in request
litellm-1   |     return utils.handle_response_errors(resp, errors_data)
litellm-1   |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/engine/utils.py", line 180, in handle_response_errors
litellm-1   |     raise prisma_errors.MissingRequiredValueError(error)
litellm-1   | prisma.errors.MissingRequiredValueError: Unable to match input value to any allowed input type for the field. Parse errors: [`where.budget_limits.not`: A value is required but not set, `where.budget_limits.not`: A value is required but not set, `where.budget_limits.not`: A value is required but not set]
RAW_BUFFERClick to expand / collapse

Check for existing issues

  • I have searched the existing issues and checked that my issue is not a duplicate.

What happened?

I get the following filling my Docker log while the instance is running. I have no paid models installed, or any API keys installed for paid services, only self-hosted models running locally in a separate Docker container, running Ollama.

Steps to Reproduce

  1. Install with Docker, along with Ollama and Postgres in the same docker-compose.yaml
  2. Run the server.
  3. Use the web interface.

Relevant log output

litellm-1   | 05:30:59 - LiteLLM Proxy:ERROR: reset_budget_job.py:660 - Failed to reset budget windows for keys: Unable to match input value to any allowed input type for the field. Parse errors: [`where.budget_limits.not`: A value is required but not set, `where.budget_limits.not`: A value is required but not set, `where.budget_limits.not`: A value is required but not set]
litellm-1   | Traceback (most recent call last):
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/litellm/proxy/common_utils/reset_budget_job.py", line 637, in reset_budget_windows
litellm-1   |     all_keys = await self.prisma_client.db.litellm_verificationtoken.find_many(
litellm-1   |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
litellm-1   |         where={"budget_limits": {"not": None}}  # type: ignore[arg-type]
litellm-1   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
litellm-1   |     )
litellm-1   |     ^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/actions.py", line 14854, in find_many
litellm-1   |     resp = await self._client._execute(
litellm-1   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
litellm-1   |     ...<11 lines>...
litellm-1   |     )
litellm-1   |     ^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/client.py", line 654, in _execute
litellm-1   |     return await self._engine.query(builder.build(), tx_id=self._tx_id)
litellm-1   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/engine/query.py", line 244, in query
litellm-1   |     return await self.request(
litellm-1   |            ^^^^^^^^^^^^^^^^^^^
litellm-1   |     ...<4 lines>...
litellm-1   |     )
litellm-1   |     ^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/engine/http.py", line 141, in request
litellm-1   |     return utils.handle_response_errors(resp, errors_data)
litellm-1   |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
litellm-1   |   File "/app/.venv/lib/python3.13/site-packages/prisma/engine/utils.py", line 180, in handle_response_errors
litellm-1   |     raise prisma_errors.MissingRequiredValueError(error)
litellm-1   | prisma.errors.MissingRequiredValueError: Unable to match input value to any allowed input type for the field. Parse errors: [`where.budget_limits.not`: A value is required but not set, `where.budget_limits.not`: A value is required but not set, `where.budget_limits.not`: A value is required but not set]

What part of LiteLLM is this about?

Proxy

What LiteLLM version are you on ?

v1.83.10-stable

Twitter / LinkedIn details

No response

extent analysis

TL;DR

The error is likely due to a missing required value in the where clause of a Prisma query, specifically in the reset_budget_windows function, and can be fixed by adjusting the query or providing the necessary value.

Guidance

  • Review the reset_budget_job.py file, specifically the reset_budget_windows function, to understand how the where clause is being constructed and why the budget_limits field is not being set.
  • Check the Prisma schema to ensure that the budget_limits field is correctly defined and that it is not required if no value is being provided.
  • Consider adding a default value or making the budget_limits field optional in the Prisma schema if it is not always required.
  • Verify that the error is not caused by a version mismatch between the Prisma client and server.

Example

No code example is provided as the issue is related to a specific Prisma query and schema configuration.

Notes

The error message suggests that the issue is related to a missing required value in the where clause, but without more information about the Prisma schema and the intended behavior of the reset_budget_windows function, it is difficult to provide a more specific solution.

Recommendation

Apply a workaround by adjusting the Prisma query or providing the necessary value, as the error is likely caused by a configuration issue rather than a version problem.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING