for (const redundancyModel of expired) {
try {
const redundancyConfig = CONFIG.REDUNDANCY.VIDEOS.STRATEGIES.find(s => s.strategy === redundancyModel.strategy)
- const candidate: CandidateToDuplicate = {
- redundancy: redundancyConfig,
- video: null,
- files: [],
- streamingPlaylists: []
- }
+ const { totalUsed } = await VideoRedundancyModel.getStats(redundancyConfig.strategy)
// If the administrator disabled the redundancy or decreased the cache size, remove this redundancy instead of extending it
- if (!redundancyConfig || await this.isTooHeavy(candidate)) {
- logger.info(
- 'Destroying redundancy %s because the cache size %s is too heavy.',
- redundancyModel.url, redundancyModel.strategy, lTags(candidate.video.uuid)
- )
+ if (!redundancyConfig || totalUsed > redundancyConfig.size) {
+ logger.info('Destroying redundancy %s because the cache size %s is too heavy.', redundancyModel.url, redundancyModel.strategy)
await removeVideoRedundancy(redundancyModel)
} else {
// We need more attributes and check if the video still exists
const getVideoOptions = {
videoObject: videoUrl,
- syncParam: { likes: false, dislikes: false, shares: false, comments: false, thumbnail: false, refreshVideo: true },
+ syncParam: { rates: false, shares: false, comments: false, thumbnail: false, refreshVideo: true },
fetchType: 'all' as 'all'
}
const { video } = await getOrCreateAPVideo(getVideoOptions)