From 30ca3e3d5ca1749786f2f038fc7170b67753140a Mon Sep 17 00:00:00 2001 From: Archer <545436317@qq.com> Date: Thu, 12 Jun 2025 23:21:02 +0800 Subject: [PATCH] fix: dataset image will expired (#5021) --- .../core/dataset/collection/controller.ts | 19 ----------------- .../collection/create/apiCollection.ts | 1 - .../core/dataset/collection/create/link.ts | 4 +--- .../dataset/collection/create/localFile.ts | 1 - .../collection/create/reTrainingCollection.ts | 1 - .../core/dataset/queues/datasetParse.ts | 21 +++++++++++++++++++ 6 files changed, 22 insertions(+), 25 deletions(-) diff --git a/packages/service/core/dataset/collection/controller.ts b/packages/service/core/dataset/collection/controller.ts index a88ee4ae9..5a9dd289e 100644 --- a/packages/service/core/dataset/collection/controller.ts +++ b/packages/service/core/dataset/collection/controller.ts @@ -41,7 +41,6 @@ import { clearCollectionImages, removeDatasetImageExpiredTime } from '../image/u export const createCollectionAndInsertData = async ({ dataset, rawText, - relatedId, imageIds, createCollectionParams, backupParse = false, @@ -50,7 +49,6 @@ export const createCollectionAndInsertData = async ({ }: { dataset: DatasetSchemaType; rawText?: string; - relatedId?: string; imageIds?: string[]; createCollectionParams: CreateOneCollectionParams; @@ -258,23 +256,6 @@ export const createCollectionAndInsertData = async ({ collectionId, session }); - if (relatedId) { - await MongoImage.updateMany( - { - teamId, - 'metadata.relatedId': relatedId - }, - { - // Remove expiredTime to avoid ttl expiration - $unset: { - expiredTime: 1 - } - }, - { - session - } - ); - } return { collectionId: String(collectionId), diff --git a/projects/app/src/pages/api/core/dataset/collection/create/apiCollection.ts b/projects/app/src/pages/api/core/dataset/collection/create/apiCollection.ts index 68b4c674e..3eaf7c678 100644 --- a/projects/app/src/pages/api/core/dataset/collection/create/apiCollection.ts +++ b/projects/app/src/pages/api/core/dataset/collection/create/apiCollection.ts @@ -46,7 +46,6 @@ async function handler( const { collectionId, insertResults } = await createCollectionAndInsertData({ dataset, - relatedId: apiFileId, createCollectionParams: { ...body, teamId, diff --git a/projects/app/src/pages/api/core/dataset/collection/create/link.ts b/projects/app/src/pages/api/core/dataset/collection/create/link.ts index dc9e85734..902ae03ab 100644 --- a/projects/app/src/pages/api/core/dataset/collection/create/link.ts +++ b/projects/app/src/pages/api/core/dataset/collection/create/link.ts @@ -31,9 +31,7 @@ async function handler(req: NextApiRequest): CreateCollectionResponse { webPageSelector: body?.metadata?.webPageSelector }, rawLink: link - }, - - relatedId: link + } }); return { diff --git a/projects/app/src/pages/api/core/dataset/collection/create/localFile.ts b/projects/app/src/pages/api/core/dataset/collection/create/localFile.ts index cc8fa4f96..4118b2a8f 100644 --- a/projects/app/src/pages/api/core/dataset/collection/create/localFile.ts +++ b/projects/app/src/pages/api/core/dataset/collection/create/localFile.ts @@ -62,7 +62,6 @@ async function handler(req: NextApiRequest, res: NextApiResponse): CreateCo // 3. Create collection const { collectionId, insertResults } = await createCollectionAndInsertData({ dataset, - relatedId: relatedImgId, createCollectionParams: { ...collectionData, name: collectionName, diff --git a/projects/app/src/pages/api/core/dataset/collection/create/reTrainingCollection.ts b/projects/app/src/pages/api/core/dataset/collection/create/reTrainingCollection.ts index 4476c5bc3..40f83d32f 100644 --- a/projects/app/src/pages/api/core/dataset/collection/create/reTrainingCollection.ts +++ b/projects/app/src/pages/api/core/dataset/collection/create/reTrainingCollection.ts @@ -44,7 +44,6 @@ async function handler( const { collectionId } = await createCollectionAndInsertData({ dataset: collection.dataset, - relatedId: collection.metadata?.relatedImgId, createCollectionParams: { ...collection, ...data, diff --git a/projects/app/src/service/core/dataset/queues/datasetParse.ts b/projects/app/src/service/core/dataset/queues/datasetParse.ts index 2156bea0b..d32b17c4a 100644 --- a/projects/app/src/service/core/dataset/queues/datasetParse.ts +++ b/projects/app/src/service/core/dataset/queues/datasetParse.ts @@ -30,6 +30,7 @@ import { MongoDatasetCollection } from '@fastgpt/service/core/dataset/collection import { hashStr } from '@fastgpt/global/common/string/tools'; import { POST } from '@fastgpt/service/common/api/plusRequest'; import { pushLLMTrainingUsage } from '@fastgpt/service/support/wallet/usage/controller'; +import { MongoImage } from '@fastgpt/service/common/file/image/schema'; const requestLLMPargraph = async ({ rawText, @@ -321,6 +322,26 @@ export const datasetParseQueue = async (): Promise => { session } ); + + // 8. Remove image ttl + const relatedImgId = collection.metadata?.relatedImgId; + if (relatedImgId) { + await MongoImage.updateMany( + { + teamId: collection.teamId, + 'metadata.relatedId': relatedImgId + }, + { + // Remove expiredTime to avoid ttl expiration + $unset: { + expiredTime: 1 + } + }, + { + session + } + ); + } }); addLog.debug(`[Parse Queue] Finish`, {