Removed superfluous actor_id from biometrics query, should prevent dupes being processed unnecessarily.
This commit is contained in:
@@ -95,7 +95,7 @@ async function getBiometrics(avatarEntry) {
|
||||
function getAvatarSource(actorIds, includePhotos) {
|
||||
if (includePhotos) {
|
||||
return knex('actors_avatars')
|
||||
.select('actor_id', 'media_id')
|
||||
.select('media_id')
|
||||
.modify((builder) => {
|
||||
if (actorIds) {
|
||||
builder.whereIn('actor_id', actorIds);
|
||||
@@ -104,7 +104,7 @@ function getAvatarSource(actorIds, includePhotos) {
|
||||
}
|
||||
|
||||
return knex('actors')
|
||||
.select('id as actor_id', 'avatar_media_id as media_id')
|
||||
.select('avatar_media_id as media_id')
|
||||
.whereNotNull('avatar_media_id')
|
||||
.modify((builder) => {
|
||||
if (actorIds) {
|
||||
@@ -123,18 +123,17 @@ async function setBiometrics(actorIds, shouldUpdate = false, includePhotos = fal
|
||||
|
||||
const avatarSource = getAvatarSource(actorIds, includePhotos);
|
||||
|
||||
const avatarEntries = await knex
|
||||
const avatarEntries = await knex('media')
|
||||
.select(
|
||||
'avatar_source.actor_id',
|
||||
'media.id as media_id',
|
||||
'media.path',
|
||||
'media.is_s3',
|
||||
knex.raw('coalesce(json_agg(media_biometrics.biometrics) filter (where media_biometrics.id is not null), \'[]\') as biometrics'),
|
||||
)
|
||||
.from(avatarSource.as('avatar_source'))
|
||||
.leftJoin('media', 'media.id', 'avatar_source.media_id')
|
||||
.leftJoin('media_biometrics', 'media_biometrics.media_id', 'media.id')
|
||||
.groupBy('avatar_source.actor_id', 'media.id', 'media.path', 'media.is_s3');
|
||||
.whereIn('media.id', avatarSource.as('avatar_source'))
|
||||
.groupBy('media.id', 'media.path', 'media.is_s3');
|
||||
|
||||
await avatarEntries.reduce(async (chain, avatarEntry, avatarIndex) => {
|
||||
await chain;
|
||||
|
||||
Reference in New Issue
Block a user