From a77c7327a25b95b314dfcdb25f239f0e4a85096c Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 25 Feb 2021 15:55:31 +0100 Subject: Fix process abuse transactions --- server/lib/activitypub/process/process-flag.ts | 7 +++---- server/lib/oauth-model.ts | 20 ++++++++++---------- 2 files changed, 13 insertions(+), 14 deletions(-) (limited to 'server/lib') diff --git a/server/lib/activitypub/process/process-flag.ts b/server/lib/activitypub/process/process-flag.ts index 40d07558c..7ed409d0e 100644 --- a/server/lib/activitypub/process/process-flag.ts +++ b/server/lib/activitypub/process/process-flag.ts @@ -49,13 +49,12 @@ async function processCreateAbuse (activity: ActivityCreate | ActivityFlag, byAc logger.debug('Reporting remote abuse for object %s.', uri) await sequelizeTypescript.transaction(async t => { - - const video = await VideoModel.loadByUrlAndPopulateAccount(uri) + const video = await VideoModel.loadByUrlAndPopulateAccount(uri, t) let videoComment: MCommentOwnerVideo let flaggedAccount: MAccountDefault - if (!video) videoComment = await VideoCommentModel.loadByUrlAndPopulateAccountAndVideo(uri) - if (!videoComment) flaggedAccount = await AccountModel.loadByUrl(uri) + if (!video) videoComment = await VideoCommentModel.loadByUrlAndPopulateAccountAndVideo(uri, t) + if (!videoComment) flaggedAccount = await AccountModel.loadByUrl(uri, t) if (!video && !videoComment && !flaggedAccount) { logger.warn('Cannot flag unknown entity %s.', object) diff --git a/server/lib/oauth-model.ts b/server/lib/oauth-model.ts index 75aee2567..a2c53a2c9 100644 --- a/server/lib/oauth-model.ts +++ b/server/lib/oauth-model.ts @@ -1,20 +1,20 @@ import * as express from 'express' +import * as LRUCache from 'lru-cache' import { AccessDeniedError } from 'oauth2-server' -import { logger } from '../helpers/logger' -import { UserModel } from '../models/account/user' -import { OAuthClientModel } from '../models/oauth/oauth-client' -import { OAuthTokenModel } from '../models/oauth/oauth-token' -import { LRU_CACHE, OAUTH_LIFETIME } from '../initializers/constants' import { Transaction } from 'sequelize' -import { CONFIG } from '../initializers/config' -import * as LRUCache from 'lru-cache' +import { PluginManager } from '@server/lib/plugins/plugin-manager' +import { ActorModel } from '@server/models/activitypub/actor' import { MOAuthTokenUser } from '@server/types/models/oauth/oauth-token' import { MUser } from '@server/types/models/user/user' import { UserAdminFlag } from '@shared/models/users/user-flag.model' -import { createUserAccountAndChannelAndPlaylist } from './user' import { UserRole } from '@shared/models/users/user-role' -import { PluginManager } from '@server/lib/plugins/plugin-manager' -import { ActorModel } from '@server/models/activitypub/actor' +import { logger } from '../helpers/logger' +import { CONFIG } from '../initializers/config' +import { LRU_CACHE } from '../initializers/constants' +import { UserModel } from '../models/account/user' +import { OAuthClientModel } from '../models/oauth/oauth-client' +import { OAuthTokenModel } from '../models/oauth/oauth-token' +import { createUserAccountAndChannelAndPlaylist } from './user' type TokenInfo = { accessToken: string, refreshToken: string, accessTokenExpiresAt: Date, refreshTokenExpiresAt: Date } -- cgit v1.2.3