[GH-ISSUE #20476] issue: Critical: Opening Evaluations Page Triggers Immediate System Crash Due to Massive Feedback Snapshot Load #57861

Closed
opened 2026-05-05 21:46:16 -05:00 by GiteaMirror · 2 comments
Owner

Originally created by @ShirasawaSama on GitHub (Jan 8, 2026).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/20476

Check Existing Issues

  • I have searched for any existing and/or related issues.
  • I have searched for any existing and/or related discussions.
  • I have also searched in the CLOSED issues AND CLOSED discussions and found no related items (your issue might already be addressed on the development branch!).
  • I am using the latest version of Open WebUI.

Installation Method

Git Clone

Open WebUI Version

v0.6.43 (dev)

Ollama Version (if applicable)

No response

Operating System

MacOS 26

Browser (if applicable)

No response

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both Open WebUI and Ollama.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have provided every relevant configuration, setting, and environment variable used in my setup.
  • I have clearly listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
  • I have documented step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation. My steps:
  • Start with the initial platform/version/OS and dependencies used,
  • Specify exact install/launch/configure commands,
  • List URLs visited, user input (incl. example values/emails/passwords if needed),
  • Describe all options and toggles enabled or changed,
  • Include any files or environmental changes,
  • Identify the expected and actual result at each stage,
  • Ensure any reasonably skilled user can follow and hit the same issue.

Expected Behavior

When an admin opens the Evaluations page and calls the /evaluations/feedbacks/all endpoint:

  1. Database query should explicitly exclude unnecessary fields such as the snapshot column, so that only the required data is fetched from the database.
  2. Pagination should be implemented in the query and in the UI, ensuring that only a limited set of feedback records is loaded per request (e.g., 20–50 records per page).
  3. The API should return only relevant data for the current page view, preventing large payloads and excessive memory usage.
  4. The page should remain responsive and usable regardless of the number of total feedback records in the database.

Actual Behavior

When an admin accesses the Evaluations page, the backend query retrieves all columns from the feedback table, including the large snapshot field that contains full conversation data for each record.
Although the API layer uses Pydantic to filter out the snapshot field before returning the response, the data has already been loaded from the database into memory.

Because the snapshot field can be extremely large and the table can contain more than 2,000 records, this results in:

  • High memory consumption during query execution.
  • Long query and serialization times.
  • Application crash or unresponsiveness before the response is sent.

Steps to Reproduce

  1. Log in to the system as an admin user.
  2. Navigate to the Evaluations page via the admin interface.
  3. Ensure the feedback table contains a large number of records (e.g., more than 2,000), with each record containing a large snapshot field storing complete conversation data.
  4. Observe that the backend query retrieves all columns from the feedback table, including snapshot, before applying the Pydantic filter.
  5. The system will consume excessive memory and processing time, leading to a crash or the page failing to load.

Logs & Screenshots

Image Image Image

The numbers in the above images represent character counts. In practice, a single query will transfer over approximately 5GB of data.

Additional Information

Image Image
Originally created by @ShirasawaSama on GitHub (Jan 8, 2026). Original GitHub issue: https://github.com/open-webui/open-webui/issues/20476 ### Check Existing Issues - [x] I have searched for any existing and/or related issues. - [x] I have searched for any existing and/or related discussions. - [x] I have also searched in the CLOSED issues AND CLOSED discussions and found no related items (your issue might already be addressed on the development branch!). - [x] I am using the latest version of Open WebUI. ### Installation Method Git Clone ### Open WebUI Version v0.6.43 (dev) ### Ollama Version (if applicable) _No response_ ### Operating System MacOS 26 ### Browser (if applicable) _No response_ ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** Open WebUI and Ollama. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have **provided every relevant configuration, setting, and environment variable used in my setup.** - [x] I have clearly **listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup** (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc). - [x] I have documented **step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation**. My steps: - Start with the initial platform/version/OS and dependencies used, - Specify exact install/launch/configure commands, - List URLs visited, user input (incl. example values/emails/passwords if needed), - Describe all options and toggles enabled or changed, - Include any files or environmental changes, - Identify the expected and actual result at each stage, - Ensure any reasonably skilled user can follow and hit the same issue. ### Expected Behavior When an admin opens the *Evaluations* page and calls the `/evaluations/feedbacks/all` endpoint: 1. **Database query should explicitly exclude unnecessary fields** such as the `snapshot` column, so that only the required data is fetched from the database. 2. **Pagination should be implemented** in the query and in the UI, ensuring that only a limited set of feedback records is loaded per request (e.g., 20–50 records per page). 3. The API should return only relevant data for the current page view, preventing large payloads and excessive memory usage. 4. The page should remain responsive and usable regardless of the number of total feedback records in the database. ### Actual Behavior When an admin accesses the *Evaluations* page, the backend query retrieves **all columns** from the `feedback` table, including the large `snapshot` field that contains full conversation data for each record. Although the API layer uses Pydantic to filter out the `snapshot` field before returning the response, the data has already been loaded from the database into memory. Because the `snapshot` field can be extremely large and the table can contain more than 2,000 records, this results in: - High memory consumption during query execution. - Long query and serialization times. - Application crash or unresponsiveness before the response is sent. ### Steps to Reproduce 1. Log in to the system as an **admin** user. 2. Navigate to the **Evaluations** page via the admin interface. 3. Ensure the `feedback` table contains a large number of records (e.g., more than 2,000), with each record containing a large `snapshot` field storing complete conversation data. 4. Observe that the backend query retrieves all columns from the `feedback` table, including `snapshot`, before applying the Pydantic filter. 5. The system will consume excessive memory and processing time, leading to a crash or the page failing to load. ### Logs & Screenshots <img width="592" height="1038" alt="Image" src="https://github.com/user-attachments/assets/3ebabb25-5c33-4034-a29b-0ec28d4cffbd" /> <img width="376" height="1508" alt="Image" src="https://github.com/user-attachments/assets/a5b302ed-d8cb-42d6-ba98-e107ca6b889d" /> <img width="496" height="340" alt="Image" src="https://github.com/user-attachments/assets/6cedf2a7-e299-43da-a9f4-cf9c0147e38b" /> The numbers in the above images represent character counts. In practice, a single query will transfer over approximately 5GB of data. ### Additional Information <img width="1014" height="182" alt="Image" src="https://github.com/user-attachments/assets/348ab777-44b4-4a11-83dc-63c566949eaa" /> <img width="830" height="292" alt="Image" src="https://github.com/user-attachments/assets/e46b3342-e625-421f-b267-1fe14269c986" />
GiteaMirror added the bug label 2026-05-05 21:46:16 -05:00
Author
Owner

@owui-terminator[bot] commented on GitHub (Jan 8, 2026):

🔍 Similar Issues Found

I found some existing issues that might be related to this one. Please check if any of these are duplicates or contain helpful solutions:

  1. #20361 Issue: Large-scale model setting-related functionality fails.
    by shentong0722 • Jan 04, 2026 • bug

💡 Tips:

  • If this is a duplicate, please consider closing this issue and adding any additional details to the existing one
  • If you found a solution in any of these issues, please share it here to help others

This comment was generated automatically by a bot. Please react with a 👍 if this comment was helpful, or a 👎 if it was not.

<!-- gh-comment-id:3721787690 --> @owui-terminator[bot] commented on GitHub (Jan 8, 2026): 🔍 **Similar Issues Found** I found some existing issues that might be related to this one. Please check if any of these are duplicates or contain helpful solutions: 1. [#20361](https://github.com/open-webui/open-webui/issues/20361) **Issue: Large-scale model setting-related functionality fails.** *by shentong0722 • Jan 04, 2026 • `bug`* --- 💡 **Tips:** - If this is a duplicate, please consider closing this issue and adding any additional details to the existing one - If you found a solution in any of these issues, please share it here to help others *This comment was generated automatically by a bot.* Please react with a 👍 if this comment was helpful, or a 👎 if it was not.
Author
Owner

@Classic298 commented on GitHub (Jan 9, 2026):

fixed in dev

<!-- gh-comment-id:3729120092 --> @Classic298 commented on GitHub (Jan 9, 2026): fixed in dev
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#57861