From 0a7e2e9608030c12edc500b4784dbc0d8204c219 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Mon, 25 Apr 2022 15:35:48 +0800 Subject: [PATCH] fix: use :ref: instead Signed-off-by: Wing-Kam Wong --- .../nocodb/src/lib/noco-models/Project.ts | 30 ++++++++++++------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/packages/nocodb/src/lib/noco-models/Project.ts b/packages/nocodb/src/lib/noco-models/Project.ts index 33fa34ede0..25d8485e43 100644 --- a/packages/nocodb/src/lib/noco-models/Project.ts +++ b/packages/nocodb/src/lib/noco-models/Project.ts @@ -179,13 +179,16 @@ export default class Project implements ProjectType { // get existing cache const key = `${CacheScope.PROJECT}:${projectId}`; const o = await NocoCache.get(key, CacheGetType.TYPE_OBJECT); - if (o?.uuid) { - await NocoCache.del(`${CacheScope.PROJECT}:${o.uuid}`); - } - if (o) await NocoCache.del(`${CacheScope.PROJECT}:${projectId}`); - - if (o?.title) { + if (o) { + // delete : + await NocoCache.del(`${CacheScope.PROJECT}:${projectId}`); + // delete : await NocoCache.del(`${CacheScope.PROJECT}:${o.title}`); + // delete <scope>:<uuid> + await NocoCache.del(`${CacheScope.PROJECT}:${o.uuid}`); + // delete <scope>:ref:<titleOfId> + await NocoCache.del(`${CacheScope.PROJECT}:ref:${o.title}`); + await NocoCache.del(`${CacheScope.PROJECT}:ref:${o.id}`); } // remove item in cache list @@ -264,12 +267,17 @@ export default class Project implements ProjectType { await base.delete(ncMeta); } const project = await this.get(projectId); - if (project.uuid) { + + if (project) { + // delete <scope>:<uuid> await NocoCache.del(`${CacheScope.PROJECT}:${project.uuid}`); - } - if (project.title) { + // delete <scope>:<title> await NocoCache.del(`${CacheScope.PROJECT}:${project.title}`); + // delete <scope>:ref:<titleOfId> + await NocoCache.del(`${CacheScope.PROJECT}:ref:${project.title}`); + await NocoCache.del(`${CacheScope.PROJECT}:ref:${project.id}`); } + await NocoCache.deepDel( CacheScope.PROJECT, `${CacheScope.PROJECT}:${projectId}`, @@ -328,7 +336,7 @@ export default class Project implements ProjectType { const projectId = titleOrId && (await NocoCache.get( - `${CacheScope.PROJECT}:${titleOrId}`, + `${CacheScope.PROJECT}:ref:${titleOrId}`, CacheGetType.TYPE_OBJECT )); let projectData = null; @@ -357,7 +365,7 @@ export default class Project implements ProjectType { } ); await NocoCache.set( - `${CacheScope.PROJECT}:${titleOrId}`, + `${CacheScope.PROJECT}:ref:${titleOrId}`, projectData?.id ); } else {