Enforce unified lock names by using functions to generate lock keys (#165)

This commit is contained in:
Nils 2021-04-02 15:43:13 +02:00 committed by GitHub
parent fcbb25b7ff
commit c5d68650a3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 70 additions and 28 deletions

View file

@ -2,6 +2,7 @@ import { GuildPluginData } from "knub";
import { ReactionRolesPluginType, RoleChangeMode, PendingMemberRoleChanges } from "../types";
import { resolveMember } from "../../../utils";
import { logger } from "../../../logger";
import { memberRolesLock } from "../../../utils/lockNameHelpers";
const ROLE_CHANGE_BATCH_DEBOUNCE_TIME = 1500;
@ -18,7 +19,7 @@ export async function addMemberPendingRoleChange(
applyFn: async () => {
pluginData.state.pendingRoleChanges.delete(memberId);
const lock = await pluginData.locks.acquire(`member-roles-${memberId}`);
const lock = await pluginData.locks.acquire(memberRolesLock({ id: memberId }));
const member = await resolveMember(pluginData.client, pluginData.guild, memberId);
if (member) {