Improve library duplicates detection performance

Parallelize by chunking the manga list and using sub workers
This commit is contained in:
schroda
2024-11-03 23:53:12 +01:00
parent 6d9045e93a
commit e1a477feb0
4 changed files with 80 additions and 12 deletions

View File

@@ -60,12 +60,13 @@ const findDuplicatesByTitleAndAlternativeTitlesSingleManga = <Manga extends TMan
};
export const findDuplicatesByTitleAndAlternativeTitles = <Manga extends TMangaDuplicate>(
mangas: Manga[],
): Promise<TMangaDuplicates<Manga>> => {
mangasToCheck: Manga[],
mangas: Manga[] = mangasToCheck,
): TMangaDuplicates<Manga> => {
const titleToMangas: TMangaDuplicates<Manga> = {};
const titleToAlternativeTitleMatches: TMangaDuplicates<Manga> = {};
mangas.forEach((mangaToCheck) => {
mangasToCheck.forEach((mangaToCheck) => {
const titleToCheck = enhancedCleanup(mangaToCheck.title);
titleToMangas[titleToCheck] ??= [];