@medusajs/caching-redis 2.10.4-snapshot-20250928135304 → 2.10.4-snapshot-20250929174531
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redis-cache.d.ts","sourceRoot":"","sources":["../../src/services/redis-cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAA;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAG/B,qBAAa,oBAAoB;;IAC/B,MAAM,CAAC,UAAU,SAAgB;IAEjC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAA;IAC5B,SAAS,CAAC,aAAa,EAAE,MAAM,CAAA;IAC/B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAA;IAC5B,SAAS,CAAC,oBAAoB,EAAE,MAAM,CAAA;IACtC,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;gBAGvC,EACE,WAAW,EACX,MAAM,EACN,MAAM,GACP,EAAE;QAAE,WAAW,EAAE,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;KAAE,EAC1E,OAAO,CAAC,EAAE,uBAAuB;
|
|
1
|
+
{"version":3,"file":"redis-cache.d.ts","sourceRoot":"","sources":["../../src/services/redis-cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAA;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAG/B,qBAAa,oBAAoB;;IAC/B,MAAM,CAAC,UAAU,SAAgB;IAEjC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAA;IAC5B,SAAS,CAAC,aAAa,EAAE,MAAM,CAAA;IAC/B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAA;IAC5B,SAAS,CAAC,oBAAoB,EAAE,MAAM,CAAA;IACtC,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;gBAGvC,EACE,WAAW,EACX,MAAM,EACN,MAAM,GACP,EAAE;QAAE,WAAW,EAAE,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;KAAE,EAC1E,OAAO,CAAC,EAAE,uBAAuB;IAmO7B,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA8DnE,GAAG,CAAC,EACR,GAAG,EACH,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,OAAO,GACR,EAAE;QACD,GAAG,EAAE,MAAM,CAAA;QACX,IAAI,EAAE,MAAM,CAAA;QACZ,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;QACf,OAAO,CAAC,EAAE;YACR,cAAc,CAAC,EAAE,OAAO,CAAA;SACzB,CAAA;KACF,GAAG,OAAO,CAAC,IAAI,CAAC;IA4DX,KAAK,CAAC,EACV,GAAG,EACH,IAAI,EACJ,OAAO,GACR,EAAE;QACD,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;QACf,OAAO,CAAC,EAAE;YACR,cAAc,CAAC,EAAE,OAAO,CAAA;SACzB,CAAA;KACF,GAAG,OAAO,CAAC,IAAI,CAAC;IAuQX,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAsB7B"}
|
|
@@ -4,10 +4,10 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
5
5
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
6
6
|
};
|
|
7
|
-
var _RedisCachingProvider_instances, _RedisCachingProvider_getKeyName, _RedisCachingProvider_getTagKey, _RedisCachingProvider_getTagsKey, _RedisCachingProvider_compressData, _RedisCachingProvider_decompressData;
|
|
7
|
+
var _RedisCachingProvider_instances, _RedisCachingProvider_getKeyName, _RedisCachingProvider_getTagKey, _RedisCachingProvider_getTagsKey, _RedisCachingProvider_getTagDictionaryKey, _RedisCachingProvider_getTagNextIdKey, _RedisCachingProvider_getTagRefCountKey, _RedisCachingProvider_getTagReverseDictionaryKey, _RedisCachingProvider_internTags, _RedisCachingProvider_resolveTagIds, _RedisCachingProvider_decrementTagRefs, _RedisCachingProvider_compressData, _RedisCachingProvider_decompressData;
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.RedisCachingProvider = void 0;
|
|
10
|
-
const
|
|
10
|
+
const zlib_1 = require("zlib");
|
|
11
11
|
class RedisCachingProvider {
|
|
12
12
|
constructor({ redisClient, prefix, hasher, }, options) {
|
|
13
13
|
_RedisCachingProvider_instances.add(this);
|
|
@@ -20,11 +20,11 @@ class RedisCachingProvider {
|
|
|
20
20
|
async get({ key, tags }) {
|
|
21
21
|
if (key) {
|
|
22
22
|
const keyName = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getKeyName).call(this, key);
|
|
23
|
-
const
|
|
24
|
-
if (!
|
|
23
|
+
const buffer = await this.redisClient.hgetBuffer(keyName, "data");
|
|
24
|
+
if (!buffer) {
|
|
25
25
|
return null;
|
|
26
26
|
}
|
|
27
|
-
const finalData = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_decompressData).call(this,
|
|
27
|
+
const finalData = await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_decompressData).call(this, buffer);
|
|
28
28
|
return JSON.parse(finalData);
|
|
29
29
|
}
|
|
30
30
|
if (tags?.length) {
|
|
@@ -48,15 +48,15 @@ class RedisCachingProvider {
|
|
|
48
48
|
// Get all hash data for the keys
|
|
49
49
|
const valuePipeline = this.redisClient.pipeline();
|
|
50
50
|
Array.from(allKeys).forEach((key) => {
|
|
51
|
-
valuePipeline.
|
|
51
|
+
valuePipeline.hgetBuffer(key, "data");
|
|
52
52
|
});
|
|
53
53
|
const valueResults = await valuePipeline.exec();
|
|
54
54
|
const results = [];
|
|
55
|
-
|
|
55
|
+
for (const result of valueResults || []) {
|
|
56
56
|
if (result && result[1]) {
|
|
57
|
-
const
|
|
58
|
-
const finalData = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_decompressData).call(this, data);
|
|
57
|
+
const buffer = result[1];
|
|
59
58
|
try {
|
|
59
|
+
const finalData = await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_decompressData).call(this, buffer);
|
|
60
60
|
results.push(JSON.parse(finalData));
|
|
61
61
|
}
|
|
62
62
|
catch (e) {
|
|
@@ -64,7 +64,7 @@ class RedisCachingProvider {
|
|
|
64
64
|
console.warn(`Skipping corrupted cache entry: ${e.message}`);
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
|
-
}
|
|
67
|
+
}
|
|
68
68
|
return results;
|
|
69
69
|
}
|
|
70
70
|
return null;
|
|
@@ -73,27 +73,30 @@ class RedisCachingProvider {
|
|
|
73
73
|
const keyName = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getKeyName).call(this, key);
|
|
74
74
|
const serializedData = JSON.stringify(data);
|
|
75
75
|
const effectiveTTL = ttl ?? this.defaultTTL;
|
|
76
|
-
const finalData = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_compressData).call(this, serializedData);
|
|
77
|
-
const
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
await this.redisClient.expire(keyName, effectiveTTL);
|
|
76
|
+
const finalData = await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_compressData).call(this, serializedData);
|
|
77
|
+
const res = await this.redisClient.hsetnx(keyName, "data", finalData);
|
|
78
|
+
if (res === 1) {
|
|
79
|
+
if (options && Object.keys(options).length) {
|
|
80
|
+
await this.redisClient.hset(keyName, "options", JSON.stringify(options));
|
|
81
|
+
}
|
|
82
|
+
if (effectiveTTL) {
|
|
83
|
+
await this.redisClient.expire(keyName, effectiveTTL);
|
|
84
|
+
}
|
|
86
85
|
}
|
|
87
|
-
// Store
|
|
88
|
-
if (tags
|
|
86
|
+
// Store tag IDs in a separate key for inverted index lookup (much more space efficient)
|
|
87
|
+
if (tags?.length) {
|
|
88
|
+
const tagIds = await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_internTags).call(this, tags);
|
|
89
89
|
const tagsKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagsKey).call(this, key);
|
|
90
|
-
|
|
91
|
-
const
|
|
90
|
+
// Store as binary array of 32-bit integers instead of JSON strings
|
|
91
|
+
const buffer = Buffer.alloc(tagIds.length * 4);
|
|
92
|
+
tagIds.forEach((id, index) => {
|
|
93
|
+
buffer.writeUInt32LE(id, index * 4);
|
|
94
|
+
});
|
|
92
95
|
if (effectiveTTL) {
|
|
93
|
-
await this.redisClient.
|
|
96
|
+
await this.redisClient.set(tagsKey, buffer, "EX", effectiveTTL + 60, "NX"); // +1 minute buffer
|
|
94
97
|
}
|
|
95
98
|
else {
|
|
96
|
-
await this.redisClient.
|
|
99
|
+
await this.redisClient.setnx(tagsKey, buffer);
|
|
97
100
|
}
|
|
98
101
|
}
|
|
99
102
|
// Handle tags if provided
|
|
@@ -115,32 +118,36 @@ class RedisCachingProvider {
|
|
|
115
118
|
const keyName = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getKeyName).call(this, key);
|
|
116
119
|
// Get tags for this key to clean up tag sets
|
|
117
120
|
const tagsKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagsKey).call(this, key);
|
|
118
|
-
const
|
|
119
|
-
if (
|
|
121
|
+
const tagsBuffer = await this.redisClient.getBuffer(tagsKey);
|
|
122
|
+
if (tagsBuffer) {
|
|
120
123
|
try {
|
|
121
|
-
|
|
122
|
-
const
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
124
|
+
// Binary format: array of 32-bit integers
|
|
125
|
+
const tagIds = [];
|
|
126
|
+
for (let i = 0; i < tagsBuffer.length; i += 4) {
|
|
127
|
+
tagIds.push(tagsBuffer.readUInt32LE(i));
|
|
128
|
+
}
|
|
129
|
+
if (tagIds.length) {
|
|
130
|
+
const entryTags = await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_resolveTagIds).call(this, tagIds);
|
|
131
|
+
// Clean up tag indexes
|
|
126
132
|
const tagCleanupPipeline = this.redisClient.pipeline();
|
|
127
133
|
entryTags.forEach((tag) => {
|
|
128
|
-
const tagKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagKey).call(this, tag);
|
|
134
|
+
const tagKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagKey).call(this, tag, { isHashed: true });
|
|
129
135
|
tagCleanupPipeline.srem(tagKey, keyName);
|
|
130
136
|
});
|
|
131
|
-
// Also delete the tags key
|
|
132
137
|
tagCleanupPipeline.unlink(tagsKey);
|
|
133
138
|
await tagCleanupPipeline.exec();
|
|
139
|
+
// Decrement reference counts and cleanup unused tags
|
|
140
|
+
await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_decrementTagRefs).call(this, tagIds);
|
|
134
141
|
}
|
|
135
142
|
}
|
|
136
143
|
catch (e) {
|
|
137
|
-
|
|
144
|
+
// noop - corrupted tag data, skip cleanup
|
|
138
145
|
}
|
|
139
146
|
}
|
|
140
147
|
await this.redisClient.unlink(keyName);
|
|
141
148
|
return;
|
|
142
149
|
}
|
|
143
|
-
if (tags
|
|
150
|
+
if (tags?.length) {
|
|
144
151
|
// Handle wildcard tag to clear all cache data
|
|
145
152
|
if (tags.includes("*")) {
|
|
146
153
|
await this.flush();
|
|
@@ -154,7 +161,7 @@ class RedisCachingProvider {
|
|
|
154
161
|
});
|
|
155
162
|
const tagResults = await pipeline.exec();
|
|
156
163
|
const allKeys = new Set();
|
|
157
|
-
tagResults?.forEach((result
|
|
164
|
+
tagResults?.forEach((result) => {
|
|
158
165
|
if (result && result[1]) {
|
|
159
166
|
;
|
|
160
167
|
result[1].forEach((key) => allKeys.add(key));
|
|
@@ -172,30 +179,37 @@ class RedisCachingProvider {
|
|
|
172
179
|
const tagDataPromises = Array.from(allKeys).map(async (key) => {
|
|
173
180
|
const keyWithoutPrefix = key.replace(this.keyNamePrefix, "");
|
|
174
181
|
const tagsKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagsKey).call(this, keyWithoutPrefix);
|
|
175
|
-
const tagsData = await this.redisClient.
|
|
182
|
+
const tagsData = await this.redisClient.getBuffer(tagsKey);
|
|
176
183
|
return { key, tagsKey, tagsData };
|
|
177
184
|
});
|
|
178
185
|
const tagResults = await Promise.all(tagDataPromises);
|
|
179
186
|
// Build single pipeline for all tag cleanup operations
|
|
180
187
|
const tagCleanupPipeline = this.redisClient.pipeline();
|
|
181
|
-
tagResults.
|
|
188
|
+
const cleanupPromises = tagResults.map(async ({ key, tagsKey, tagsData }) => {
|
|
182
189
|
if (tagsData) {
|
|
183
190
|
try {
|
|
184
|
-
|
|
185
|
-
const
|
|
186
|
-
|
|
191
|
+
// Binary format: array of 32-bit integers
|
|
192
|
+
const tagIds = [];
|
|
193
|
+
for (let i = 0; i < tagsData.length; i += 4) {
|
|
194
|
+
tagIds.push(tagsData.readUInt32LE(i));
|
|
195
|
+
}
|
|
196
|
+
if (tagIds.length) {
|
|
197
|
+
const entryTags = await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_resolveTagIds).call(this, tagIds);
|
|
187
198
|
entryTags.forEach((tag) => {
|
|
188
|
-
const tagKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagKey).call(this, tag);
|
|
199
|
+
const tagKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagKey).call(this, tag, { isHashed: true });
|
|
189
200
|
tagCleanupPipeline.srem(tagKey, key);
|
|
190
201
|
});
|
|
191
202
|
tagCleanupPipeline.unlink(tagsKey);
|
|
203
|
+
// Decrement reference counts and cleanup unused tags
|
|
204
|
+
await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_decrementTagRefs).call(this, tagIds);
|
|
192
205
|
}
|
|
193
206
|
}
|
|
194
207
|
catch (e) {
|
|
195
|
-
|
|
208
|
+
// noop
|
|
196
209
|
}
|
|
197
210
|
}
|
|
198
211
|
});
|
|
212
|
+
await Promise.all(cleanupPromises);
|
|
199
213
|
await tagCleanupPipeline.exec();
|
|
200
214
|
await deletePipeline.exec();
|
|
201
215
|
// Clean up empty tag sets
|
|
@@ -237,7 +251,6 @@ class RedisCachingProvider {
|
|
|
237
251
|
}
|
|
238
252
|
}
|
|
239
253
|
catch (e) {
|
|
240
|
-
throw new Error(`Failed to clear tags for key ${key}: ${e}`);
|
|
241
254
|
// If can't parse options, assume it's safe to delete (default true)
|
|
242
255
|
keysToDelete.push(key);
|
|
243
256
|
}
|
|
@@ -256,22 +269,30 @@ class RedisCachingProvider {
|
|
|
256
269
|
const tagDataPromises = keysToDelete.map(async (key) => {
|
|
257
270
|
const keyWithoutPrefix = key.replace(this.keyNamePrefix, "");
|
|
258
271
|
const tagsKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagsKey).call(this, keyWithoutPrefix);
|
|
259
|
-
const tagsData = await this.redisClient.
|
|
272
|
+
const tagsData = await this.redisClient.getBuffer(tagsKey);
|
|
260
273
|
return { key, tagsKey, tagsData };
|
|
261
274
|
});
|
|
275
|
+
// Wait for all tag data fetches
|
|
262
276
|
const tagResults = await Promise.all(tagDataPromises);
|
|
277
|
+
// Build single pipeline for all tag cleanup operations
|
|
263
278
|
const tagCleanupPipeline = this.redisClient.pipeline();
|
|
264
|
-
tagResults.
|
|
279
|
+
const cleanupPromises = tagResults.map(async ({ key, tagsKey, tagsData }) => {
|
|
265
280
|
if (tagsData) {
|
|
266
281
|
try {
|
|
267
|
-
|
|
268
|
-
const
|
|
269
|
-
|
|
282
|
+
// Binary format: array of 32-bit integers
|
|
283
|
+
const tagIds = [];
|
|
284
|
+
for (let i = 0; i < tagsData.length; i += 4) {
|
|
285
|
+
tagIds.push(tagsData.readUInt32LE(i));
|
|
286
|
+
}
|
|
287
|
+
if (tagIds.length) {
|
|
288
|
+
const entryTags = await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_resolveTagIds).call(this, tagIds);
|
|
270
289
|
entryTags.forEach((tag) => {
|
|
271
|
-
const tagKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagKey).call(this, tag);
|
|
290
|
+
const tagKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagKey).call(this, tag, { isHashed: true });
|
|
272
291
|
tagCleanupPipeline.srem(tagKey, key);
|
|
273
292
|
});
|
|
274
|
-
tagCleanupPipeline.unlink(tagsKey);
|
|
293
|
+
tagCleanupPipeline.unlink(tagsKey); // Delete the tags key
|
|
294
|
+
// Decrement reference counts and cleanup unused tags
|
|
295
|
+
await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_decrementTagRefs).call(this, tagIds);
|
|
275
296
|
}
|
|
276
297
|
}
|
|
277
298
|
catch (e) {
|
|
@@ -279,8 +300,10 @@ class RedisCachingProvider {
|
|
|
279
300
|
}
|
|
280
301
|
}
|
|
281
302
|
});
|
|
303
|
+
await Promise.all(cleanupPromises);
|
|
282
304
|
await tagCleanupPipeline.exec();
|
|
283
305
|
await deletePipeline.exec();
|
|
306
|
+
// Clean up empty tag sets
|
|
284
307
|
const allTagKeys = await this.redisClient.keys(`${this.keyNamePrefix}tag:*`);
|
|
285
308
|
if (allTagKeys.length) {
|
|
286
309
|
const cleanupPipeline = this.redisClient.pipeline();
|
|
@@ -288,7 +311,7 @@ class RedisCachingProvider {
|
|
|
288
311
|
cleanupPipeline.scard(tagKey);
|
|
289
312
|
});
|
|
290
313
|
const cardinalityResults = await cleanupPipeline.exec();
|
|
291
|
-
// Delete tag keys that are empty
|
|
314
|
+
// Delete tag keys that are now empty
|
|
292
315
|
const emptyTagDeletePipeline = this.redisClient.pipeline();
|
|
293
316
|
cardinalityResults?.forEach((result, index) => {
|
|
294
317
|
if (result && result[1] === 0) {
|
|
@@ -321,44 +344,166 @@ class RedisCachingProvider {
|
|
|
321
344
|
exports.RedisCachingProvider = RedisCachingProvider;
|
|
322
345
|
_RedisCachingProvider_instances = new WeakSet(), _RedisCachingProvider_getKeyName = function _RedisCachingProvider_getKeyName(key) {
|
|
323
346
|
return `${this.keyNamePrefix}${key}`;
|
|
324
|
-
}, _RedisCachingProvider_getTagKey = function _RedisCachingProvider_getTagKey(tag) {
|
|
325
|
-
return `${this.keyNamePrefix}tag:${this.hasher(tag)}`;
|
|
347
|
+
}, _RedisCachingProvider_getTagKey = function _RedisCachingProvider_getTagKey(tag, { isHashed = false } = {}) {
|
|
348
|
+
return `${this.keyNamePrefix}tag:${isHashed ? tag : this.hasher(tag)}`;
|
|
326
349
|
}, _RedisCachingProvider_getTagsKey = function _RedisCachingProvider_getTagsKey(key) {
|
|
327
350
|
return `${this.keyNamePrefix}tags:${key}`;
|
|
328
|
-
},
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
351
|
+
}, _RedisCachingProvider_getTagDictionaryKey = function _RedisCachingProvider_getTagDictionaryKey() {
|
|
352
|
+
return `${this.keyNamePrefix}tag:dictionary`;
|
|
353
|
+
}, _RedisCachingProvider_getTagNextIdKey = function _RedisCachingProvider_getTagNextIdKey() {
|
|
354
|
+
return `${this.keyNamePrefix}tag:next_id`;
|
|
355
|
+
}, _RedisCachingProvider_getTagRefCountKey = function _RedisCachingProvider_getTagRefCountKey() {
|
|
356
|
+
return `${this.keyNamePrefix}tag:refs`;
|
|
357
|
+
}, _RedisCachingProvider_getTagReverseDictionaryKey = function _RedisCachingProvider_getTagReverseDictionaryKey() {
|
|
358
|
+
return `${this.keyNamePrefix}tag:reverse_dict`;
|
|
359
|
+
}, _RedisCachingProvider_internTags = async function _RedisCachingProvider_internTags(tags) {
|
|
360
|
+
const pipeline = this.redisClient.pipeline();
|
|
361
|
+
const dictionaryKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagDictionaryKey).call(this);
|
|
362
|
+
const hashedTags = tags.map((tag) => this.hasher(tag));
|
|
363
|
+
// Get existing tag IDs
|
|
364
|
+
hashedTags.forEach((tag) => {
|
|
365
|
+
pipeline.hget(dictionaryKey, tag);
|
|
366
|
+
});
|
|
367
|
+
const results = await pipeline.exec();
|
|
368
|
+
const tagIds = [];
|
|
369
|
+
const newTags = [];
|
|
370
|
+
for (let i = 0; i < hashedTags.length; i++) {
|
|
371
|
+
const result = results?.[i];
|
|
372
|
+
if (result && result[1]) {
|
|
373
|
+
tagIds[i] = parseInt(result[1]);
|
|
338
374
|
}
|
|
339
375
|
else {
|
|
340
|
-
|
|
376
|
+
const hashedTag = hashedTags[i];
|
|
377
|
+
newTags.push(hashedTag);
|
|
378
|
+
tagIds[i] = -1; // Placeholder for new tags
|
|
341
379
|
}
|
|
342
380
|
}
|
|
343
|
-
|
|
344
|
-
|
|
381
|
+
// Create IDs for new tags
|
|
382
|
+
if (newTags.length) {
|
|
383
|
+
const nextIdKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagNextIdKey).call(this);
|
|
384
|
+
const reverseDictKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagReverseDictionaryKey).call(this);
|
|
385
|
+
const startId = await this.redisClient.incrby(nextIdKey, newTags.length);
|
|
386
|
+
const newTagPipeline = this.redisClient.pipeline();
|
|
387
|
+
newTags.forEach((tag, index) => {
|
|
388
|
+
const newId = startId - newTags.length + index + 1;
|
|
389
|
+
// Store in both forward and reverse dictionaries
|
|
390
|
+
newTagPipeline.hset(dictionaryKey, tag, newId.toString());
|
|
391
|
+
newTagPipeline.hset(reverseDictKey, newId.toString(), tag);
|
|
392
|
+
// Update the tagIds array
|
|
393
|
+
const originalIndex = hashedTags.indexOf(tag);
|
|
394
|
+
tagIds[originalIndex] = newId;
|
|
395
|
+
});
|
|
396
|
+
await newTagPipeline.exec();
|
|
345
397
|
}
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
398
|
+
// Increment reference count for all tags (existing and new)
|
|
399
|
+
const refCountKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagRefCountKey).call(this);
|
|
400
|
+
const refPipeline = this.redisClient.pipeline();
|
|
401
|
+
tagIds.forEach((id) => {
|
|
402
|
+
refPipeline.hincrby(refCountKey, id.toString(), 1);
|
|
403
|
+
});
|
|
404
|
+
await refPipeline.exec();
|
|
405
|
+
return tagIds;
|
|
406
|
+
}, _RedisCachingProvider_resolveTagIds = async function _RedisCachingProvider_resolveTagIds(tagIds) {
|
|
407
|
+
if (tagIds.length === 0)
|
|
408
|
+
return [];
|
|
409
|
+
const reverseDictKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagReverseDictionaryKey).call(this);
|
|
410
|
+
const pipeline = this.redisClient.pipeline();
|
|
411
|
+
// Direct lookup using reverse dictionary - much more efficient!
|
|
412
|
+
tagIds.forEach((id) => {
|
|
413
|
+
pipeline.hget(reverseDictKey, id.toString());
|
|
414
|
+
});
|
|
415
|
+
const results = await pipeline.exec();
|
|
416
|
+
return results?.map((result) => result?.[1]).filter(Boolean) || [];
|
|
417
|
+
}, _RedisCachingProvider_decrementTagRefs = async function _RedisCachingProvider_decrementTagRefs(tagIds) {
|
|
418
|
+
if (tagIds.length === 0)
|
|
419
|
+
return;
|
|
420
|
+
const refCountKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagRefCountKey).call(this);
|
|
421
|
+
const dictionaryKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagDictionaryKey).call(this);
|
|
422
|
+
// Decrement reference counts and collect tags with zero refs
|
|
423
|
+
const pipeline = this.redisClient.pipeline();
|
|
424
|
+
tagIds.forEach((id) => {
|
|
425
|
+
pipeline.hincrby(refCountKey, id.toString(), -1);
|
|
426
|
+
});
|
|
427
|
+
const results = await pipeline.exec();
|
|
428
|
+
const tagsToCleanup = [];
|
|
429
|
+
// Find tags that now have zero references
|
|
430
|
+
results?.forEach((result, index) => {
|
|
431
|
+
if (result && result[1] === 0) {
|
|
432
|
+
tagsToCleanup.push(tagIds[index]);
|
|
359
433
|
}
|
|
434
|
+
});
|
|
435
|
+
// Clean up tags with zero references
|
|
436
|
+
if (tagsToCleanup.length) {
|
|
437
|
+
const cleanupPipeline = this.redisClient.pipeline();
|
|
438
|
+
const reverseDictKey = __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_getTagReverseDictionaryKey).call(this);
|
|
439
|
+
// Get tag names before deleting them
|
|
440
|
+
const tagNames = await __classPrivateFieldGet(this, _RedisCachingProvider_instances, "m", _RedisCachingProvider_resolveTagIds).call(this, tagsToCleanup);
|
|
441
|
+
tagsToCleanup.forEach((id, index) => {
|
|
442
|
+
const idStr = id.toString();
|
|
443
|
+
// Remove from reference count hash
|
|
444
|
+
cleanupPipeline.hdel(refCountKey, idStr);
|
|
445
|
+
// Remove from reverse dictionary
|
|
446
|
+
cleanupPipeline.hdel(reverseDictKey, idStr);
|
|
447
|
+
// Remove from forward dictionary
|
|
448
|
+
if (tagNames[index]) {
|
|
449
|
+
cleanupPipeline.hdel(dictionaryKey, tagNames[index]);
|
|
450
|
+
}
|
|
451
|
+
});
|
|
452
|
+
await cleanupPipeline.exec();
|
|
453
|
+
}
|
|
454
|
+
}, _RedisCachingProvider_compressData = async function _RedisCachingProvider_compressData(data) {
|
|
455
|
+
if (data.length <= this.compressionThreshold) {
|
|
456
|
+
const buffer = Buffer.from(data, "utf8");
|
|
457
|
+
const prefix = Buffer.from([0]); // 0 = uncompressed
|
|
458
|
+
return Buffer.concat([prefix, buffer]);
|
|
459
|
+
}
|
|
460
|
+
return new Promise((resolve, reject) => {
|
|
461
|
+
const chunks = [];
|
|
462
|
+
const gzip = (0, zlib_1.createGzip)();
|
|
463
|
+
gzip.on("data", (chunk) => chunks.push(chunk));
|
|
464
|
+
gzip.on("end", () => {
|
|
465
|
+
const compressedBuffer = Buffer.concat(chunks);
|
|
466
|
+
const prefix = Buffer.from([1]); // 1 = compressed
|
|
467
|
+
resolve(Buffer.concat([prefix, compressedBuffer]));
|
|
468
|
+
});
|
|
469
|
+
gzip.on("error", (error) => {
|
|
470
|
+
const buffer = Buffer.from(data, "utf8");
|
|
471
|
+
const prefix = Buffer.from([0]);
|
|
472
|
+
resolve(Buffer.concat([prefix, buffer]));
|
|
473
|
+
});
|
|
474
|
+
gzip.write(data, "utf8");
|
|
475
|
+
gzip.end();
|
|
476
|
+
});
|
|
477
|
+
}, _RedisCachingProvider_decompressData = async function _RedisCachingProvider_decompressData(buffer) {
|
|
478
|
+
if (buffer.length === 0) {
|
|
479
|
+
return "";
|
|
480
|
+
}
|
|
481
|
+
const formatByte = buffer[0];
|
|
482
|
+
const dataBuffer = buffer.subarray(1);
|
|
483
|
+
if (formatByte === 0) {
|
|
484
|
+
// Uncompressed
|
|
485
|
+
return dataBuffer.toString("utf8");
|
|
486
|
+
}
|
|
487
|
+
if (formatByte === 1) {
|
|
488
|
+
// Compressed with gzip
|
|
489
|
+
return new Promise((resolve, reject) => {
|
|
490
|
+
const chunks = [];
|
|
491
|
+
const gunzip = (0, zlib_1.createGunzip)();
|
|
492
|
+
gunzip.on("data", (chunk) => chunks.push(chunk));
|
|
493
|
+
gunzip.on("end", () => {
|
|
494
|
+
const decompressed = Buffer.concat(chunks).toString("utf8");
|
|
495
|
+
resolve(decompressed);
|
|
496
|
+
});
|
|
497
|
+
gunzip.on("error", (error) => {
|
|
498
|
+
// Fallback: return as-is if decompression fails
|
|
499
|
+
resolve(dataBuffer.toString("utf8"));
|
|
500
|
+
});
|
|
501
|
+
gunzip.write(dataBuffer);
|
|
502
|
+
gunzip.end();
|
|
503
|
+
});
|
|
360
504
|
}
|
|
361
|
-
return
|
|
505
|
+
// Unknown format, return as UTF-8
|
|
506
|
+
return buffer.toString("utf8");
|
|
362
507
|
};
|
|
363
508
|
RedisCachingProvider.identifier = "cache-redis";
|
|
364
509
|
//# sourceMappingURL=redis-cache.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redis-cache.js","sourceRoot":"","sources":["../../src/services/redis-cache.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"redis-cache.js","sourceRoot":"","sources":["../../src/services/redis-cache.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@medusajs/caching-redis",
|
|
3
|
-
"version": "2.10.4-snapshot-
|
|
3
|
+
"version": "2.10.4-snapshot-20250929174531",
|
|
4
4
|
"description": "Redis Caching for Medusa",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"repository": {
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"author": "Medusa",
|
|
21
21
|
"license": "MIT",
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"@medusajs/framework": "2.10.4-snapshot-
|
|
23
|
+
"@medusajs/framework": "2.10.4-snapshot-20250929174531",
|
|
24
24
|
"@swc/core": "^1.7.28",
|
|
25
25
|
"@swc/jest": "^0.2.36",
|
|
26
26
|
"jest": "^29.7.0",
|
|
@@ -28,11 +28,10 @@
|
|
|
28
28
|
"typescript": "^5.6.2"
|
|
29
29
|
},
|
|
30
30
|
"peerDependencies": {
|
|
31
|
-
"@medusajs/framework": "2.10.4-snapshot-
|
|
31
|
+
"@medusajs/framework": "2.10.4-snapshot-20250929174531"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"ioredis": "^5.4.1",
|
|
35
|
-
"lz4-wasm-nodejs": "^0.9.2",
|
|
36
35
|
"xxhash-wasm": "^1.1.0"
|
|
37
36
|
},
|
|
38
37
|
"scripts": {
|