From 49493d80be50bf5214e663a2bbf806ba1221a768 Mon Sep 17 00:00:00 2001 From: adrinr Date: Tue, 7 Mar 2023 12:45:20 +0100 Subject: [PATCH] Use name suffix instead of complex key object --- .../backend-core/src/cache/writethrough.ts | 3 ++- packages/types/src/sdk/locks.ts | 22 +++++-------------- 2 files changed, 8 insertions(+), 17 deletions(-) diff --git a/packages/backend-core/src/cache/writethrough.ts b/packages/backend-core/src/cache/writethrough.ts index 43f3bfb3aa..af5a6e7721 100644 --- a/packages/backend-core/src/cache/writethrough.ts +++ b/packages/backend-core/src/cache/writethrough.ts @@ -45,7 +45,8 @@ async function put( const lockResponse = await locks.doWithLock( { type: LockType.TRY_ONCE, - name: LockName.PERSIST_WRITETHROUGH(key!), + name: LockName.PERSIST_WRITETHROUGH, + nameSuffix: key, ttl: 1000, }, async () => { diff --git a/packages/types/src/sdk/locks.ts b/packages/types/src/sdk/locks.ts index d9c0b606a8..a878fe6a4f 100644 --- a/packages/types/src/sdk/locks.ts +++ b/packages/types/src/sdk/locks.ts @@ -8,22 +8,12 @@ export enum LockType { DELAY_500 = "delay_500", } -export class LockName { - static readonly MIGRATIONS = new LockName("migrations") - static readonly TRIGGER_QUOTA = new LockName("trigger_quota") - static readonly SYNC_ACCOUNT_LICENSE = new LockName("sync_account_license") - static readonly UPDATE_TENANTS_DOC = new LockName("update_tenants_doc") - static readonly PERSIST_WRITETHROUGH = (key: string) => - new LockName(`persist_writethrough_${key}`) - - constructor(public readonly value: string) {} - - valueOf() { - return this.value - } - toString() { - return this.valueOf() - } +export enum LockName { + MIGRATIONS = "migrations", + TRIGGER_QUOTA = "trigger_quota", + SYNC_ACCOUNT_LICENSE = "sync_account_license", + UPDATE_TENANTS_DOC = "update_tenants_doc", + PERSIST_WRITETHROUGH = "persist_writethrough", } export interface LockOptions {