From 1d42f36590326ed06962884834bfafeeae166321 Mon Sep 17 00:00:00 2001 From: archer <545436317@qq.com> Date: Mon, 8 Dec 2025 01:18:57 +0800 Subject: [PATCH] perf: delete dataset --- packages/service/core/dataset/controller.ts | 23 ++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/packages/service/core/dataset/controller.ts b/packages/service/core/dataset/controller.ts index 43d7664e9..bab654958 100644 --- a/packages/service/core/dataset/controller.ts +++ b/packages/service/core/dataset/controller.ts @@ -95,13 +95,22 @@ export async function delDatasetRelevantData({ teamId, datasetId: { $in: datasetIds } }); - //Delete dataset_data_texts - await MongoDatasetDataText.deleteMany({ - teamId, - datasetId: { $in: datasetIds } - }).maxTimeMS(600000); - //delete dataset_datas - await MongoDatasetData.deleteMany({ teamId, datasetId: { $in: datasetIds } }).maxTimeMS(600000); + + // Delete dataset_data_texts in batches by datasetId + for (const datasetId of datasetIds) { + await MongoDatasetDataText.deleteMany({ + teamId, + datasetId + }).maxTimeMS(300000); // Reduce timeout for single batch + } + // Delete dataset_datas in batches by datasetId + for (const datasetId of datasetIds) { + await MongoDatasetData.deleteMany({ + teamId, + datasetId + }).maxTimeMS(300000); + } + await delCollectionRelatedSource({ collections }); // Delete vector data await deleteDatasetDataVector({ teamId, datasetIds });