@eclesia/indexer-engine 2.5.3 → 2.5.5
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.
- package/dist/indexer/index.d.ts +2 -1
- package/dist/indexer/index.d.ts.map +1 -1
- package/dist/indexer/index.js +18 -16
- package/package.json +1 -1
package/dist/indexer/index.d.ts
CHANGED
|
@@ -25,6 +25,7 @@ export declare class EcleciaIndexer extends EclesiaEmitter {
|
|
|
25
25
|
private initialized;
|
|
26
26
|
private retryCount;
|
|
27
27
|
client: CometClient;
|
|
28
|
+
blockClient: CometClient;
|
|
28
29
|
log: winston.Logger;
|
|
29
30
|
private debugTime;
|
|
30
31
|
private healthCheck;
|
|
@@ -38,7 +39,7 @@ export declare class EcleciaIndexer extends EclesiaEmitter {
|
|
|
38
39
|
asyncEmit: EmitFunc<keyof WithHeightAndUUID<EventMap>>;
|
|
39
40
|
private processBlock;
|
|
40
41
|
private fetcher;
|
|
41
|
-
callABCI(path: string, data: Uint8Array, height?: number): Promise<Uint8Array
|
|
42
|
+
callABCI(path: string, data: Uint8Array, height?: number, adHoc?: boolean): Promise<Uint8Array>;
|
|
42
43
|
private newBlockReceived;
|
|
43
44
|
private pollForBlock;
|
|
44
45
|
private readGenesis;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/indexer/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuC,WAAW,EAA4B,MAAM,wBAAwB,CAAC;AAkBpH,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAc,oBAAoB,EAAE,QAAQ,EAAqB,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAI5G,eAAO,MAAM,oBAAoB;;;;;cAKX,oBAAoB,CAAC,UAAU,CAAC;;;;;;;8BAO1B,OAAO;CAClC,CAAC;AAEF,qBAAa,cAAe,SAAQ,cAAc;IAChD,OAAO,CAAC,MAAM,CAAuB;IAErC,OAAO,CAAC,OAAO,CAAkB;IAEjC,OAAO,CAAC,UAAU,CAAa;IAE/B,OAAO,CAAC,YAAY,CAAU;IAE9B,OAAO,CAAC,eAAe,CAAU;IAEjC,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,UAAU,CAAK;IAEhB,MAAM,EAAG,WAAW,CAAC;IAErB,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC;IAE3B,OAAO,CAAC,SAAS,CAAiC;IAElD,OAAO,CAAC,WAAW,CAEjB;IAEF,OAAO,CAAC,YAAY,CAA6D;gBAErE,MAAM,EAAE,oBAAoB;IAyDxC,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,aAAa,CAInB;IAEF,OAAO,CAAC,SAAS;IAQJ,OAAO;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/indexer/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuC,WAAW,EAA4B,MAAM,wBAAwB,CAAC;AAkBpH,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAc,oBAAoB,EAAE,QAAQ,EAAqB,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAI5G,eAAO,MAAM,oBAAoB;;;;;cAKX,oBAAoB,CAAC,UAAU,CAAC;;;;;;;8BAO1B,OAAO;CAClC,CAAC;AAEF,qBAAa,cAAe,SAAQ,cAAc;IAChD,OAAO,CAAC,MAAM,CAAuB;IAErC,OAAO,CAAC,OAAO,CAAkB;IAEjC,OAAO,CAAC,UAAU,CAAa;IAE/B,OAAO,CAAC,YAAY,CAAU;IAE9B,OAAO,CAAC,eAAe,CAAU;IAEjC,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,UAAU,CAAK;IAEhB,MAAM,EAAG,WAAW,CAAC;IAErB,WAAW,EAAG,WAAW,CAAC;IAE1B,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC;IAE3B,OAAO,CAAC,SAAS,CAAiC;IAElD,OAAO,CAAC,WAAW,CAEjB;IAEF,OAAO,CAAC,YAAY,CAA6D;gBAErE,MAAM,EAAE,oBAAoB;IAyDxC,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,aAAa,CAInB;IAEF,OAAO,CAAC,SAAS;IAQJ,OAAO;IAcP,KAAK;IAuIX,SAAS,EAAE,QAAQ,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAkC3D;YAEY,YAAY;YAqIZ,OAAO;IA2CR,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,OAAc,GAAG,OAAO,CAAC,UAAU,CAAC;IAoBlH,OAAO,CAAC,gBAAgB;YAqCV,YAAY;IAY1B,OAAO,CAAC,WAAW;YAQL,cAAc;YAyBd,cAAc;YAuBd,YAAY;CAiD3B"}
|
package/dist/indexer/index.js
CHANGED
|
@@ -154,7 +154,9 @@ class EcleciaIndexer extends emitter_1.EclesiaEmitter {
|
|
|
154
154
|
async connect() {
|
|
155
155
|
try {
|
|
156
156
|
this.client = await (0, tendermint_rpc_2.connectComet)(this.config.rpcUrl);
|
|
157
|
-
this.log.info("Connected to RPC");
|
|
157
|
+
this.log.info("Connected to RPC for ad hoc queries");
|
|
158
|
+
this.blockClient = await (0, tendermint_rpc_2.connectComet)(this.config.rpcUrl);
|
|
159
|
+
this.log.info("Connected to RPC for block & validator info");
|
|
158
160
|
return true;
|
|
159
161
|
}
|
|
160
162
|
catch (error) {
|
|
@@ -421,10 +423,10 @@ class EcleciaIndexer extends emitter_1.EclesiaEmitter {
|
|
|
421
423
|
try {
|
|
422
424
|
if (this.isMinimal(this.blockQueue)) {
|
|
423
425
|
const toIndex = Promise.all([
|
|
424
|
-
this.
|
|
425
|
-
this.
|
|
426
|
-
]).catch((
|
|
427
|
-
this.log.error("Error fetching block: " + i);
|
|
426
|
+
this.blockClient.block(i),
|
|
427
|
+
this.blockClient.blockResults(i)
|
|
428
|
+
]).catch((e) => {
|
|
429
|
+
this.log.error("Error fetching block: " + i + " : " + e);
|
|
428
430
|
return Promise.resolve([]);
|
|
429
431
|
});
|
|
430
432
|
this.blockQueue.enqueue(toIndex);
|
|
@@ -433,11 +435,11 @@ class EcleciaIndexer extends emitter_1.EclesiaEmitter {
|
|
|
433
435
|
const q = query_1.QueryValidatorsRequest.fromPartial({ pagination: { limit: 1000n } });
|
|
434
436
|
const vals = query_1.QueryValidatorsRequest.encode(q).finish();
|
|
435
437
|
const toIndex = Promise.all([
|
|
436
|
-
this.
|
|
437
|
-
this.
|
|
438
|
-
this.callABCI("/cosmos.staking.v1beta1.Query/Validators", vals, i)
|
|
439
|
-
]).catch((
|
|
440
|
-
this.log.error("Error fetching block: " + i);
|
|
438
|
+
this.blockClient.block(i),
|
|
439
|
+
this.blockClient.blockResults(i),
|
|
440
|
+
this.callABCI("/cosmos.staking.v1beta1.Query/Validators", vals, i, false)
|
|
441
|
+
]).catch((e) => {
|
|
442
|
+
this.log.error("Error fetching block: " + i + " : " + e);
|
|
441
443
|
return Promise.resolve([]);
|
|
442
444
|
});
|
|
443
445
|
this.blockQueue.enqueue(toIndex);
|
|
@@ -455,12 +457,12 @@ class EcleciaIndexer extends emitter_1.EclesiaEmitter {
|
|
|
455
457
|
this.log.info("Synced to latest height");
|
|
456
458
|
}
|
|
457
459
|
}
|
|
458
|
-
async callABCI(path, data, height) {
|
|
460
|
+
async callABCI(path, data, height, adHoc = true) {
|
|
459
461
|
const timeout = new Promise((resolve) => {
|
|
460
462
|
setTimeout(resolve, 10000);
|
|
461
463
|
});
|
|
462
464
|
const abciq = await Promise.race([
|
|
463
|
-
this.client.abciQuery({
|
|
465
|
+
(adHoc ? this.client : this.blockClient).abciQuery({
|
|
464
466
|
path,
|
|
465
467
|
data,
|
|
466
468
|
height: height
|
|
@@ -484,8 +486,8 @@ class EcleciaIndexer extends emitter_1.EclesiaEmitter {
|
|
|
484
486
|
this.blockQueue.enqueue(Promise.all([
|
|
485
487
|
this.client.block(height),
|
|
486
488
|
this.client.blockResults(height)
|
|
487
|
-
]).catch((
|
|
488
|
-
this.log.error("Error fetching block: " + height);
|
|
489
|
+
]).catch((e) => {
|
|
490
|
+
this.log.error("Error fetching block: " + height + " : " + e);
|
|
489
491
|
return Promise.resolve([]);
|
|
490
492
|
}));
|
|
491
493
|
}
|
|
@@ -496,8 +498,8 @@ class EcleciaIndexer extends emitter_1.EclesiaEmitter {
|
|
|
496
498
|
this.client.block(height),
|
|
497
499
|
this.client.blockResults(height),
|
|
498
500
|
this.callABCI("/cosmos.staking.v1beta1.Query/Validators", vals, height)
|
|
499
|
-
]).catch((
|
|
500
|
-
this.log.error("Error fetching block: " + height);
|
|
501
|
+
]).catch((e) => {
|
|
502
|
+
this.log.error("Error fetching block: " + height + " : " + e);
|
|
501
503
|
return Promise.resolve([]);
|
|
502
504
|
}));
|
|
503
505
|
}
|