From e03c327778a3b803e91edf835cfd3337d0d694bc Mon Sep 17 00:00:00 2001 From: Michal Piechowiak Date: Tue, 15 Feb 2022 18:46:15 +0100 Subject: [PATCH 1/2] chore: cache shouldn't reference nodes strongly --- packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts b/packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts index 81d1a2bfe251c..d1fd8e3759bfb 100644 --- a/packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts +++ b/packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts @@ -93,7 +93,9 @@ function getDatabases(): ILmdbDatabases { // FIXME: sharedStructuresKey breaks tests - probably need some cleanup for it on DELETE_CACHE // sharedStructuresKey: Symbol.for(`structures`), // @ts-ignore - cache: true, + cache: { + expirer: false, + }, }), nodesByType: rootDb.openDB({ name: `nodesByType`, From 51f407def0919a8ff24fa221cf13ee3573cf7382 Mon Sep 17 00:00:00 2001 From: Michal Piechowiak Date: Tue, 15 Feb 2022 19:20:36 +0100 Subject: [PATCH 2/2] Update lmdb-datastore.ts --- packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts b/packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts index d1fd8e3759bfb..d8a718b134b7a 100644 --- a/packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts +++ b/packages/gatsby/src/datastore/lmdb/lmdb-datastore.ts @@ -94,6 +94,9 @@ function getDatabases(): ILmdbDatabases { // sharedStructuresKey: Symbol.for(`structures`), // @ts-ignore cache: { + // expirer: false disables LRU part and only take care of WeakRefs + // this way we don't retain nodes strongly, but will continue to + // reuse them if they are loaded already expirer: false, }, }),