diff --git a/packages/sqlite-plugin/src/index.ts b/packages/sqlite-plugin/src/index.ts index a3a5e73..b3cf741 100644 --- a/packages/sqlite-plugin/src/index.ts +++ b/packages/sqlite-plugin/src/index.ts @@ -38,6 +38,7 @@ import { MarkAsNotSuitOp, MarkAsNotSuitReason } from "./enums"; import { AddColumnForMarkAsNotSuitLog1746092370665 } from "./migrations/1746092370665-AddColumnForMarkAsNotSuitLog"; import { Init1000000000000 } from "./migrations/1000000000000-Init"; import { AddJobSourceColumnForChatStartupLogAndMarkAsNotSuitLog1752380078526 } from "./migrations/1752380078526-AddJobSourceColumnForChatStartupLogAndMarkAsNotSuitLog"; +const lodashImportPromise = import('lodash-es') export function initDb(dbFilePath) { const { DataSource } = requireTypeorm() @@ -178,7 +179,13 @@ export default class SqlitePlugin { if (chattedJobIds.length === 0) { return } - const chattedBossIds = ((await getBossIdsByJobIds(ds, chattedJobIds)) ?? []).map(it => it.encryptBossId) + const { chunk } = await lodashImportPromise + const chattedJobIdChunks = chunk(chattedJobIds, 200) + const chattedBossIds = []; + for (const chattedJobIdChunk of chattedJobIdChunks) { + const chattedBossIdChunk = ((await getBossIdsByJobIds(ds, chattedJobIdChunk)) ?? []).map(it => it.encryptBossId) + chattedBossIds.push(...chattedBossIdChunk) + } for (const id of chattedBossIds) { blockBossNotNewChat.add(id) }