diff options
author | Chocobozzz <me@florianbigard.com> | 2021-06-11 16:22:54 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2021-06-11 16:22:54 +0200 |
commit | 9f7657b6b6d1cd2887e369ad57c75570aa246b35 (patch) | |
tree | 52c247db04e94d2f414ba6f2abc48a49a3cc2825 | |
parent | adddb12b0426bccad61ec6027de5f7cadb97da97 (diff) | |
download | PeerTube-9f7657b6b6d1cd2887e369ad57c75570aa246b35.tar.gz PeerTube-9f7657b6b6d1cd2887e369ad57c75570aa246b35.tar.zst PeerTube-9f7657b6b6d1cd2887e369ad57c75570aa246b35.zip |
Include transaction in video hooks
-rw-r--r-- | server/models/video/video.ts | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/server/models/video/video.ts b/server/models/video/video.ts index fabfce588..ca839b0d4 100644 --- a/server/models/video/video.ts +++ b/server/models/video/video.ts | |||
@@ -756,14 +756,14 @@ export class VideoModel extends Model<Partial<AttributesOnly<VideoModel>>> { | |||
756 | } | 756 | } |
757 | 757 | ||
758 | @BeforeDestroy | 758 | @BeforeDestroy |
759 | static async removeFiles (instance: VideoModel) { | 759 | static async removeFiles (instance: VideoModel, options) { |
760 | const tasks: Promise<any>[] = [] | 760 | const tasks: Promise<any>[] = [] |
761 | 761 | ||
762 | logger.info('Removing files of video %s.', instance.url) | 762 | logger.info('Removing files of video %s.', instance.url) |
763 | 763 | ||
764 | if (instance.isOwned()) { | 764 | if (instance.isOwned()) { |
765 | if (!Array.isArray(instance.VideoFiles)) { | 765 | if (!Array.isArray(instance.VideoFiles)) { |
766 | instance.VideoFiles = await instance.$get('VideoFiles') | 766 | instance.VideoFiles = await instance.$get('VideoFiles', { transaction: options.transaction }) |
767 | } | 767 | } |
768 | 768 | ||
769 | // Remove physical files and torrents | 769 | // Remove physical files and torrents |
@@ -774,7 +774,7 @@ export class VideoModel extends Model<Partial<AttributesOnly<VideoModel>>> { | |||
774 | 774 | ||
775 | // Remove playlists file | 775 | // Remove playlists file |
776 | if (!Array.isArray(instance.VideoStreamingPlaylists)) { | 776 | if (!Array.isArray(instance.VideoStreamingPlaylists)) { |
777 | instance.VideoStreamingPlaylists = await instance.$get('VideoStreamingPlaylists') | 777 | instance.VideoStreamingPlaylists = await instance.$get('VideoStreamingPlaylists', { transaction: options.transaction }) |
778 | } | 778 | } |
779 | 779 | ||
780 | for (const p of instance.VideoStreamingPlaylists) { | 780 | for (const p of instance.VideoStreamingPlaylists) { |
@@ -797,7 +797,7 @@ export class VideoModel extends Model<Partial<AttributesOnly<VideoModel>>> { | |||
797 | 797 | ||
798 | logger.info('Stopping live of video %s after video deletion.', instance.uuid) | 798 | logger.info('Stopping live of video %s after video deletion.', instance.uuid) |
799 | 799 | ||
800 | return LiveManager.Instance.stopSessionOf(instance.id) | 800 | LiveManager.Instance.stopSessionOf(instance.id) |
801 | } | 801 | } |
802 | 802 | ||
803 | @BeforeDestroy | 803 | @BeforeDestroy |
@@ -810,7 +810,7 @@ export class VideoModel extends Model<Partial<AttributesOnly<VideoModel>>> { | |||
810 | const tasks: Promise<any>[] = [] | 810 | const tasks: Promise<any>[] = [] |
811 | 811 | ||
812 | if (!Array.isArray(instance.VideoAbuses)) { | 812 | if (!Array.isArray(instance.VideoAbuses)) { |
813 | instance.VideoAbuses = await instance.$get('VideoAbuses') | 813 | instance.VideoAbuses = await instance.$get('VideoAbuses', { transaction: options.transaction }) |
814 | 814 | ||
815 | if (instance.VideoAbuses.length === 0) return undefined | 815 | if (instance.VideoAbuses.length === 0) return undefined |
816 | } | 816 | } |
@@ -825,12 +825,7 @@ export class VideoModel extends Model<Partial<AttributesOnly<VideoModel>>> { | |||
825 | tasks.push(abuse.save({ transaction: options.transaction })) | 825 | tasks.push(abuse.save({ transaction: options.transaction })) |
826 | } | 826 | } |
827 | 827 | ||
828 | Promise.all(tasks) | 828 | await Promise.all(tasks) |
829 | .catch(err => { | ||
830 | logger.error('Some errors when saving details of video %s in its abuses before destroy hook.', instance.uuid, { err }) | ||
831 | }) | ||
832 | |||
833 | return undefined | ||
834 | } | 829 | } |
835 | 830 | ||
836 | static listLocal (): Promise<MVideo[]> { | 831 | static listLocal (): Promise<MVideo[]> { |