@w3lib/solana-batch-call 0.2.0 → 0.2.2

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":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/rpc.d.ts CHANGED
@@ -17,7 +17,9 @@ export declare class HttpError extends Error {
17
17
  readonly status: number | undefined;
18
18
  /** 请求超时(HttpRpcOptions.timeout) */
19
19
  readonly timeout: boolean;
20
- constructor(message: string, status?: number, timeout?: boolean);
20
+ /** 5xx 的响应体是 JSON-RPC 错误(服务端故障,或节点用 5xx 拒绝批量请求) */
21
+ readonly rpcError: boolean;
22
+ constructor(message: string, status?: number, timeout?: boolean, rpcError?: boolean);
21
23
  }
22
24
  /** JSON-RPC 错误码:节点高度还没到请求的 minContextSlot */
23
25
  export declare const MIN_CONTEXT_SLOT_NOT_REACHED = -32016;
@@ -66,6 +68,11 @@ export declare class HttpRpc implements RpcTransport {
66
68
  constructor(url: string, options?: HttpRpcOptions);
67
69
  request<T = unknown>(method: string, params?: readonly unknown[]): Promise<T>;
68
70
  }
71
+ /**
72
+ * 把 JSON 文本里数值位置上 16 位以上的整数改成字符串(不支持 source text access 的环境用)。
73
+ * 跳过字符串字面量:错误信息等字符串里的长数字不会被改动
74
+ */
75
+ export declare function quoteBigIntegers(text: string): string;
69
76
  /**
70
77
  * onRequest 的事件:每个 JSON-RPC 调用对每个节点的每次尝试一条(合并成批量 HTTP 请求时,批里每个调用各一条,
71
78
  * ms 是该调用从发出到返回的时间;HttpRpc 内部的 429 退避重试算在同一条里)
package/dist/rpc.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
package/dist/rpc.js CHANGED
@@ -9,26 +9,57 @@ export class RpcError extends Error {
9
9
  this.name = 'RpcError';
10
10
  this.code = code;
11
11
  this.data = data;
12
+ const kind = classifyRpcError(code, message);
12
13
  this.nodeFault =
13
14
  code === 403 ||
14
- code === 429 ||
15
15
  code === -32005 ||
16
- // 节点高度没到 minContextSlot:换节点可能成功
17
- code === MIN_CONTEXT_SLOT_NOT_REACHED ||
18
- /minimum context slot/i.test(message) ||
19
- /forbidden|blocked|personal token|api.?key|rate.?limit|too many|not allowed|unauthori[sz]ed|limit exceeded|disabled|not available|not supported/i.test(message);
16
+ // 节点高度没到 minContextSlot、限频、服务端临时故障(繁忙、过载、暂不可用、超时):换节点可能成功;
17
+ // 临时故障也不应据此关闭批量(降级只会加重负载)
18
+ kind === 'min-slot' ||
19
+ kind === 'rate-limited' ||
20
+ kind === 'transient' ||
21
+ (/forbidden|blocked|personal token|api.?key|too many|not allowed|unauthori[sz]ed|limit exceeded|disabled|not available|not supported/i.test(message) &&
22
+ kind !== 'too-many-accounts');
20
23
  }
21
24
  }
25
+ function classifyRpcError(code, message) {
26
+ if (METHOD_LIMIT.test(message))
27
+ return 'method-limit';
28
+ if (TOO_MANY_ACCOUNTS.test(message))
29
+ return 'too-many-accounts';
30
+ if (code === -32602)
31
+ return 'invalid-params';
32
+ if (code === MIN_CONTEXT_SLOT_NOT_REACHED || /minimum context slot/i.test(message))
33
+ return 'min-slot';
34
+ if (code === 429 || RATE_LIMITED.test(message))
35
+ return 'rate-limited';
36
+ if (TRANSIENT.test(message))
37
+ return 'transient';
38
+ if (code === -32603)
39
+ return 'internal';
40
+ return 'other';
41
+ }
42
+ /** 节点限制单个方法在批量里的数量(如 publicnode:“Maximum number of 'getMultipleAccounts' calls in a batch request is 1”) */
43
+ const METHOD_LIMIT = /maximum number of '([^']+)' calls in a batch request is (\d+)/i;
44
+ /** 限频的报错 */
45
+ const RATE_LIMITED = /rate.?limit|too many requests/i;
46
+ /** 服务端临时故障的报错(如 -32000 server is busy、-32603 + 503 overloaded) */
47
+ const TRANSIENT = /\bbusy\b|overload|temporar(il)?y|unavailable|try again|timed? ?out|timeout/i;
48
+ /** 节点限制单次 getMultipleAccounts 的账户数(如 “Too many accounts requested”):缩小每次的账户数后重试,不是节点故障 */
49
+ const TOO_MANY_ACCOUNTS = /too many accounts/i;
22
50
  /** HTTP 层错误(非 2xx、网络错误、超时) */
23
51
  export class HttpError extends Error {
24
52
  status;
25
53
  /** 请求超时(HttpRpcOptions.timeout) */
26
54
  timeout;
27
- constructor(message, status, timeout = false) {
55
+ /** 5xx 的响应体是 JSON-RPC 错误(服务端故障,或节点用 5xx 拒绝批量请求) */
56
+ rpcError;
57
+ constructor(message, status, timeout = false, rpcError = false) {
28
58
  super(message);
29
59
  this.name = 'HttpError';
30
60
  this.status = status;
31
61
  this.timeout = timeout;
62
+ this.rpcError = rpcError;
32
63
  }
33
64
  }
34
65
  /** JSON-RPC 错误码:节点高度还没到请求的 minContextSlot */
@@ -69,6 +100,8 @@ export function isNodeFault(err) {
69
100
  let nextId = 1;
70
101
  /** 批量请求被拒绝、可以降级为逐条请求的 HTTP 状态 */
71
102
  const BATCH_REJECTED_STATUS = new Set([400, 404, 405, 415, 422]);
103
+ /** 节点不支持批量时,多久后重新尝试批量 */
104
+ const BATCH_RETRY_AFTER = 10 * 60 * 1000;
72
105
  function isBatchLimitError(message) {
73
106
  return !!message && /batch/i.test(message) && /more than \d+|too (large|many|big)|not (allowed|supported)|exceed/i.test(message);
74
107
  }
@@ -86,7 +119,14 @@ export class HttpRpc {
86
119
  #retries;
87
120
  #fetch;
88
121
  #maxBatchSize;
89
- #batch;
122
+ /** 节点对单个方法在一个批量里的数量限制(如 publicnode:getMultipleAccounts 最多 1 个),从报错里学到 */
123
+ #methodLimits = new Map();
124
+ /** options.batch:调用方是否允许批量 */
125
+ #batchOption;
126
+ /** 节点明确表示不支持批量时,在这之前逐条请求(之后重新尝试批量) */
127
+ #batchDisabledUntil = 0;
128
+ /** 节点限制单次 getMultipleAccounts 的账户数时学到的上限 */
129
+ #maxAccounts;
90
130
  #queue = [];
91
131
  #timer = null;
92
132
  constructor(url, options = {}) {
@@ -95,12 +135,53 @@ export class HttpRpc {
95
135
  this.#timeout = options.timeout ?? 10_000;
96
136
  this.#headers = { 'content-type': 'application/json', ...options.headers };
97
137
  this.#maxBatchSize = Math.max(1, options.maxBatchSize ?? 20);
98
- this.#batch = options.batch ?? true;
138
+ this.#batchOption = options.batch ?? true;
99
139
  this.#batchWait = options.batchWait ?? 0;
100
140
  this.#retries = Math.max(0, options.retries ?? 2);
101
141
  this.#fetch = options.fetch ?? ((...args) => fetch(...args));
102
142
  }
103
143
  request(method, params = []) {
144
+ if (method === 'getMultipleAccounts' && Array.isArray(params[0])) {
145
+ return this.#getMultipleAccounts(params);
146
+ }
147
+ return this.#enqueue(method, params);
148
+ }
149
+ /**
150
+ * getMultipleAccounts:节点限制单次账户数时(“Too many accounts requested”),减半后分多次请求、合并结果,
151
+ * 并记下上限,之后直接按上限拆分。合并后 context.slot 取最小值
152
+ */
153
+ async #getMultipleAccounts(params) {
154
+ const [addresses, ...rest] = params;
155
+ const max = this.#maxAccounts;
156
+ if (max !== undefined && addresses.length > max) {
157
+ const parts = [];
158
+ for (let i = 0; i < addresses.length; i += max) {
159
+ parts.push(addresses.slice(i, i + max));
160
+ }
161
+ const results = (await Promise.all(parts.map((part) => this.#getMultipleAccounts([part, ...rest]))));
162
+ const slots = results.map((r) => r?.context?.slot).filter((slot) => typeof slot === 'number');
163
+ return {
164
+ ...results[0],
165
+ context: { ...results[0]?.context, ...(slots.length ? { slot: Math.min(...slots) } : {}) },
166
+ value: results.flatMap((r) => r?.value ?? []),
167
+ };
168
+ }
169
+ try {
170
+ return await this.#enqueue('getMultipleAccounts', params);
171
+ }
172
+ catch (err) {
173
+ if (err instanceof RpcError && TOO_MANY_ACCOUNTS.test(err.message) && addresses.length > 1) {
174
+ this.#maxAccounts = Math.max(1, Math.min(this.#maxAccounts ?? Number.POSITIVE_INFINITY, Math.floor(addresses.length / 2)));
175
+ return this.#getMultipleAccounts(params);
176
+ }
177
+ throw err;
178
+ }
179
+ }
180
+ /** 是否合并成批量请求:调用方允许,且不在 “节点不支持批量” 的冷却期内 */
181
+ get #batch() {
182
+ return this.#batchOption && Date.now() >= this.#batchDisabledUntil;
183
+ }
184
+ #enqueue(method, params) {
104
185
  return new Promise((resolve, reject) => {
105
186
  this.#queue.push({ method, params, resolve: resolve, reject });
106
187
  if (!this.#batch || this.#queue.length >= this.#maxBatchSize) {
@@ -118,11 +199,48 @@ export class HttpRpc {
118
199
  }
119
200
  const queue = this.#queue;
120
201
  this.#queue = [];
121
- for (let i = 0; i < queue.length; i += this.#maxBatchSize) {
122
- void this.#dispatch(queue.slice(i, i + this.#maxBatchSize));
202
+ for (const chunk of this.#split(queue)) {
203
+ void this.#dispatch(chunk);
204
+ }
205
+ }
206
+ /** 按 maxBatchSize 和各方法的数量限制分批(保持顺序;不受限的方法照常合并) */
207
+ #split(items) {
208
+ const chunks = [];
209
+ let current = [];
210
+ let counts = new Map();
211
+ for (const item of items) {
212
+ const limit = this.#methodLimits.get(item.method);
213
+ const count = counts.get(item.method) ?? 0;
214
+ if (current.length >= this.#maxBatchSize || (limit !== undefined && count >= limit)) {
215
+ chunks.push(current);
216
+ current = [];
217
+ counts = new Map();
218
+ }
219
+ current.push(item);
220
+ counts.set(item.method, (counts.get(item.method) ?? 0) + 1);
123
221
  }
222
+ if (current.length) {
223
+ chunks.push(current);
224
+ }
225
+ return chunks;
226
+ }
227
+ /**
228
+ * 报错是 “某方法在批量里的数量超限” 时(如 “Maximum number of 'getMultipleAccounts' calls in a batch request is 1”),
229
+ * 记下限制并按限制重新分批,返回 true;限制解析不出或这批本来就没超限(避免无限重发)时返回 false
230
+ */
231
+ async #retryWithMethodLimit(items, message) {
232
+ const match = METHOD_LIMIT.exec(message ?? '');
233
+ const method = match?.[1];
234
+ const limit = Number(match?.[2]);
235
+ if (!method || !Number.isFinite(limit) || limit < 1 || items.filter((item) => item.method === method).length <= limit) {
236
+ return false;
237
+ }
238
+ this.#methodLimits.set(method, limit);
239
+ await Promise.all(this.#split(items).map((chunk) => this.#dispatch(chunk)));
240
+ return true;
124
241
  }
125
- async #dispatch(items) {
242
+ /** retriedServerError:这一批已经因 5xx + JSON-RPC 错误重试过一次 */
243
+ async #dispatch(items, retriedServerError = false) {
126
244
  if (items.length === 1 || !this.#batch) {
127
245
  await Promise.all(items.map((item) => this.#single(item)));
128
246
  return;
@@ -146,23 +264,54 @@ export class HttpRpc {
146
264
  await Promise.all(items.map((item) => this.#single(item)));
147
265
  return;
148
266
  }
267
+ // 5xx + -32603(含义不明确:临时故障,或节点用 5xx 拒绝批量):先原样重试一次批量(偶发故障这次就成功了,不降级);
268
+ // 仍然失败时只用第一条单独试探——成功说明是批量本身被拒,暂停批量(10 分钟后重试)并逐条发送其余的;
269
+ // 失败则是临时故障,其余的直接报错(换节点),不给出问题的节点加量
270
+ if (err instanceof HttpError && err.rpcError && items.length > 1) {
271
+ if (!retriedServerError) {
272
+ await this.#dispatch(items, true);
273
+ return;
274
+ }
275
+ const [first, ...rest] = items;
276
+ if (await this.#single(first)) {
277
+ this.#disableBatch();
278
+ await Promise.all(rest.map((item) => this.#single(item)));
279
+ }
280
+ else {
281
+ rest.forEach((item) => item.reject(err));
282
+ }
283
+ return;
284
+ }
149
285
  items.forEach((item) => item.reject(err));
150
286
  return;
151
287
  }
152
288
  if (!Array.isArray(body)) {
153
289
  const error = body?.error;
290
+ // 单个方法在批量里的数量超限(整批被拒):按限制重新分批,不当成节点问题
291
+ if (await this.#retryWithMethodLimit(items, error?.message)) {
292
+ return;
293
+ }
154
294
  const rpcError = new RpcError(error?.message ?? 'Invalid JSON-RPC batch response', error?.code, error?.data);
155
295
  // 限频 / 鉴权等节点问题:原样报错,不降级(降级成逐条请求只会让限频更严重)
156
296
  if (rpcError.nodeFault) {
157
297
  items.forEach((item) => item.reject(rpcError));
158
298
  return;
159
299
  }
160
- // 其他(如 -32600 invalid request):节点不支持批量,降级为逐条请求
161
- this.#disableBatch();
300
+ // 整批被拒(不是账户数超限):节点多半不支持批量(各家错误码不同:-32600 / -32601 / -32700 …),
301
+ // 一段时间内改为逐条请求(10 分钟后重新尝试批量,偶发的错误不会永久关闭);不关的话每批都要先失败一次再逐条重发。
302
+ // 账户数超限只把这一批逐条重发(由 HTTP 层按节点缩小单次读取数量)
303
+ if (!TOO_MANY_ACCOUNTS.test(error?.message ?? '')) {
304
+ this.#disableBatch();
305
+ }
162
306
  await Promise.all(items.map((item) => this.#single(item)));
163
307
  return;
164
308
  }
165
309
  const byId = new Map(body.map((res) => [res.id, res]));
310
+ // 有的节点把 “方法数量超限” 放在批量结果的某一项里
311
+ const methodLimited = body.find((res) => METHOD_LIMIT.test(res.error?.message ?? ''));
312
+ if (methodLimited && (await this.#retryWithMethodLimit(items, methodLimited.error?.message))) {
313
+ return;
314
+ }
166
315
  const limited = body.find((res) => isBatchLimitError(res.error?.message));
167
316
  if (limited) {
168
317
  // 如 “Batch of more than 3 requests are not allowed”:按限制缩小批量后重发;
@@ -178,11 +327,13 @@ export class HttpRpc {
178
327
  }
179
328
  return;
180
329
  }
181
- // 批量里个别调用被限频(JSON-RPC 429):只把这些调用退避后单独重试
330
+ // 批量里个别调用被限频(JSON-RPC 429):只把这些调用退避后单独重试一次(不再叠加 #post 的重试);
331
+ // 整批都是 429 时 #post 已经退避重试过整批,不再逐条重试——否则请求数会成倍放大
332
+ const allLimited = isRateLimited(body);
182
333
  const limitedItems = [];
183
334
  items.forEach((item, i) => {
184
335
  const response = byId.get(ids[i]);
185
- if (response?.error?.code === 429 && this.#retries > 0) {
336
+ if (response?.error?.code === 429 && this.#retries > 0 && !allLimited) {
186
337
  limitedItems.push(item);
187
338
  }
188
339
  else {
@@ -191,31 +342,30 @@ export class HttpRpc {
191
342
  });
192
343
  if (limitedItems.length) {
193
344
  await new Promise((r) => setTimeout(r, 500));
194
- await Promise.all(limitedItems.map((item) => this.#single(item)));
345
+ await Promise.all(limitedItems.map((item) => this.#single(item, 0)));
195
346
  }
196
347
  }
197
348
  /** 按当前的 maxBatchSize 重新分批发送(每批都比原来小,不会无限循环) */
198
349
  async #redispatch(items) {
199
- const size = this.#maxBatchSize;
200
- const chunks = [];
201
- for (let i = 0; i < items.length; i += size) {
202
- chunks.push(items.slice(i, i + size));
203
- }
204
- await Promise.all(chunks.map((chunk) => this.#dispatch(chunk)));
350
+ await Promise.all(this.#split(items).map((chunk) => this.#dispatch(chunk)));
205
351
  }
206
- async #single(item) {
352
+ /** 逐条发送一个调用;返回是否拿到了结果(没有出错) */
353
+ async #single(item, retries = this.#retries) {
207
354
  try {
208
- const body = (await this.#post({ jsonrpc: '2.0', id: nextId++, method: item.method, params: item.params }));
355
+ const body = (await this.#post({ jsonrpc: '2.0', id: nextId++, method: item.method, params: item.params }, retries));
209
356
  settle(item, body);
357
+ return !body?.error;
210
358
  }
211
359
  catch (err) {
212
360
  item.reject(err);
361
+ return false;
213
362
  }
214
363
  }
364
+ /** 节点明确表示不支持批量:10 分钟内逐条请求,之后重新尝试批量(节点可能只是临时出错或已经升级) */
215
365
  #disableBatch() {
216
- this.#batch = false;
366
+ this.#batchDisabledUntil = Date.now() + BATCH_RETRY_AFTER;
217
367
  }
218
- async #post(payload) {
368
+ async #post(payload, retries = this.#retries) {
219
369
  for (let attempt = 0;; attempt++) {
220
370
  let response;
221
371
  try {
@@ -231,11 +381,19 @@ export class HttpRpc {
231
381
  const timeout = err?.name === 'TimeoutError';
232
382
  throw new HttpError(`Request to ${this.#safeUrl} failed: ${err?.message ?? err}`, undefined, timeout);
233
383
  }
234
- if (response.status === 429 && attempt < this.#retries) {
384
+ if (response.status === 429 && attempt < retries) {
235
385
  await new Promise((r) => setTimeout(r, 500 * 2 ** attempt));
236
386
  continue;
237
387
  }
238
- const text = await response.text();
388
+ let text;
389
+ try {
390
+ text = await response.text();
391
+ }
392
+ catch (err) {
393
+ // 读响应体时超时或连接中断:同样包装成 HttpError(原生 DOMException / TypeError 不会被当成可恢复的节点问题)
394
+ const timeout = err?.name === 'TimeoutError';
395
+ throw new HttpError(`Reading response from ${this.#safeUrl} failed: ${err?.message ?? err}`, response.status, timeout);
396
+ }
239
397
  let body;
240
398
  try {
241
399
  body = parseJson(text);
@@ -247,8 +405,18 @@ export class HttpRpc {
247
405
  if (!response.ok && !Array.isArray(body) && !body?.error) {
248
406
  throw new HttpError(`HTTP ${response.status} from ${this.#safeUrl}`, response.status);
249
407
  }
408
+ // 5xx + 单个 JSON-RPC 错误:
409
+ // - 繁忙、过载等明确的临时故障:按 HTTP 错误处理,直接换节点(不重试、不逐条,不给过载的节点加量)
410
+ // - -32603 internal error:含义不明确,标记 rpcError,由 #dispatch 判断是临时故障还是节点用 5xx 拒绝批量
411
+ // 其他错误(方法数量超限、账户数超限、参数错误、minContextSlot、限频等)照常交给上层按类型处理
412
+ const bodyError = response.status >= 500 && !Array.isArray(body) ? body?.error : undefined;
413
+ const kind = bodyError ? classifyRpcError(bodyError.code, bodyError.message ?? '') : undefined;
414
+ if (kind === 'transient' || kind === 'internal') {
415
+ const message = bodyError?.message;
416
+ throw new HttpError(`HTTP ${response.status} from ${this.#safeUrl}${message ? `: ${message}` : ''}`, response.status, false, kind === 'internal');
417
+ }
250
418
  // 有的节点限频时返回 HTTP 200 + JSON-RPC 错误码 429:同样退避重试
251
- if (attempt < this.#retries && isRateLimited(body)) {
419
+ if (attempt < retries && isRateLimited(body)) {
252
420
  await new Promise((r) => setTimeout(r, 500 * 2 ** attempt));
253
421
  continue;
254
422
  }
@@ -271,7 +439,14 @@ function parseJson(text) {
271
439
  if (sourceAccess) {
272
440
  return JSON.parse(text, (_key, value, context) => typeof value === 'number' && !Number.isSafeInteger(value) && Number.isInteger(value) && context?.source ? context.source : value);
273
441
  }
274
- return JSON.parse(text.replace(/([:[,]\s*)(-?\d{16,})(?=\s*[,}\]])/g, '$1"$2"'));
442
+ return JSON.parse(quoteBigIntegers(text));
443
+ }
444
+ /**
445
+ * 把 JSON 文本里数值位置上 16 位以上的整数改成字符串(不支持 source text access 的环境用)。
446
+ * 跳过字符串字面量:错误信息等字符串里的长数字不会被改动
447
+ */
448
+ export function quoteBigIntegers(text) {
449
+ return text.replace(/"(?:[^"\\]|\\.)*"|-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?/g, (token) => token[0] !== '"' && /^-?\d{16,}$/.test(token) ? `"${token}"` : token);
275
450
  }
276
451
  function safeOrigin(url) {
277
452
  try {