@across-protocol/sdk 4.3.24 → 4.3.25

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.
@@ -41,12 +41,12 @@ var RetrySolanaRpcFactory = (function (_super) {
41
41
  };
42
42
  RetrySolanaRpcFactory.prototype._tryCall = function (transportCall, args) {
43
43
  return tslib_1.__awaiter(this, void 0, void 0, function () {
44
- var method, retries, error_1;
44
+ var method, retryAttempt, error_1, exponentialBackoff, delayS;
45
45
  return tslib_1.__generator(this, function (_a) {
46
46
  switch (_a.label) {
47
47
  case 0:
48
48
  method = args[0].payload.method;
49
- retries = this.retries;
49
+ retryAttempt = 0;
50
50
  _a.label = 1;
51
51
  case 1:
52
52
  if (!true) return [3, 7];
@@ -57,19 +57,21 @@ var RetrySolanaRpcFactory = (function (_super) {
57
57
  case 3: return [2, _a.sent()];
58
58
  case 4:
59
59
  error_1 = _a.sent();
60
- if (retries-- <= 0 || this.shouldFailImmediate(method, error_1)) {
60
+ if (retryAttempt++ >= this.retries || this.shouldFailImmediate(method, error_1)) {
61
61
  throw error_1;
62
62
  }
63
+ exponentialBackoff = this.retryDelaySeconds * Math.pow(2, retryAttempt);
64
+ delayS = this.retryDelaySeconds + exponentialBackoff * Math.random();
63
65
  this.logger.debug({
64
66
  at: "RetryRpcFactory",
65
67
  message: "Retrying Solana RPC call",
66
68
  provider: (0, NetworkUtils_1.getOriginFromURL)(this.clusterUrl),
67
69
  method: method,
68
- retryAttempt: this.retries - retries,
69
- retryDelaySeconds: this.retryDelaySeconds,
70
+ retryAttempt: retryAttempt,
71
+ retryDelaySeconds: delayS,
70
72
  error: error_1 === null || error_1 === void 0 ? void 0 : error_1.toString(),
71
73
  });
72
- return [4, (0, utils_1.delay)(this.retryDelaySeconds)];
74
+ return [4, (0, utils_1.delay)(delayS)];
73
75
  case 5:
74
76
  _a.sent();
75
77
  return [3, 6];
@@ -1 +1 @@
1
- {"version":3,"file":"retryRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":";;;;AACA,uDAA6D;AAC7D,iEAAsE;AACtE,qCAAoC;AACpC,yDAA4D;AAK5D;IAA2C,iDAAuB;IAMhE,+BACW,OAAe,EACf,iBAAyB;QAFpC,iBAwBC;QArBC,sCAA0F;aAA1F,UAA0F,EAA1F,qBAA0F,EAA1F,IAA0F;YAA1F,qDAA0F;;QAG1F,IAAM,WAAW,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,CAGxD,CAAC;mCACO,WAAW;QATX,aAAO,GAAP,OAAO,CAAQ;QACf,uBAAiB,GAAjB,iBAAiB,CAAQ;QAWlC,IAAI,KAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAI,CAAC,OAAO,CAAC,EAAE;YACvD,MAAM,IAAI,KAAK,CAAC,yEAAkE,KAAI,CAAC,OAAO,CAAE,CAAC,CAAC;SACnG;QACD,IAAI,KAAI,CAAC,iBAAiB,GAAG,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,4DAAqD,KAAI,CAAC,iBAAiB,CAAE,CAAC,CAAC;SAChG;QAGD,IAAM,qBAAqB,QAAO,mDAA2B,YAA3B,mDAA2B,kCAAI,4BAA4B,YAAC,CAAC;QAC/F,KAAI,CAAC,oBAAoB,GAAG,qBAAqB,CAAC,eAAe,EAAE,CAAC;QACpE,KAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC;;IAC7C,CAAC;IAEM,+CAAe,GAAtB;QAAA,iBAIC;QAHC,OAAO;YAAY,cAAiC;iBAAjC,UAAiC,EAAjC,qBAAiC,EAAjC,IAAiC;gBAAjC,yBAAiC;;YAClD,OAAO,KAAI,CAAC,QAAQ,CAAC,cAAM,OAAA,KAAI,CAAC,oBAAoB,OAAzB,KAAI,EAAoC,IAAI,GAA5C,CAA6C,EAAE,IAAI,CAAC,CAAC;QAClF,CAAC,CAAC;IACJ,CAAC;IAQa,wCAAQ,GAAtB,UACE,aAAuC,EACvC,IAA8B;;;;;;wBAEtB,MAAM,GAAK,IAAI,CAAC,CAAC,CAAC,CAAC,OAAiD,OAA9D,CAA+D;wBACzE,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;;;6BAGpB,IAAI;;;;wBAEA,WAAM,aAAa,EAAE,EAAA;4BAA5B,WAAO,SAAqB,EAAC;;;wBAE7B,IAAI,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAK,CAAC,EAAE;4BAC7D,MAAM,OAAK,CAAC;yBACb;wBAGD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,iBAAiB;4BACrB,OAAO,EAAE,0BAA0B;4BACnC,QAAQ,EAAE,IAAA,+BAAgB,EAAC,IAAI,CAAC,UAAU,CAAC;4BAC3C,MAAM,QAAA;4BACN,YAAY,EAAE,IAAI,CAAC,OAAO,GAAG,OAAO;4BACpC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;4BACzC,KAAK,EAAE,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,EAAE;yBACzB,CAAC,CAAC;wBAEH,WAAM,IAAA,aAAK,EAAC,IAAI,CAAC,iBAAiB,CAAC,EAAA;;wBAAnC,SAAmC,CAAC;;;;;;;KAGzC;IAQO,mDAAmB,GAA3B,UAA4B,OAAe,EAAE,MAAe;QAG1D,OAAO,KAAK,CAAC;IACf,CAAC;IACH,4BAAC;AAAD,CAAC,AAvFD,CAA2C,0CAAuB,GAuFjE;AAvFY,sDAAqB"}
1
+ {"version":3,"file":"retryRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":";;;;AACA,uDAA6D;AAC7D,iEAAsE;AACtE,qCAAoC;AACpC,yDAA4D;AAK5D;IAA2C,iDAAuB;IAMhE,+BACW,OAAe,EACf,iBAAyB;QAFpC,iBAwBC;QArBC,sCAA0F;aAA1F,UAA0F,EAA1F,qBAA0F,EAA1F,IAA0F;YAA1F,qDAA0F;;QAG1F,IAAM,WAAW,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,CAGxD,CAAC;mCACO,WAAW;QATX,aAAO,GAAP,OAAO,CAAQ;QACf,uBAAiB,GAAjB,iBAAiB,CAAQ;QAWlC,IAAI,KAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAI,CAAC,OAAO,CAAC,EAAE;YACvD,MAAM,IAAI,KAAK,CAAC,yEAAkE,KAAI,CAAC,OAAO,CAAE,CAAC,CAAC;SACnG;QACD,IAAI,KAAI,CAAC,iBAAiB,GAAG,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,4DAAqD,KAAI,CAAC,iBAAiB,CAAE,CAAC,CAAC;SAChG;QAGD,IAAM,qBAAqB,QAAO,mDAA2B,YAA3B,mDAA2B,kCAAI,4BAA4B,YAAC,CAAC;QAC/F,KAAI,CAAC,oBAAoB,GAAG,qBAAqB,CAAC,eAAe,EAAE,CAAC;QACpE,KAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC;;IAC7C,CAAC;IAEM,+CAAe,GAAtB;QAAA,iBAIC;QAHC,OAAO;YAAY,cAAiC;iBAAjC,UAAiC,EAAjC,qBAAiC,EAAjC,IAAiC;gBAAjC,yBAAiC;;YAClD,OAAO,KAAI,CAAC,QAAQ,CAAC,cAAM,OAAA,KAAI,CAAC,oBAAoB,OAAzB,KAAI,EAAoC,IAAI,GAA5C,CAA6C,EAAE,IAAI,CAAC,CAAC;QAClF,CAAC,CAAC;IACJ,CAAC;IAQa,wCAAQ,GAAtB,UACE,aAAuC,EACvC,IAA8B;;;;;;wBAEtB,MAAM,GAAK,IAAI,CAAC,CAAC,CAAC,CAAC,OAAiD,OAA9D,CAA+D;wBACzE,YAAY,GAAG,CAAC,CAAC;;;6BAGd,IAAI;;;;wBAEA,WAAM,aAAa,EAAE,EAAA;4BAA5B,WAAO,SAAqB,EAAC;;;wBAE7B,IAAI,YAAY,EAAE,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAK,CAAC,EAAE;4BAC7E,MAAM,OAAK,CAAC;yBACb;wBAGK,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;wBACxE,MAAM,GAAG,IAAI,CAAC,iBAAiB,GAAG,kBAAkB,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;wBAG3E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,iBAAiB;4BACrB,OAAO,EAAE,0BAA0B;4BACnC,QAAQ,EAAE,IAAA,+BAAgB,EAAC,IAAI,CAAC,UAAU,CAAC;4BAC3C,MAAM,QAAA;4BACN,YAAY,EAAE,YAAY;4BAC1B,iBAAiB,EAAE,MAAM;4BACzB,KAAK,EAAE,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,EAAE;yBACzB,CAAC,CAAC;wBAEH,WAAM,IAAA,aAAK,EAAC,MAAM,CAAC,EAAA;;wBAAnB,SAAmB,CAAC;;;;;;;KAGzB;IAQO,mDAAmB,GAA3B,UAA4B,OAAe,EAAE,MAAe;QAG1D,OAAO,KAAK,CAAC;IACf,CAAC;IACH,4BAAC;AAAD,CAAC,AA3FD,CAA2C,0CAAuB,GA2FjE;AA3FY,sDAAqB"}
@@ -49,12 +49,12 @@ var RetrySolanaRpcFactory = /** @class */ (function (_super) {
49
49
  */
50
50
  RetrySolanaRpcFactory.prototype._tryCall = function (transportCall, args) {
51
51
  return __awaiter(this, void 0, void 0, function () {
52
- var method, retries, error_1;
52
+ var method, retryAttempt, error_1, exponentialBackoff, delayS;
53
53
  return __generator(this, function (_a) {
54
54
  switch (_a.label) {
55
55
  case 0:
56
56
  method = args[0].payload.method;
57
- retries = this.retries;
57
+ retryAttempt = 0;
58
58
  _a.label = 1;
59
59
  case 1:
60
60
  if (!true) return [3 /*break*/, 7];
@@ -65,20 +65,22 @@ var RetrySolanaRpcFactory = /** @class */ (function (_super) {
65
65
  case 3: return [2 /*return*/, _a.sent()];
66
66
  case 4:
67
67
  error_1 = _a.sent();
68
- if (retries-- <= 0 || this.shouldFailImmediate(method, error_1)) {
68
+ if (retryAttempt++ >= this.retries || this.shouldFailImmediate(method, error_1)) {
69
69
  throw error_1;
70
70
  }
71
+ exponentialBackoff = this.retryDelaySeconds * Math.pow(2, retryAttempt);
72
+ delayS = this.retryDelaySeconds + exponentialBackoff * Math.random();
71
73
  // Log retry attempt if logger is available
72
74
  this.logger.debug({
73
75
  at: "RetryRpcFactory",
74
76
  message: "Retrying Solana RPC call",
75
77
  provider: getOriginFromURL(this.clusterUrl),
76
78
  method: method,
77
- retryAttempt: this.retries - retries,
78
- retryDelaySeconds: this.retryDelaySeconds,
79
+ retryAttempt: retryAttempt,
80
+ retryDelaySeconds: delayS,
79
81
  error: error_1 === null || error_1 === void 0 ? void 0 : error_1.toString(),
80
82
  });
81
- return [4 /*yield*/, delay(this.retryDelaySeconds)];
83
+ return [4 /*yield*/, delay(delayS)];
82
84
  case 5:
83
85
  _a.sent();
84
86
  return [3 /*break*/, 6];
@@ -1 +1 @@
1
- {"version":3,"file":"retryRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,2EAA2E;AAC3E,6EAA6E;AAC7E;IAA2C,yCAAuB;IAMhE,+BACW,OAAe,EACf,iBAAyB;QAFpC,iBAwBC;QArBC,sCAA0F;aAA1F,UAA0F,EAA1F,qBAA0F,EAA1F,IAA0F;YAA1F,qDAA0F;;QAE1F,uGAAuG;QACvG,IAAM,WAAW,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,CAGxD,CAAC;mCACO,WAAW;QATX,aAAO,GAAP,OAAO,CAAQ;QACf,uBAAiB,GAAjB,iBAAiB,CAAQ;QAUlC,+BAA+B;QAC/B,IAAI,KAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAI,CAAC,OAAO,CAAC,EAAE;YACvD,MAAM,IAAI,KAAK,CAAC,yEAAkE,KAAI,CAAC,OAAO,CAAE,CAAC,CAAC;SACnG;QACD,IAAI,KAAI,CAAC,iBAAiB,GAAG,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,4DAAqD,KAAI,CAAC,iBAAiB,CAAE,CAAC,CAAC;SAChG;QAED,qCAAqC;QACrC,IAAM,qBAAqB,QAAO,2BAA2B,YAA3B,2BAA2B,0BAAI,4BAA4B,YAAC,CAAC;QAC/F,KAAI,CAAC,oBAAoB,GAAG,qBAAqB,CAAC,eAAe,EAAE,CAAC;QACpE,KAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC;;IAC7C,CAAC;IAEM,+CAAe,GAAtB;QAAA,iBAIC;QAHC,OAAO;YAAY,cAAiC;iBAAjC,UAAiC,EAAjC,qBAAiC,EAAjC,IAAiC;gBAAjC,yBAAiC;;YAClD,OAAO,KAAI,CAAC,QAAQ,CAAC,cAAM,OAAA,KAAI,CAAC,oBAAoB,OAAzB,KAAI,EAAoC,IAAI,GAA5C,CAA6C,EAAE,IAAI,CAAC,CAAC;QAClF,CAAC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACW,wCAAQ,GAAtB,UACE,aAAuC,EACvC,IAA8B;;;;;;wBAEtB,MAAM,GAAK,IAAI,CAAC,CAAC,CAAC,CAAC,OAAiD,OAA9D,CAA+D;wBACzE,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;;;6BAGpB,IAAI;;;;wBAEA,qBAAM,aAAa,EAAE,EAAA;4BAA5B,sBAAO,SAAqB,EAAC;;;wBAE7B,IAAI,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAK,CAAC,EAAE;4BAC7D,MAAM,OAAK,CAAC;yBACb;wBAED,2CAA2C;wBAC3C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;4BAChB,EAAE,EAAE,iBAAiB;4BACrB,OAAO,EAAE,0BAA0B;4BACnC,QAAQ,EAAE,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC;4BAC3C,MAAM,QAAA;4BACN,YAAY,EAAE,IAAI,CAAC,OAAO,GAAG,OAAO;4BACpC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;4BACzC,KAAK,EAAE,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,EAAE;yBACzB,CAAC,CAAC;wBAEH,qBAAM,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAA;;wBAAnC,SAAmC,CAAC;;;;;;;KAGzC;IAED;;;;;OAKG;IACK,mDAAmB,GAA3B,UAA4B,OAAe,EAAE,MAAe;QAC1D,sGAAsG;QACtG,6BAA6B;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IACH,4BAAC;AAAD,CAAC,AAvFD,CAA2C,uBAAuB,GAuFjE"}
1
+ {"version":3,"file":"retryRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"retryRpcFactory.d.ts","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAGtE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,qBAAa,qBAAsB,SAAQ,uBAAuB;IAO9D,QAAQ,CAAC,OAAO,EAAE,MAAM;IACxB,QAAQ,CAAC,iBAAiB,EAAE,MAAM;IANpC,SAAS,CAAC,oBAAoB,EAAE,YAAY,CAAC;IAE7C,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;gBAGd,OAAO,EAAE,MAAM,EACf,iBAAiB,EAAE,MAAM,EAClC,GAAG,4BAA4B,EAAE,qBAAqB,CAAC,OAAO,2BAA2B,CAAC;IAuBrF,eAAe,IAAI,YAAY;IAMtC;;;;;OAKG;YACW,QAAQ;IAgCtB;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;CAK5B"}
1
+ {"version":3,"file":"retryRpcFactory.d.ts","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAGtE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,qBAAa,qBAAsB,SAAQ,uBAAuB;IAO9D,QAAQ,CAAC,OAAO,EAAE,MAAM;IACxB,QAAQ,CAAC,iBAAiB,EAAE,MAAM;IANpC,SAAS,CAAC,oBAAoB,EAAE,YAAY,CAAC;IAE7C,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;gBAGd,OAAO,EAAE,MAAM,EACf,iBAAiB,EAAE,MAAM,EAClC,GAAG,4BAA4B,EAAE,qBAAqB,CAAC,OAAO,2BAA2B,CAAC;IAuBrF,eAAe,IAAI,YAAY;IAMtC;;;;;OAKG;YACW,QAAQ;IAoCtB;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;CAK5B"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@across-protocol/sdk",
3
3
  "author": "UMA Team",
4
- "version": "4.3.24",
4
+ "version": "4.3.25",
5
5
  "license": "AGPL-3.0",
6
6
  "homepage": "https://docs.across.to/reference/sdk",
7
7
  "files": [
@@ -56,29 +56,33 @@ export class RetrySolanaRpcFactory extends SolanaClusterRpcFactory {
56
56
  args: Parameters<RpcTransport>
57
57
  ): Promise<TResponse> {
58
58
  const { method } = args[0].payload as { method: string; params?: unknown[] };
59
- let retries = this.retries;
59
+ let retryAttempt = 0;
60
60
 
61
61
  // eslint-disable-next-line no-constant-condition
62
62
  while (true) {
63
63
  try {
64
64
  return await transportCall();
65
65
  } catch (error) {
66
- if (retries-- <= 0 || this.shouldFailImmediate(method, error)) {
66
+ if (retryAttempt++ >= this.retries || this.shouldFailImmediate(method, error)) {
67
67
  throw error;
68
68
  }
69
69
 
70
+ // Implement a slightly aggressive exponential backoff to account for fierce parallelism.
71
+ const exponentialBackoff = this.retryDelaySeconds * Math.pow(2, retryAttempt);
72
+ const delayS = this.retryDelaySeconds + exponentialBackoff * Math.random();
73
+
70
74
  // Log retry attempt if logger is available
71
75
  this.logger.debug({
72
76
  at: "RetryRpcFactory",
73
77
  message: "Retrying Solana RPC call",
74
78
  provider: getOriginFromURL(this.clusterUrl),
75
79
  method,
76
- retryAttempt: this.retries - retries,
77
- retryDelaySeconds: this.retryDelaySeconds,
80
+ retryAttempt: retryAttempt,
81
+ retryDelaySeconds: delayS,
78
82
  error: error?.toString(),
79
83
  });
80
84
 
81
- await delay(this.retryDelaySeconds);
85
+ await delay(delayS);
82
86
  }
83
87
  }
84
88
  }