From 95b1f90a04d52550a91b69a196d335c7838ba896 Mon Sep 17 00:00:00 2001 From: Brandon Liu Date: Thu, 21 Jul 2022 10:19:34 +0800 Subject: [PATCH] Revert "cloudflare worker: cache holds promises instead of buffers" see errors related to "The script will never generate a response." This reverts commit e0402ded7ffd556fcfd73ae8a685e0fe9e264807. --- serverless/cloudflare/worker.ts | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/serverless/cloudflare/worker.ts b/serverless/cloudflare/worker.ts index 532082c..5c18f2b 100644 --- a/serverless/cloudflare/worker.ts +++ b/serverless/cloudflare/worker.ts @@ -7,7 +7,7 @@ interface Env { interface CacheEntry { lastUsed: number; - buffer: Promise; + buffer: DataView; } export class LRUCache { @@ -29,17 +29,18 @@ export class LRUCache { let val = this.entries.get(cacheKey); if (val) { val.lastUsed = this.counter++; - return [true, new DataView(await val.buffer)]; + return [true, val.buffer]; } let resp = await bucket.get(key, { range: { offset: offset, length: length }, }); - let a = (resp as R2ObjectBody).arrayBuffer(); + let a = await (resp as R2ObjectBody).arrayBuffer(); + let d = new DataView(a); this.entries.set(cacheKey, { lastUsed: this.counter++, - buffer: a, + buffer: d, }); if (this.entries.size > 128) { let minUsed = Infinity; @@ -53,7 +54,7 @@ export class LRUCache { if (minKey) this.entries.delete(minKey); } - return [false, new DataView(await a)]; + return [false, d]; } }