From 4d99c689f0e223a8fcfbee0fe13a5834fe83e836 Mon Sep 17 00:00:00 2001 From: Jyong <76649700+JohnJyong@users.noreply.github.com> Date: Fri, 5 Jan 2024 18:18:38 +0800 Subject: [PATCH] prohibit enable and disable function when segment is not completed (#1954) Co-authored-by: jyong Co-authored-by: Joel --- api/controllers/console/datasets/datasets_segments.py | 3 +++ api/tasks/disable_segment_from_index_task.py | 2 +- api/tasks/enable_segment_to_index_task.py | 2 +- .../datasets/documents/detail/completed/SegmentCard.tsx | 2 +- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/api/controllers/console/datasets/datasets_segments.py b/api/controllers/console/datasets/datasets_segments.py index 24cf2433e7..f3e39813fe 100644 --- a/api/controllers/console/datasets/datasets_segments.py +++ b/api/controllers/console/datasets/datasets_segments.py @@ -156,6 +156,9 @@ class DatasetDocumentSegmentApi(Resource): if not segment: raise NotFound('Segment not found.') + if segment.status != 'completed': + raise NotFound('Segment is not completed, enable or disable function is not allowed') + document_indexing_cache_key = 'document_{}_indexing'.format(segment.document_id) cache_result = redis_client.get(document_indexing_cache_key) if cache_result is not None: diff --git a/api/tasks/disable_segment_from_index_task.py b/api/tasks/disable_segment_from_index_task.py index d6e75dba69..97f4fd0677 100644 --- a/api/tasks/disable_segment_from_index_task.py +++ b/api/tasks/disable_segment_from_index_task.py @@ -27,7 +27,7 @@ def disable_segment_from_index_task(segment_id: str): raise NotFound('Segment not found') if segment.status != 'completed': - return + raise NotFound('Segment is not completed , disable action is not allowed.') indexing_cache_key = 'segment_{}_indexing'.format(segment.id) diff --git a/api/tasks/enable_segment_to_index_task.py b/api/tasks/enable_segment_to_index_task.py index 76fa3de447..8dffd01520 100644 --- a/api/tasks/enable_segment_to_index_task.py +++ b/api/tasks/enable_segment_to_index_task.py @@ -29,7 +29,7 @@ def enable_segment_to_index_task(segment_id: str): raise NotFound('Segment not found') if segment.status != 'completed': - return + raise NotFound('Segment is not completed, enable action is not allowed.') indexing_cache_key = 'segment_{}_indexing'.format(segment.id) diff --git a/web/app/components/datasets/documents/detail/completed/SegmentCard.tsx b/web/app/components/datasets/documents/detail/completed/SegmentCard.tsx index d90a42b8d6..599677eb54 100644 --- a/web/app/components/datasets/documents/detail/completed/SegmentCard.tsx +++ b/web/app/components/datasets/documents/detail/completed/SegmentCard.tsx @@ -128,7 +128,7 @@ const SegmentCard: FC = ({ > { await onChangeSwitch?.(id, val)