diff --git a/api/tasks/clean_dataset_task.py b/api/tasks/clean_dataset_task.py index 4d77f1fb6..f3386dd44 100644 --- a/api/tasks/clean_dataset_task.py +++ b/api/tasks/clean_dataset_task.py @@ -11,6 +11,8 @@ from extensions.ext_storage import storage from models.dataset import ( AppDatasetJoin, Dataset, + DatasetMetadata, + DatasetMetadataBinding, DatasetProcessRule, DatasetQuery, Document, @@ -86,7 +88,9 @@ def clean_dataset_task( db.session.query(DatasetProcessRule).filter(DatasetProcessRule.dataset_id == dataset_id).delete() db.session.query(DatasetQuery).filter(DatasetQuery.dataset_id == dataset_id).delete() db.session.query(AppDatasetJoin).filter(AppDatasetJoin.dataset_id == dataset_id).delete() - + # delete dataset metadata + db.session.query(DatasetMetadata).filter(DatasetMetadata.dataset_id == dataset_id).delete() + db.session.query(DatasetMetadataBinding).filter(DatasetMetadataBinding.dataset_id == dataset_id).delete() # delete files if documents: for document in documents: diff --git a/api/tasks/clean_document_task.py b/api/tasks/clean_document_task.py index 5a4d7a52b..c5234a4ec 100644 --- a/api/tasks/clean_document_task.py +++ b/api/tasks/clean_document_task.py @@ -9,7 +9,7 @@ from core.rag.index_processor.index_processor_factory import IndexProcessorFacto from core.tools.utils.rag_web_reader import get_image_upload_file_ids from extensions.ext_database import db from extensions.ext_storage import storage -from models.dataset import Dataset, DocumentSegment +from models.dataset import Dataset, DatasetMetadataBinding, DocumentSegment from models.model import UploadFile @@ -67,6 +67,12 @@ def clean_document_task(document_id: str, dataset_id: str, doc_form: str, file_i db.session.delete(file) db.session.commit() + # delete dataset metadata binding + db.session.query(DatasetMetadataBinding).filter( + DatasetMetadataBinding.dataset_id == dataset_id, + DatasetMetadataBinding.document_id == document_id, + ).delete() + end_at = time.perf_counter() logging.info( click.style(