From c74eb4fcf39b43b87fc3bf7625af751d39934769 Mon Sep 17 00:00:00 2001 From: NeatGuyCoding <15627489+NeatGuyCoding@users.noreply.github.com> Date: Thu, 13 Nov 2025 20:18:11 +0800 Subject: [PATCH] minor fix(rag): return early when pushing empty tasks to avoid Redis DataError (#28027) Signed-off-by: NeatGuyCoding <15627489+NeatGuyCoding@users.noreply.github.com> --- api/core/rag/pipeline/queue.py | 3 +++ api/tests/unit_tests/core/rag/pipeline/test_queue.py | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/api/core/rag/pipeline/queue.py b/api/core/rag/pipeline/queue.py index 3d4d6f588d..7472598a7f 100644 --- a/api/core/rag/pipeline/queue.py +++ b/api/core/rag/pipeline/queue.py @@ -54,6 +54,9 @@ class TenantIsolatedTaskQueue: serialized_data = wrapper.serialize() serialized_tasks.append(serialized_data) + if not serialized_tasks: + return + redis_client.lpush(self._queue, *serialized_tasks) def pull_tasks(self, count: int = 1) -> Sequence[Any]: diff --git a/api/tests/unit_tests/core/rag/pipeline/test_queue.py b/api/tests/unit_tests/core/rag/pipeline/test_queue.py index cfdbb30f8f..17c5f3c6b7 100644 --- a/api/tests/unit_tests/core/rag/pipeline/test_queue.py +++ b/api/tests/unit_tests/core/rag/pipeline/test_queue.py @@ -179,7 +179,7 @@ class TestTenantIsolatedTaskQueue: """Test pushing empty task list.""" sample_queue.push_tasks([]) - mock_redis.lpush.assert_called_once_with("tenant_self_test-key_task_queue:tenant-123") + mock_redis.lpush.assert_not_called() @patch("core.rag.pipeline.queue.redis_client") def test_pull_tasks_default_count(self, mock_redis, sample_queue):