diff options
Diffstat (limited to 'server/lib/job-queue/handlers/video-views.ts')
-rw-r--r-- | server/lib/job-queue/handlers/video-views.ts | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/server/lib/job-queue/handlers/video-views.ts b/server/lib/job-queue/handlers/video-views.ts index fa1fd13b3..73fa5ed04 100644 --- a/server/lib/job-queue/handlers/video-views.ts +++ b/server/lib/job-queue/handlers/video-views.ts | |||
@@ -27,6 +27,12 @@ async function processVideosViews () { | |||
27 | logger.debug('Adding %d views to video %d in hour %d.', views, videoId, hour) | 27 | logger.debug('Adding %d views to video %d in hour %d.', views, videoId, hour) |
28 | 28 | ||
29 | try { | 29 | try { |
30 | const video = await VideoModel.loadAndPopulateAccountAndServerAndTags(videoId) | ||
31 | if (!video) { | ||
32 | logger.debug('Video %d does not exist anymore, skipping videos view addition.', videoId) | ||
33 | continue | ||
34 | } | ||
35 | |||
30 | await VideoViewModel.create({ | 36 | await VideoViewModel.create({ |
31 | startDate, | 37 | startDate, |
32 | endDate, | 38 | endDate, |
@@ -34,7 +40,6 @@ async function processVideosViews () { | |||
34 | videoId | 40 | videoId |
35 | }) | 41 | }) |
36 | 42 | ||
37 | const video = await VideoModel.loadAndPopulateAccountAndServerAndTags(videoId) | ||
38 | if (video.isOwned()) { | 43 | if (video.isOwned()) { |
39 | // If this is a remote video, the origin instance will send us an update | 44 | // If this is a remote video, the origin instance will send us an update |
40 | await VideoModel.incrementViews(videoId, views) | 45 | await VideoModel.incrementViews(videoId, views) |
@@ -44,13 +49,13 @@ async function processVideosViews () { | |||
44 | await federateVideoIfNeeded(video, false) | 49 | await federateVideoIfNeeded(video, false) |
45 | } | 50 | } |
46 | } catch (err) { | 51 | } catch (err) { |
47 | logger.debug('Cannot create video views for video %d in hour %d. Maybe the video does not exist anymore?', videoId, hour) | 52 | logger.error('Cannot create video views for video %d in hour %d.', videoId, hour, { err }) |
48 | } | 53 | } |
49 | } | 54 | } |
50 | 55 | ||
51 | await Redis.Instance.deleteVideoViews(videoId, hour) | 56 | await Redis.Instance.deleteVideoViews(videoId, hour) |
52 | } catch (err) { | 57 | } catch (err) { |
53 | logger.error('Cannot update video views of video %d in hour %d.', videoId, hour) | 58 | logger.error('Cannot update video views of video %d in hour %d.', videoId, hour, { err }) |
54 | } | 59 | } |
55 | } | 60 | } |
56 | } | 61 | } |