Added log to give insight about media insert failures.
This commit is contained in:
parent
38f53d8de8
commit
a04c7dda37
14
src/media.js
14
src/media.js
|
@ -688,11 +688,16 @@ async function storeMedias(baseMedias, options) {
|
|||
const newMediaWithEntries = savedMedias.filter(Boolean).map((media, index) => curateMediaEntry(media, index));
|
||||
const newMediaEntries = newMediaWithEntries.filter(media => media.newEntry).map(media => media.entry);
|
||||
|
||||
// TODO: path duplicates disappear in DO NOTHING query, causing association error. source duplicate detection not working? use scene generator
|
||||
// await bulkInsert('media', newMediaEntries, false);
|
||||
await bulkInsert('media', newMediaEntries);
|
||||
try {
|
||||
// TODO: path duplicates disappear in DO NOTHING query, causing association error. source duplicate detection not working? use scene generator
|
||||
// UPDATE: cannot replicate when using the same poster and photo source in scene generator
|
||||
// await bulkInsert('media', newMediaEntries, false);
|
||||
await bulkInsert('media', newMediaEntries);
|
||||
|
||||
return [...newMediaWithEntries, ...existingHashMedias];
|
||||
return [...newMediaWithEntries, ...existingHashMedias];
|
||||
} catch (error) {
|
||||
throw Object.assign(error, { entries: newMediaEntries });
|
||||
}
|
||||
}
|
||||
|
||||
async function associateReleaseMedia(releases, type = 'release') {
|
||||
|
@ -757,6 +762,7 @@ async function associateReleaseMedia(releases, type = 'release') {
|
|||
await bulkInsert(`${type}s_${role}`, associations, false);
|
||||
}
|
||||
} catch (error) {
|
||||
logger.error(util.inspect(error.entries, null, null, { color: true }));
|
||||
logger.error(`Failed to store ${type} ${role}: ${error.message}`);
|
||||
}
|
||||
}, Promise.resolve());
|
||||
|
|
|
@ -240,23 +240,15 @@ async function fetchLatest(entity, page, options) {
|
|||
release.photos = Array.from({ length: Math.floor(Math.random() * 10) + 1 }, () => `${options.source}?id=${nanoid()}`); // ensure source is unique
|
||||
} else {
|
||||
// select from local SFW database
|
||||
const [/* poster */, ...photos] = await knex('media')
|
||||
const [poster, ...photos] = await knex('media')
|
||||
.select('path')
|
||||
.where('is_sfw', true)
|
||||
.pluck('path')
|
||||
.orderByRaw('random()')
|
||||
.limit(Math.floor(Math.random() * 10) + 1);
|
||||
|
||||
const [poster] = await knex('media')
|
||||
.select('path')
|
||||
.where('is_sfw', true)
|
||||
.pluck('path')
|
||||
.limit(1);
|
||||
|
||||
// release.poster = `http://${config.web.host}:${config.web.port}/img/${poster}?id=${nanoid()}`; // ensure source is unique
|
||||
release.poster = `http://${config.web.host}:${config.web.port}/img/${poster}`; // ensure source is unique
|
||||
// release.photos = photos.map(photo => `http://${config.web.host}:${config.web.port}/img/${photo}?id=${nanoid()}`);
|
||||
release.photos = [release.poster];
|
||||
release.poster = `http://${config.web.host}:${config.web.port}/img/${poster}?id=${nanoid()}`; // ensure source is unique
|
||||
release.photos = photos.map(photo => `http://${config.web.host}:${config.web.port}/img/${photo}?id=${nanoid()}`);
|
||||
}
|
||||
|
||||
release.tags = await knex('tags')
|
||||
|
|
Loading…
Reference in New Issue