aboutsummaryrefslogtreecommitdiff
path: root/editors/code/src/util.ts
diff options
context:
space:
mode:
authorZac Pullar-Strecker <[email protected]>2020-08-24 10:19:53 +0100
committerZac Pullar-Strecker <[email protected]>2020-08-24 10:20:13 +0100
commit7bbca7a1b3f9293d2f5cc5745199bc5f8396f2f0 (patch)
treebdb47765991cb973b2cd5481a088fac636bd326c /editors/code/src/util.ts
parentca464650eeaca6195891199a93f4f76cf3e7e697 (diff)
parente65d48d1fb3d4d91d9dc1148a7a836ff5c9a3c87 (diff)
Merge remote-tracking branch 'upstream/master' into 503-hover-doc-links
Diffstat (limited to 'editors/code/src/util.ts')
-rw-r--r--editors/code/src/util.ts7
1 files changed, 3 insertions, 4 deletions
diff --git a/editors/code/src/util.ts b/editors/code/src/util.ts
index 970fedb37..ec2087502 100644
--- a/editors/code/src/util.ts
+++ b/editors/code/src/util.ts
@@ -25,7 +25,6 @@ export const log = new class {
25 debug(...msg: [unknown, ...unknown[]]): void { 25 debug(...msg: [unknown, ...unknown[]]): void {
26 if (!log.enabled) return; 26 if (!log.enabled) return;
27 log.write("DEBUG", ...msg); 27 log.write("DEBUG", ...msg);
28 log.output.toString();
29 } 28 }
30 29
31 info(...msg: [unknown, ...unknown[]]): void { 30 info(...msg: [unknown, ...unknown[]]): void {
@@ -64,7 +63,8 @@ export async function sendRequestWithRetry<TParam, TRet>(
64 param: TParam, 63 param: TParam,
65 token?: vscode.CancellationToken, 64 token?: vscode.CancellationToken,
66): Promise<TRet> { 65): Promise<TRet> {
67 for (const delay of [2, 4, 6, 8, 10, null]) { 66 // The sequence is `10 * (2 ** (2 * n))` where n is 1, 2, 3...
67 for (const delay of [40, 160, 640, 2560, 10240, null]) {
68 try { 68 try {
69 return await (token 69 return await (token
70 ? client.sendRequest(reqType, param, token) 70 ? client.sendRequest(reqType, param, token)
@@ -84,8 +84,7 @@ export async function sendRequestWithRetry<TParam, TRet>(
84 log.warn("LSP request failed", { method: reqType.method, param, error }); 84 log.warn("LSP request failed", { method: reqType.method, param, error });
85 throw error; 85 throw error;
86 } 86 }
87 87 await sleep(delay);
88 await sleep(10 * (1 << delay));
89 } 88 }
90 } 89 }
91 throw 'unreachable'; 90 throw 'unreachable';