diff --git a/server/src/queries/asset.job.repository.sql b/server/src/queries/asset.job.repository.sql index 5a987dd78f..d4418edc56 100644 --- a/server/src/queries/asset.job.repository.sql +++ b/server/src/queries/asset.job.repository.sql @@ -21,6 +21,22 @@ limit select "id", "originalPath", + ( + select + coalesce(json_agg(agg), '[]') + from + ( + select + "asset_file"."id", + "asset_file"."path", + "asset_file"."type" + from + "asset_file" + where + "asset_file"."assetId" = "asset"."id" + and "asset_file"."type" = $1 + ) as agg + ) as "files", ( select coalesce(json_agg(agg), '[]') @@ -34,7 +50,18 @@ select where "asset"."id" = "tag_asset"."assetsId" ) as agg - ) as "tags", + ) as "tags" +from + "asset" +where + "asset"."id" = $2::uuid +limit + $3 + +-- AssetJobRepository.getForSidecarCheckJob +select + "id", + "originalPath", ( select coalesce(json_agg(agg), '[]') @@ -48,23 +75,10 @@ select "asset_file" where "asset_file"."assetId" = "asset"."id" - and "asset_file"."type" = $1 ) as agg ) as "files" from "asset" -where - "asset"."id" = $2::uuid -limit - $3 - --- AssetJobRepository.getForSidecarCheckJob -select - "id", - "sidecarPath", - "originalPath" -from - "asset" where "asset"."id" = $1::uuid limit diff --git a/server/src/services/metadata.service.spec.ts b/server/src/services/metadata.service.spec.ts index 31a014f31e..f483541e72 100644 --- a/server/src/services/metadata.service.spec.ts +++ b/server/src/services/metadata.service.spec.ts @@ -27,13 +27,12 @@ const forSidecarJob = ( asset: { id?: string; originalPath?: string; - sidecarPath?: string | null; + files: { id: string; type: AssetFileType; path: string }[]; } = {}, ) => { return { id: factory.uuid(), originalPath: '/path/to/IMG_123.jpg', - sidecarPath: null, ...asset, }; }; @@ -58,13 +57,6 @@ const makeFaceTags = (face: Partial<{ Name: string }> = {}, orientation?: Immich }, }); -function removeNonSidecarFiles(asset: any) { - return { - ...asset, - files: asset.files.filter((file: any) => file.type === AssetFileType.Sidecar), - }; -} - describe(MetadataService.name, () => { let sut: MetadataService; let mocks: ServiceMocks;