@cardano-sdk/cardano-services 0.12.0-nightly.1 → 0.12.0
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/README.md +58 -18
- package/dist/cjs/Asset/CardanoTokenRegistry.d.ts.map +1 -1
- package/dist/cjs/Asset/CardanoTokenRegistry.js +9 -6
- package/dist/cjs/Asset/CardanoTokenRegistry.js.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/DbSyncAssetProvider.d.ts.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/DbSyncAssetProvider.js +15 -13
- package/dist/cjs/Asset/DbSyncAssetProvider/DbSyncAssetProvider.js.map +1 -1
- package/dist/cjs/Asset/openApi.json +4 -0
- package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.d.ts +2 -3
- package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.d.ts.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.js +5 -18
- package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.js.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.d.ts.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.js +3 -4
- package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.js.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.d.ts +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.d.ts.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.js +2 -2
- package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.js.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.d.ts +3 -9
- package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.d.ts.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.js +5 -14
- package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.js.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/types.d.ts +0 -3
- package/dist/cjs/ChainHistory/DbSyncChainHistory/types.d.ts.map +1 -1
- package/dist/cjs/Http/util.js +1 -1
- package/dist/cjs/Http/util.js.map +1 -1
- package/dist/cjs/PgBoss/index.d.ts +7 -0
- package/dist/cjs/PgBoss/index.d.ts.map +1 -0
- package/dist/cjs/PgBoss/index.js +29 -0
- package/dist/cjs/PgBoss/index.js.map +1 -0
- package/dist/cjs/PgBoss/stakePoolMetadataHandler.d.ts +16 -0
- package/dist/cjs/PgBoss/stakePoolMetadataHandler.d.ts.map +1 -0
- package/dist/cjs/PgBoss/stakePoolMetadataHandler.js +60 -0
- package/dist/cjs/PgBoss/stakePoolMetadataHandler.js.map +1 -0
- package/dist/cjs/PgBoss/stakePoolMetricsHandler.d.ts +18 -0
- package/dist/cjs/PgBoss/stakePoolMetricsHandler.d.ts.map +1 -0
- package/dist/cjs/PgBoss/stakePoolMetricsHandler.js +66 -0
- package/dist/cjs/PgBoss/stakePoolMetricsHandler.js.map +1 -0
- package/dist/cjs/PgBoss/types.d.ts +14 -0
- package/dist/cjs/PgBoss/types.d.ts.map +1 -0
- package/dist/cjs/PgBoss/types.js +6 -0
- package/dist/cjs/PgBoss/types.js.map +1 -0
- package/dist/cjs/PgBoss/util.d.ts +5 -0
- package/dist/cjs/PgBoss/util.d.ts.map +1 -0
- package/dist/cjs/PgBoss/util.js +9 -0
- package/dist/cjs/PgBoss/util.js.map +1 -0
- package/dist/cjs/Program/options/postgres.d.ts +7 -2
- package/dist/cjs/Program/options/postgres.d.ts.map +1 -1
- package/dist/cjs/Program/options/postgres.js +49 -41
- package/dist/cjs/Program/options/postgres.js.map +1 -1
- package/dist/cjs/Program/programs/blockfrostWorker.d.ts +1 -1
- package/dist/cjs/Program/programs/blockfrostWorker.d.ts.map +1 -1
- package/dist/cjs/Program/programs/pgBossWorker.d.ts +26 -0
- package/dist/cjs/Program/programs/pgBossWorker.d.ts.map +1 -0
- package/dist/cjs/Program/programs/pgBossWorker.js +44 -0
- package/dist/cjs/Program/programs/pgBossWorker.js.map +1 -0
- package/dist/cjs/Program/programs/projector.d.ts +4 -2
- package/dist/cjs/Program/programs/projector.d.ts.map +1 -1
- package/dist/cjs/Program/programs/projector.js +6 -4
- package/dist/cjs/Program/programs/projector.js.map +1 -1
- package/dist/cjs/Program/programs/providerServer.d.ts +2 -2
- package/dist/cjs/Program/programs/providerServer.d.ts.map +1 -1
- package/dist/cjs/Program/programs/providerServer.js +47 -38
- package/dist/cjs/Program/programs/providerServer.js.map +1 -1
- package/dist/cjs/Program/programs/types.d.ts +7 -2
- package/dist/cjs/Program/programs/types.d.ts.map +1 -1
- package/dist/cjs/Program/programs/types.js +5 -1
- package/dist/cjs/Program/programs/types.js.map +1 -1
- package/dist/cjs/Program/services/ogmios.d.ts +1 -1
- package/dist/cjs/Program/services/ogmios.d.ts.map +1 -1
- package/dist/cjs/Program/services/ogmios.js +4 -4
- package/dist/cjs/Program/services/ogmios.js.map +1 -1
- package/dist/cjs/Program/services/pgboss.d.ts +28 -0
- package/dist/cjs/Program/services/pgboss.d.ts.map +1 -0
- package/dist/cjs/Program/services/pgboss.js +128 -0
- package/dist/cjs/Program/services/pgboss.js.map +1 -0
- package/dist/cjs/Program/services/postgres.d.ts +4 -4
- package/dist/cjs/Program/services/postgres.d.ts.map +1 -1
- package/dist/cjs/Program/services/postgres.js +42 -28
- package/dist/cjs/Program/services/postgres.js.map +1 -1
- package/dist/cjs/Program/utils.d.ts +13 -3
- package/dist/cjs/Program/utils.d.ts.map +1 -1
- package/dist/cjs/Program/utils.js +28 -1
- package/dist/cjs/Program/utils.js.map +1 -1
- package/dist/cjs/Projection/ProjectionHttpService.d.ts +1 -2
- package/dist/cjs/Projection/ProjectionHttpService.d.ts.map +1 -1
- package/dist/cjs/Projection/ProjectionHttpService.js.map +1 -1
- package/dist/cjs/Projection/createTypeormProjection.d.ts +14 -1
- package/dist/cjs/Projection/createTypeormProjection.d.ts.map +1 -1
- package/dist/cjs/Projection/createTypeormProjection.js +7 -5
- package/dist/cjs/Projection/createTypeormProjection.js.map +1 -1
- package/dist/cjs/Projection/migrations/1685011799580-stake-pool-metrics-table.d.ts +8 -0
- package/dist/cjs/Projection/migrations/1685011799580-stake-pool-metrics-table.d.ts.map +1 -0
- package/dist/cjs/Projection/migrations/1685011799580-stake-pool-metrics-table.js +17 -0
- package/dist/cjs/Projection/migrations/1685011799580-stake-pool-metrics-table.js.map +1 -0
- package/dist/cjs/Projection/migrations/index.d.ts.map +1 -1
- package/dist/cjs/Projection/migrations/index.js +3 -1
- package/dist/cjs/Projection/migrations/index.js.map +1 -1
- package/dist/cjs/Projection/prepareTypeormProjection.d.ts +11 -7
- package/dist/cjs/Projection/prepareTypeormProjection.d.ts.map +1 -1
- package/dist/cjs/Projection/prepareTypeormProjection.js +15 -7
- package/dist/cjs/Projection/prepareTypeormProjection.js.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.d.ts.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.js +14 -17
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.js.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.d.ts +0 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.d.ts.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.js +1 -8
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.js.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.d.ts +2 -4
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.d.ts.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.js +16 -36
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.js.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.d.ts +0 -2
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.d.ts.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.js +1 -17
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.js.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/types.d.ts +3 -16
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/types.d.ts.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.d.ts +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.js +2 -2
- package/dist/cjs/StakePool/HttpStakePoolMetadata/HttpStakePoolMetadataService.d.ts.map +1 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/HttpStakePoolMetadataService.js +31 -28
- package/dist/cjs/StakePool/HttpStakePoolMetadata/HttpStakePoolMetadataService.js.map +1 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/errors.d.ts +2 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/errors.d.ts.map +1 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/errors.js +1 -0
- package/dist/cjs/StakePool/HttpStakePoolMetadata/errors.js.map +1 -1
- package/dist/cjs/StakePool/TypeormStakePoolProvider/TypeormStakePoolProvider.d.ts +12 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/TypeormStakePoolProvider.d.ts.map +1 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/TypeormStakePoolProvider.js +69 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/TypeormStakePoolProvider.js.map +1 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/index.d.ts +2 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/index.d.ts.map +1 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/index.js +18 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/index.js.map +1 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/mappers.d.ts +48 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/mappers.d.ts.map +1 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/mappers.js +89 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/mappers.js.map +1 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/util.d.ts +22 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/util.d.ts.map +1 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/util.js +84 -0
- package/dist/cjs/StakePool/TypeormStakePoolProvider/util.js.map +1 -0
- package/dist/cjs/StakePool/index.d.ts +1 -0
- package/dist/cjs/StakePool/index.d.ts.map +1 -1
- package/dist/cjs/StakePool/index.js +1 -0
- package/dist/cjs/StakePool/index.js.map +1 -1
- package/dist/cjs/StakePool/openApi.json +1 -53
- package/dist/cjs/StakePool/types.d.ts +2 -0
- package/dist/cjs/StakePool/types.d.ts.map +1 -1
- package/dist/cjs/StakePool/types.js.map +1 -1
- package/dist/cjs/cli.js +51 -28
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/migrationDataSource.d.ts.map +1 -1
- package/dist/cjs/migrationDataSource.js +16 -11
- package/dist/cjs/migrationDataSource.js.map +1 -1
- package/dist/cjs/original-package.json +14 -26
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/cjs/util/TypeormProvider/TypeormProvider.d.ts +24 -0
- package/dist/cjs/util/TypeormProvider/TypeormProvider.d.ts.map +1 -0
- package/dist/cjs/util/TypeormProvider/TypeormProvider.js +71 -0
- package/dist/cjs/util/TypeormProvider/TypeormProvider.js.map +1 -0
- package/dist/cjs/util/TypeormProvider/index.d.ts +3 -0
- package/dist/cjs/util/TypeormProvider/index.d.ts.map +1 -0
- package/dist/cjs/util/TypeormProvider/index.js +19 -0
- package/dist/cjs/util/TypeormProvider/index.js.map +1 -0
- package/dist/cjs/util/TypeormProvider/util.d.ts +5 -0
- package/dist/cjs/util/TypeormProvider/util.d.ts.map +1 -0
- package/dist/cjs/util/TypeormProvider/util.js +12 -0
- package/dist/cjs/util/TypeormProvider/util.js.map +1 -0
- package/package.json +14 -26
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pgBossWorker.js","sourceRoot":"","sources":["../../../../src/Program/programs/pgBossWorker.ts"],"names":[],"mappings":";;;AAAA,wCAAqG;AACrG,sDAAmD;AAEnD,sCAAiD;AACjD,+CAAuG;AACvG,wEAA4E;AAE5E,oCAA6C;AAC7C,mCAAsC;AACtC,mDAAoE;AACpE,0CAA4C;AAE/B,QAAA,qBAAqB,GAAG,EAAE,CAAC;AAC3B,QAAA,8BAA8B,GAAG,IAAI,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAE/E,IAAY,8BAIX;AAJD,WAAY,8BAA8B;IACxC,uEAAqC,CAAA;IACrC,wEAAsC,CAAA;IACtC,kFAAgD,CAAA;AAClD,CAAC,EAJW,8BAA8B,GAA9B,sCAA8B,KAA9B,sCAA8B,QAIzC;AAYD,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAMtC,MAAa,sBAAuB,SAAQ,uBAAU;IACpD,YAAY,GAAuB,EAAE,IAA+B;QAClE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;QACvB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,aAAa,GAAG,IAAI,0BAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAEvD,KAAK,CACH,EAAE,MAAM,EAAE,IAAA,gBAAS,EAAC,MAAM,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EACjD,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE,CAChE,CAAC;IACJ,CAAC;CACF;AAXD,wDAWC;AAEM,MAAM,gBAAgB,GAAG,KAAK,EAAE,IAAsB,EAAE,OAAqC,EAAE,EAAE,EAAE;IACxG,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,IAAA,qBAAY,EAAC,EAAE,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IACnG,MAAM,WAAW,GACf,IAAI,EAAE,WAAW;QACjB,IAAA,yBAAiB,EACf,EAAE,MAAM,EAAE,IAAI,CAAC,6BAA6B,EAAE,YAAY,EAAE,IAAI,CAAC,uBAAuB,EAAE,EAC1F,MAAM,CACP,CAAC;IACJ,MAAM,iBAAiB,GAAG,IAAA,8BAAmB,EAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IAC/E,MAAM,EAAE,GAAG,MAAM,IAAA,kBAAO,EAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAEpD,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,6BAAoB,CAAC,YAAY,EAAE,oCAA0B,CAAC,gBAAgB,CAAC,CAAC;IAEnG,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,8CAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB;QAC/E,MAAM,IAAI,6BAAoB,CAAC,8CAAyB,EAAE,8BAA8B,CAAC,oBAAoB,CAAC,CAAC;IAEjH,OAAO,IAAI,sBAAsB,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AAC7E,CAAC,CAAC;AAjBW,QAAA,gBAAgB,oBAiB3B"}
|
|
@@ -7,10 +7,12 @@ import { ProjectionName } from '../../Projection';
|
|
|
7
7
|
import { SrvRecord } from 'dns';
|
|
8
8
|
import { URL } from 'url';
|
|
9
9
|
export declare const PROJECTOR_API_URL_DEFAULT: URL;
|
|
10
|
-
export declare type ProjectorArgs = CommonProgramOptions & PosgresProgramOptions & OgmiosProgramOptions & {
|
|
11
|
-
projectionNames: ProjectionName[];
|
|
10
|
+
export declare type ProjectorArgs = CommonProgramOptions & PosgresProgramOptions<'StakePool'> & OgmiosProgramOptions & {
|
|
12
11
|
dropSchema: boolean;
|
|
13
12
|
dryRun: boolean;
|
|
13
|
+
poolsMetricsInterval: number;
|
|
14
|
+
projectionNames: ProjectionName[];
|
|
15
|
+
synchronize: boolean;
|
|
14
16
|
};
|
|
15
17
|
export interface LoadProjectorDependencies {
|
|
16
18
|
dnsResolver?: (serviceName: string) => Promise<SrvRecord>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projector.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/projector.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE/F,OAAO,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAyB,cAAc,
|
|
1
|
+
{"version":3,"file":"projector.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/projector.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE/F,OAAO,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAyB,cAAc,EAA2C,MAAM,kBAAkB,CAAC;AAClH,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAEhC,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAK1B,eAAO,MAAM,yBAAyB,KAAmC,CAAC;AAE1E,oBAAY,aAAa,GAAG,oBAAoB,GAC9C,qBAAqB,CAAC,WAAW,CAAC,GAClC,oBAAoB,GAAG;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AACJ,MAAM,WAAW,yBAAyB;IACxC,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAiCD,eAAO,MAAM,aAAa,SAAgB,aAAa,SAAQ,yBAAyB,KAAQ,QAAQ,UAAU,CAkCjH,CAAC"}
|
|
@@ -13,25 +13,27 @@ const services_1 = require("../services");
|
|
|
13
13
|
exports.PROJECTOR_API_URL_DEFAULT = new url_1.URL('http://localhost:3002');
|
|
14
14
|
const createProjectionHttpService = async (options) => {
|
|
15
15
|
const { args, dnsResolver, logger } = options;
|
|
16
|
+
Projection_1.storeOperators.storePoolMetricsUpdateJob = (0, projection_typeorm_1.createStorePoolMetricsUpdateJob)(args.poolsMetricsInterval)();
|
|
16
17
|
const cardanoNode = (0, services_1.getOgmiosObservableCardanoNode)(dnsResolver, logger, {
|
|
17
18
|
ogmiosSrvServiceName: args.ogmiosSrvServiceName,
|
|
18
19
|
ogmiosUrl: args.ogmiosUrl
|
|
19
20
|
});
|
|
20
|
-
const connectionConfig$ = (0, services_1.getConnectionConfig)(dnsResolver, args);
|
|
21
|
+
const connectionConfig$ = (0, services_1.getConnectionConfig)(dnsResolver, 'projector', args);
|
|
21
22
|
const buffer = new projection_typeorm_1.TypeormStabilityWindowBuffer({ logger });
|
|
23
|
+
const { dropSchema, dryRun, projectionNames, synchronize } = args;
|
|
22
24
|
const projection$ = (0, Projection_1.createTypeormProjection)({
|
|
23
25
|
buffer,
|
|
24
26
|
connectionConfig$,
|
|
25
|
-
devOptions:
|
|
27
|
+
devOptions: { dropSchema, synchronize },
|
|
26
28
|
logger,
|
|
27
29
|
projectionSource$: projection_1.Bootstrap.fromCardanoNode({
|
|
28
30
|
buffer,
|
|
29
31
|
cardanoNode,
|
|
30
32
|
logger
|
|
31
33
|
}),
|
|
32
|
-
projections:
|
|
34
|
+
projections: projectionNames
|
|
33
35
|
});
|
|
34
|
-
return new Projection_1.ProjectionHttpService({ dryRun
|
|
36
|
+
return new Projection_1.ProjectionHttpService({ dryRun, projection$, projectionNames }, { logger });
|
|
35
37
|
};
|
|
36
38
|
const loadProjector = async (args, deps = {}) => {
|
|
37
39
|
const supportedProjections = Object.values(Projection_1.ProjectionName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projector.js","sourceRoot":"","sources":["../../../../src/Program/programs/projector.ts"],"names":[],"mappings":";;;AAAA,wDAAoD;AAEpD,oCAA0D;AAC1D,qCAA0D;AAE1D,
|
|
1
|
+
{"version":3,"file":"projector.js","sourceRoot":"","sources":["../../../../src/Program/programs/projector.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
import { HttpServer } from '../../Http';
|
|
4
4
|
import { Logger } from 'ts-log';
|
|
5
|
-
import { ProviderServerArgs
|
|
5
|
+
import { ProviderServerArgs } from './types';
|
|
6
6
|
import { SrvRecord } from 'dns';
|
|
7
7
|
import { URL } from 'url';
|
|
8
8
|
export declare const ALLOWED_ORIGINS_DEFAULT = false;
|
|
@@ -12,8 +12,8 @@ export declare const PROVIDER_SERVER_API_URL_DEFAULT: URL;
|
|
|
12
12
|
export declare const PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = 25;
|
|
13
13
|
export declare const PAGINATION_PAGE_SIZE_LIMIT_ASSETS = 300;
|
|
14
14
|
export declare const USE_BLOCKFROST_DEFAULT = false;
|
|
15
|
+
export declare const USE_TYPEORM_STAKE_POOL_PROVIDER_DEFAULT = false;
|
|
15
16
|
export declare const USE_QUEUE_DEFAULT = false;
|
|
16
|
-
export declare const cardanoNodeDependantServices: Set<ServiceNames>;
|
|
17
17
|
export interface LoadProviderServerDependencies {
|
|
18
18
|
dnsResolver?: (serviceName: string) => Promise<SrvRecord>;
|
|
19
19
|
logger?: Logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerServer.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/providerServer.ts"],"names":[],"mappings":";;AAeA,OAAO,EAAE,UAAU,EAA4C,MAAM,YAAY,CAAC;AAElF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"providerServer.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/providerServer.ts"],"names":[],"mappings":";;AAeA,OAAO,EAAE,UAAU,EAA4C,MAAM,YAAY,CAAC;AAElF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,kBAAkB,EAAkD,MAAM,SAAS,CAAC;AAC7F,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAGhC,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAQ1B,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAC7C,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,qCAAqC,QAAQ,CAAC;AAC3D,eAAO,MAAM,+BAA+B,KAAmC,CAAC;AAChF,eAAO,MAAM,kCAAkC,KAAK,CAAC;AACrD,eAAO,MAAM,iCAAiC,MAAM,CAAC;AACrD,eAAO,MAAM,sBAAsB,QAAQ,CAAC;AAC5C,eAAO,MAAM,uCAAuC,QAAQ,CAAC;AAC7D,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC,MAAM,WAAW,8BAA8B;IAC7C,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA0LD,eAAO,MAAM,kBAAkB,SACvB,kBAAkB,SAClB,8BAA8B,KACnC,QAAQ,UAAU,CAuCpB,CAAC"}
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.loadProviderServer = exports.
|
|
6
|
+
exports.loadProviderServer = exports.USE_QUEUE_DEFAULT = exports.USE_TYPEORM_STAKE_POOL_PROVIDER_DEFAULT = exports.USE_BLOCKFROST_DEFAULT = exports.PAGINATION_PAGE_SIZE_LIMIT_ASSETS = exports.PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = exports.PROVIDER_SERVER_API_URL_DEFAULT = exports.DISABLE_STAKE_POOL_METRIC_APY_DEFAULT = exports.DISABLE_DB_CACHE_DEFAULT = exports.ALLOWED_ORIGINS_DEFAULT = void 0;
|
|
7
7
|
const AssetHttpService_1 = require("../../Asset/AssetHttpService");
|
|
8
8
|
const CardanoTokenRegistry_1 = require("../../Asset/CardanoTokenRegistry");
|
|
9
9
|
const ChainHistory_1 = require("../../ChainHistory");
|
|
@@ -21,10 +21,12 @@ const errors_1 = require("../errors");
|
|
|
21
21
|
const postgres_1 = require("../options/postgres");
|
|
22
22
|
const types_1 = require("./types");
|
|
23
23
|
const TxSubmit_1 = require("../../TxSubmit");
|
|
24
|
+
const TypeormStakePoolProvider_1 = require("../../StakePool/TypeormStakePoolProvider/TypeormStakePoolProvider");
|
|
24
25
|
const url_1 = require("url");
|
|
25
26
|
const Metadata_1 = require("../../Metadata");
|
|
26
27
|
const bunyan_1 = require("bunyan");
|
|
27
28
|
const services_1 = require("../services");
|
|
29
|
+
const prepareTypeormProjection_1 = require("../../Projection/prepareTypeormProjection");
|
|
28
30
|
const util_2 = require("@cardano-sdk/util");
|
|
29
31
|
const memoize_1 = __importDefault(require("lodash/memoize"));
|
|
30
32
|
exports.ALLOWED_ORIGINS_DEFAULT = false;
|
|
@@ -34,15 +36,9 @@ exports.PROVIDER_SERVER_API_URL_DEFAULT = new url_1.URL('http://localhost:3000')
|
|
|
34
36
|
exports.PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = 25;
|
|
35
37
|
exports.PAGINATION_PAGE_SIZE_LIMIT_ASSETS = 300;
|
|
36
38
|
exports.USE_BLOCKFROST_DEFAULT = false;
|
|
39
|
+
exports.USE_TYPEORM_STAKE_POOL_PROVIDER_DEFAULT = false;
|
|
37
40
|
exports.USE_QUEUE_DEFAULT = false;
|
|
38
|
-
|
|
39
|
-
types_1.ServiceNames.NetworkInfo,
|
|
40
|
-
types_1.ServiceNames.StakePool,
|
|
41
|
-
types_1.ServiceNames.Utxo,
|
|
42
|
-
types_1.ServiceNames.Rewards,
|
|
43
|
-
types_1.ServiceNames.Asset,
|
|
44
|
-
types_1.ServiceNames.ChainHistory
|
|
45
|
-
]);
|
|
41
|
+
const serverName = 'provider-server';
|
|
46
42
|
const serviceMapFactory = (options) => {
|
|
47
43
|
const { args, pools, dnsResolver, genesisData, logger, node } = options;
|
|
48
44
|
const withDbSyncProvider = (factory, serviceName) => () => {
|
|
@@ -59,6 +55,39 @@ const serviceMapFactory = (options) => {
|
|
|
59
55
|
const getDbCache = () => getCache(args.dbCacheTtl);
|
|
60
56
|
const healthCheckCache = getCache(args.healthCheckCacheTtl);
|
|
61
57
|
const getEpochMonitor = (0, memoize_1.default)((dbPool) => new util_1.DbSyncEpochPollService(dbPool, args.epochPollInterval));
|
|
58
|
+
const getDbSyncStakePoolProvider = withDbSyncProvider((dbPools, cardanoNode) => {
|
|
59
|
+
if (!genesisData) {
|
|
60
|
+
throw new errors_1.MissingProgramOption(types_1.ServiceNames.StakePool, types_1.ProviderServerOptionDescriptions.CardanoNodeConfigPath);
|
|
61
|
+
}
|
|
62
|
+
return new StakePool_1.DbSyncStakePoolProvider({
|
|
63
|
+
paginationPageSizeLimit: args.paginationPageSizeLimit,
|
|
64
|
+
responseConfig: { search: { metrics: { apy: !args.disableStakePoolMetricApy } } },
|
|
65
|
+
useBlockfrost: args.useBlockfrost
|
|
66
|
+
}, {
|
|
67
|
+
cache: {
|
|
68
|
+
db: getDbCache(),
|
|
69
|
+
healthCheck: healthCheckCache
|
|
70
|
+
},
|
|
71
|
+
cardanoNode,
|
|
72
|
+
dbPools,
|
|
73
|
+
epochMonitor: getEpochMonitor(dbPools.main),
|
|
74
|
+
genesisData,
|
|
75
|
+
logger,
|
|
76
|
+
metadataService: (0, StakePool_1.createHttpStakePoolMetadataService)(logger)
|
|
77
|
+
});
|
|
78
|
+
}, types_1.ServiceNames.StakePool);
|
|
79
|
+
const getTypeormStakePoolProvider = () => {
|
|
80
|
+
const entities = (0, prepareTypeormProjection_1.getEntities)([
|
|
81
|
+
'block',
|
|
82
|
+
'currentPoolMetrics',
|
|
83
|
+
'poolMetadata',
|
|
84
|
+
'poolRegistration',
|
|
85
|
+
'poolRetirement',
|
|
86
|
+
'stakePool'
|
|
87
|
+
]);
|
|
88
|
+
const connectionConfig$ = (0, services_1.getConnectionConfig)(dnsResolver, serverName, args);
|
|
89
|
+
return new TypeormStakePoolProvider_1.TypeormStakePoolProvider({ paginationPageSizeLimit: args.paginationPageSizeLimit }, { connectionConfig$, entities, logger });
|
|
90
|
+
};
|
|
62
91
|
return {
|
|
63
92
|
[types_1.ServiceNames.Asset]: withDbSyncProvider(async (dbPools, cardanoNode) => {
|
|
64
93
|
const ntfMetadataService = new Asset_1.DbSyncNftMetadataService({
|
|
@@ -83,27 +112,12 @@ const serviceMapFactory = (options) => {
|
|
|
83
112
|
});
|
|
84
113
|
return new AssetHttpService_1.AssetHttpService({ assetProvider, logger });
|
|
85
114
|
}, types_1.ServiceNames.Asset),
|
|
86
|
-
[types_1.ServiceNames.StakePool]:
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
paginationPageSizeLimit: args.paginationPageSizeLimit,
|
|
91
|
-
responseConfig: { search: { metrics: { apy: !args.disableStakePoolMetricApy } } },
|
|
92
|
-
useBlockfrost: args.useBlockfrost
|
|
93
|
-
}, {
|
|
94
|
-
cache: {
|
|
95
|
-
db: getDbCache(),
|
|
96
|
-
healthCheck: healthCheckCache
|
|
97
|
-
},
|
|
98
|
-
cardanoNode,
|
|
99
|
-
dbPools,
|
|
100
|
-
epochMonitor: getEpochMonitor(dbPools.main),
|
|
101
|
-
genesisData,
|
|
102
|
-
logger,
|
|
103
|
-
metadataService: (0, StakePool_1.createHttpStakePoolMetadataService)(logger)
|
|
104
|
-
});
|
|
115
|
+
[types_1.ServiceNames.StakePool]: async () => {
|
|
116
|
+
const stakePoolProvider = args.useTypeormStakePoolProvider
|
|
117
|
+
? getTypeormStakePoolProvider()
|
|
118
|
+
: getDbSyncStakePoolProvider();
|
|
105
119
|
return new StakePool_1.StakePoolHttpService({ logger, stakePoolProvider });
|
|
106
|
-
},
|
|
120
|
+
},
|
|
107
121
|
[types_1.ServiceNames.Utxo]: withDbSyncProvider(async (dbPools, cardanoNode) => new Utxo_1.UtxoHttpService({
|
|
108
122
|
logger,
|
|
109
123
|
utxoProvider: new Utxo_1.DbSyncUtxoProvider({
|
|
@@ -168,21 +182,16 @@ const loadProviderServer = async (args, deps = {}) => {
|
|
|
168
182
|
const logger = deps?.logger ||
|
|
169
183
|
(0, bunyan_1.createLogger)({
|
|
170
184
|
level: args.loggerMinSeverity,
|
|
171
|
-
name:
|
|
185
|
+
name: serverName
|
|
172
186
|
});
|
|
173
187
|
const dnsResolver = deps?.dnsResolver ||
|
|
174
188
|
(0, utils_1.createDnsResolver)({
|
|
175
189
|
factor: args.serviceDiscoveryBackoffFactor,
|
|
176
190
|
maxRetryTime: args.serviceDiscoveryTimeout
|
|
177
191
|
}, logger);
|
|
178
|
-
const
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
};
|
|
182
|
-
const cardanoNode = (0, utils_1.serviceSetHas)(args.serviceNames, exports.cardanoNodeDependantServices)
|
|
183
|
-
? await (0, services_1.getOgmiosCardanoNode)(dnsResolver, logger, args)
|
|
184
|
-
: undefined;
|
|
185
|
-
const genesisData = args.cardanoNodeConfigPath ? await (0, util_1.loadGenesisData)(args.cardanoNodeConfigPath) : undefined;
|
|
192
|
+
const cardanoNode = await (0, utils_1.getCardanoNode)(dnsResolver, logger, args);
|
|
193
|
+
const genesisData = await (0, utils_1.getGenesisData)(args);
|
|
194
|
+
const pools = await (0, utils_1.getDbPools)(dnsResolver, logger, args);
|
|
186
195
|
const serviceMap = serviceMapFactory({ args, dnsResolver, genesisData, logger, node: cardanoNode, pools });
|
|
187
196
|
for (const serviceName of args.serviceNames) {
|
|
188
197
|
if (serviceMap[serviceName]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerServer.js","sourceRoot":"","sources":["../../../../src/Program/programs/providerServer.ts"],"names":[],"mappings":";;;;;;AAEA,mEAAgE;AAEhE,2EAAwE;AACxE,qDAAyF;AACzF,
|
|
1
|
+
{"version":3,"file":"providerServer.js","sourceRoot":"","sources":["../../../../src/Program/programs/providerServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,9 +17,12 @@ export declare enum ServiceNames {
|
|
|
17
17
|
ChainHistory = "chain-history",
|
|
18
18
|
Rewards = "rewards"
|
|
19
19
|
}
|
|
20
|
+
export declare const POOLS_METRICS_INTERVAL_DEFAULT = 1000;
|
|
20
21
|
export declare enum ProjectorOptionDescriptions {
|
|
21
22
|
DropSchema = "Drop and recreate database schema to project from origin",
|
|
22
|
-
DryRun = "Initialize the projection, but do not start it"
|
|
23
|
+
DryRun = "Initialize the projection, but do not start it",
|
|
24
|
+
PoolsMetricsInterval = "Interval between two stake pools metrics jobs in number of blocks",
|
|
25
|
+
Synchronize = "Synchronize the schema from the models"
|
|
23
26
|
}
|
|
24
27
|
export declare enum ProviderServerOptionDescriptions {
|
|
25
28
|
CardanoNodeConfigPath = "Cardano node config path",
|
|
@@ -30,11 +33,12 @@ export declare enum ProviderServerOptionDescriptions {
|
|
|
30
33
|
EpochPollInterval = "Epoch poll interval",
|
|
31
34
|
TokenMetadataCacheTtl = "Token Metadata API cache TTL in minutes",
|
|
32
35
|
TokenMetadataServerUrl = "Token Metadata API server URL",
|
|
36
|
+
UseTypeOrmStakePoolProvider = "Enables the TypeORM Stake Pool Provider",
|
|
33
37
|
UseBlockfrost = "Enables Blockfrost cached data DB",
|
|
34
38
|
UseQueue = "Enables RabbitMQ",
|
|
35
39
|
PaginationPageSizeLimit = "Pagination page size limit shared across all providers"
|
|
36
40
|
}
|
|
37
|
-
export declare type ProviderServerArgs = CommonProgramOptions & PosgresProgramOptions & OgmiosProgramOptions & RabbitMqProgramOptions & {
|
|
41
|
+
export declare type ProviderServerArgs = CommonProgramOptions & PosgresProgramOptions<'DbSync'> & PosgresProgramOptions<'StakePool'> & OgmiosProgramOptions & RabbitMqProgramOptions & {
|
|
38
42
|
allowedOrigins?: string[];
|
|
39
43
|
cardanoNodeConfigPath?: string;
|
|
40
44
|
disableDbCache?: boolean;
|
|
@@ -47,6 +51,7 @@ export declare type ProviderServerArgs = CommonProgramOptions & PosgresProgramOp
|
|
|
47
51
|
dbCacheTtl: number;
|
|
48
52
|
useBlockfrost?: boolean;
|
|
49
53
|
useQueue?: boolean;
|
|
54
|
+
useTypeormStakePoolProvider?: boolean;
|
|
50
55
|
paginationPageSizeLimit?: number;
|
|
51
56
|
serviceNames: ServiceNames[];
|
|
52
57
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAK7D,oBAAY,QAAQ;IAClB,gBAAgB,sBAAsB;IACtC,cAAc,oBAAoB;IAClC,cAAc,oBAAoB;IAClC,SAAS,cAAc;CACxB;AAMD,oBAAY,YAAY;IACtB,KAAK,UAAU;IACf,SAAS,eAAe;IACxB,WAAW,iBAAiB;IAC5B,QAAQ,cAAc;IACtB,IAAI,SAAS;IACb,YAAY,kBAAkB;IAC9B,OAAO,YAAY;CACpB;AAED,oBAAY,2BAA2B;IACrC,UAAU,6DAA6D;IACvE,MAAM,mDAAmD;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAK7D,oBAAY,QAAQ;IAClB,gBAAgB,sBAAsB;IACtC,cAAc,oBAAoB;IAClC,cAAc,oBAAoB;IAClC,SAAS,cAAc;CACxB;AAMD,oBAAY,YAAY;IACtB,KAAK,UAAU;IACf,SAAS,eAAe;IACxB,WAAW,iBAAiB;IAC5B,QAAQ,cAAc;IACtB,IAAI,SAAS;IACb,YAAY,kBAAkB;IAC9B,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,8BAA8B,OAAO,CAAC;AAEnD,oBAAY,2BAA2B;IACrC,UAAU,6DAA6D;IACvE,MAAM,mDAAmD;IACzD,oBAAoB,sEAAsE;IAC1F,WAAW,2CAA2C;CACvD;AAED,oBAAY,gCAAgC;IAC1C,qBAAqB,6BAA6B;IAClD,UAAU,qGAAqG;IAC/G,cAAc,oDAAoD;IAClE,cAAc,qBAAqB;IACnC,yBAAyB,oDAAoD;IAC7E,iBAAiB,wBAAwB;IACzC,qBAAqB,4CAA4C;IACjE,sBAAsB,kCAAkC;IACxD,2BAA2B,4CAA4C;IACvE,aAAa,sCAAsC;IACnD,QAAQ,qBAAqB;IAC7B,uBAAuB,2DAA2D;CACnF;AAED,oBAAY,kBAAkB,GAAG,oBAAoB,GACnD,qBAAqB,CAAC,QAAQ,CAAC,GAC/B,qBAAqB,CAAC,WAAW,CAAC,GAClC,oBAAoB,GACpB,sBAAsB,GAAG;IACvB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProviderServerOptionDescriptions = exports.ProjectorOptionDescriptions = exports.ServiceNames = exports.Programs = void 0;
|
|
3
|
+
exports.ProviderServerOptionDescriptions = exports.ProjectorOptionDescriptions = exports.POOLS_METRICS_INTERVAL_DEFAULT = exports.ServiceNames = exports.Programs = void 0;
|
|
4
4
|
var Programs;
|
|
5
5
|
(function (Programs) {
|
|
6
6
|
Programs["BlockfrostWorker"] = "Blockfrost worker";
|
|
@@ -18,10 +18,13 @@ var ServiceNames;
|
|
|
18
18
|
ServiceNames["ChainHistory"] = "chain-history";
|
|
19
19
|
ServiceNames["Rewards"] = "rewards";
|
|
20
20
|
})(ServiceNames = exports.ServiceNames || (exports.ServiceNames = {}));
|
|
21
|
+
exports.POOLS_METRICS_INTERVAL_DEFAULT = 1000;
|
|
21
22
|
var ProjectorOptionDescriptions;
|
|
22
23
|
(function (ProjectorOptionDescriptions) {
|
|
23
24
|
ProjectorOptionDescriptions["DropSchema"] = "Drop and recreate database schema to project from origin";
|
|
24
25
|
ProjectorOptionDescriptions["DryRun"] = "Initialize the projection, but do not start it";
|
|
26
|
+
ProjectorOptionDescriptions["PoolsMetricsInterval"] = "Interval between two stake pools metrics jobs in number of blocks";
|
|
27
|
+
ProjectorOptionDescriptions["Synchronize"] = "Synchronize the schema from the models";
|
|
25
28
|
})(ProjectorOptionDescriptions = exports.ProjectorOptionDescriptions || (exports.ProjectorOptionDescriptions = {}));
|
|
26
29
|
var ProviderServerOptionDescriptions;
|
|
27
30
|
(function (ProviderServerOptionDescriptions) {
|
|
@@ -33,6 +36,7 @@ var ProviderServerOptionDescriptions;
|
|
|
33
36
|
ProviderServerOptionDescriptions["EpochPollInterval"] = "Epoch poll interval";
|
|
34
37
|
ProviderServerOptionDescriptions["TokenMetadataCacheTtl"] = "Token Metadata API cache TTL in minutes";
|
|
35
38
|
ProviderServerOptionDescriptions["TokenMetadataServerUrl"] = "Token Metadata API server URL";
|
|
39
|
+
ProviderServerOptionDescriptions["UseTypeOrmStakePoolProvider"] = "Enables the TypeORM Stake Pool Provider";
|
|
36
40
|
ProviderServerOptionDescriptions["UseBlockfrost"] = "Enables Blockfrost cached data DB";
|
|
37
41
|
ProviderServerOptionDescriptions["UseQueue"] = "Enables RabbitMQ";
|
|
38
42
|
ProviderServerOptionDescriptions["PaginationPageSizeLimit"] = "Pagination page size limit shared across all providers";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/Program/programs/types.ts"],"names":[],"mappings":";;;AAQA,IAAY,QAKX;AALD,WAAY,QAAQ;IAClB,kDAAsC,CAAA;IACtC,8CAAkC,CAAA;IAClC,8CAAkC,CAAA;IAClC,mCAAuB,CAAA;AACzB,CAAC,EALW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAKnB;AAMD,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,+BAAe,CAAA;IACf,wCAAwB,CAAA;IACxB,4CAA4B,CAAA;IAC5B,sCAAsB,CAAA;IACtB,6BAAa,CAAA;IACb,8CAA8B,CAAA;IAC9B,mCAAmB,CAAA;AACrB,CAAC,EARW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAQvB;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/Program/programs/types.ts"],"names":[],"mappings":";;;AAQA,IAAY,QAKX;AALD,WAAY,QAAQ;IAClB,kDAAsC,CAAA;IACtC,8CAAkC,CAAA;IAClC,8CAAkC,CAAA;IAClC,mCAAuB,CAAA;AACzB,CAAC,EALW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAKnB;AAMD,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,+BAAe,CAAA;IACf,wCAAwB,CAAA;IACxB,4CAA4B,CAAA;IAC5B,sCAAsB,CAAA;IACtB,6BAAa,CAAA;IACb,8CAA8B,CAAA;IAC9B,mCAAmB,CAAA;AACrB,CAAC,EARW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAQvB;AAEY,QAAA,8BAA8B,GAAG,IAAI,CAAC;AAEnD,IAAY,2BAKX;AALD,WAAY,2BAA2B;IACrC,sGAAuE,CAAA;IACvE,wFAAyD,CAAA;IACzD,yHAA0F,CAAA;IAC1F,qFAAsD,CAAA;AACxD,CAAC,EALW,2BAA2B,GAA3B,mCAA2B,KAA3B,mCAA2B,QAKtC;AAED,IAAY,gCAaX;AAbD,WAAY,gCAAgC;IAC1C,sFAAkD,CAAA;IAClD,mJAA+G,CAAA;IAC/G,sGAAkE,CAAA;IAClE,uEAAmC,CAAA;IACnC,iHAA6E,CAAA;IAC7E,6EAAyC,CAAA;IACzC,qGAAiE,CAAA;IACjE,4FAAwD,CAAA;IACxD,2GAAuE,CAAA;IACvE,uFAAmD,CAAA;IACnD,iEAA6B,CAAA;IAC7B,sHAAkF,CAAA;AACpF,CAAC,EAbW,gCAAgC,GAAhC,wCAAgC,KAAhC,wCAAgC,QAa3C"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DnsResolver } from '../utils';
|
|
2
2
|
import { Logger } from 'ts-log';
|
|
3
3
|
import { OgmiosCardanoNode, OgmiosObservableCardanoNode, OgmiosTxSubmitProvider } from '@cardano-sdk/ogmios';
|
|
4
|
-
import { OgmiosProgramOptions } from '../options';
|
|
4
|
+
import { OgmiosProgramOptions } from '../options/ogmios';
|
|
5
5
|
export declare const ogmiosTxSubmitProviderWithDiscovery: (dnsResolver: DnsResolver, logger: Logger, serviceName: string) => Promise<OgmiosTxSubmitProvider>;
|
|
6
6
|
export declare const getOgmiosTxSubmitProvider: (dnsResolver: DnsResolver, logger: Logger, options?: OgmiosProgramOptions) => Promise<OgmiosTxSubmitProvider>;
|
|
7
7
|
export declare const ogmiosCardanoNodeWithDiscovery: (dnsResolver: DnsResolver, logger: Logger, serviceName: string) => Promise<OgmiosCardanoNode>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ogmios.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/ogmios.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,iBAAiB,EACjB,2BAA2B,EAC3B,sBAAsB,EAEvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA4B,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ogmios.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/ogmios.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,iBAAiB,EACjB,2BAA2B,EAC3B,sBAAsB,EAEvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA4B,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AA8CnF,eAAO,MAAM,mCAAmC,gBACjC,WAAW,UAChB,MAAM,eACD,MAAM,KAClB,QAAQ,sBAAsB,CAwChC,CAAC;AAEF,eAAO,MAAM,yBAAyB,gBACvB,WAAW,UAChB,MAAM,YACJ,oBAAoB,KAC7B,QAAQ,sBAAsB,CAKhC,CAAC;AAaF,eAAO,MAAM,8BAA8B,gBAC5B,WAAW,UAChB,MAAM,eACD,MAAM,KAClB,QAAQ,iBAAiB,CAwC3B,CAAC;AASF,eAAO,MAAM,wCAAwC,gBACtC,WAAW,UAChB,MAAM,eACD,MAAM,KAClB,2BAMA,CAAC;AAEJ,eAAO,MAAM,oBAAoB,gBAClB,WAAW,UAChB,MAAM,YACJ,oBAAoB,KAC7B,QAAQ,iBAAiB,CAK3B,CAAC;AAEF,eAAO,MAAM,8BAA8B,gBAC5B,WAAW,UAChB,MAAM,YACJ,oBAAoB,KAC7B,2BASF,CAAC"}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getOgmiosObservableCardanoNode = exports.getOgmiosCardanoNode = exports.ogmiosObservableCardanoNodeWithDiscovery = exports.ogmiosCardanoNodeWithDiscovery = exports.getOgmiosTxSubmitProvider = exports.ogmiosTxSubmitProviderWithDiscovery = void 0;
|
|
4
4
|
const errors_1 = require("../errors");
|
|
5
5
|
const ogmios_1 = require("@cardano-sdk/ogmios");
|
|
6
|
-
const
|
|
6
|
+
const ogmios_2 = require("../options/ogmios");
|
|
7
7
|
const util_1 = require("@cardano-sdk/util");
|
|
8
8
|
const rxjs_1 = require("rxjs");
|
|
9
9
|
const isCardanoNodeOperation = (prop) => ['eraSummaries', 'systemStart', 'stakeDistribution'].includes(prop);
|
|
@@ -65,7 +65,7 @@ const getOgmiosTxSubmitProvider = async (dnsResolver, logger, options) => {
|
|
|
65
65
|
return (0, exports.ogmiosTxSubmitProviderWithDiscovery)(dnsResolver, logger, options.ogmiosSrvServiceName);
|
|
66
66
|
if (options?.ogmiosUrl)
|
|
67
67
|
return new ogmios_1.OgmiosTxSubmitProvider((0, ogmios_1.urlToConnectionConfig)(options?.ogmiosUrl), { logger });
|
|
68
|
-
throw new errors_1.MissingCardanoNodeOption([
|
|
68
|
+
throw new errors_1.MissingCardanoNodeOption([ogmios_2.OgmiosOptionDescriptions.Url, ogmios_2.OgmiosOptionDescriptions.SrvServiceName]);
|
|
69
69
|
};
|
|
70
70
|
exports.getOgmiosTxSubmitProvider = getOgmiosTxSubmitProvider;
|
|
71
71
|
const ogmiosCardanoNodeWithDiscovery = async (dnsResolver, logger, serviceName) => {
|
|
@@ -114,7 +114,7 @@ const getOgmiosCardanoNode = async (dnsResolver, logger, options) => {
|
|
|
114
114
|
return (0, exports.ogmiosCardanoNodeWithDiscovery)(dnsResolver, logger, options.ogmiosSrvServiceName);
|
|
115
115
|
if (options?.ogmiosUrl)
|
|
116
116
|
return new ogmios_1.OgmiosCardanoNode((0, ogmios_1.urlToConnectionConfig)(options.ogmiosUrl), logger);
|
|
117
|
-
throw new errors_1.MissingCardanoNodeOption([
|
|
117
|
+
throw new errors_1.MissingCardanoNodeOption([ogmios_2.OgmiosOptionDescriptions.Url, ogmios_2.OgmiosOptionDescriptions.SrvServiceName]);
|
|
118
118
|
};
|
|
119
119
|
exports.getOgmiosCardanoNode = getOgmiosCardanoNode;
|
|
120
120
|
const getOgmiosObservableCardanoNode = (dnsResolver, logger, options) => {
|
|
@@ -122,7 +122,7 @@ const getOgmiosObservableCardanoNode = (dnsResolver, logger, options) => {
|
|
|
122
122
|
return (0, exports.ogmiosObservableCardanoNodeWithDiscovery)(dnsResolver, logger, options.ogmiosSrvServiceName);
|
|
123
123
|
if (options?.ogmiosUrl)
|
|
124
124
|
return new ogmios_1.OgmiosObservableCardanoNode({ connectionConfig$: (0, rxjs_1.of)((0, ogmios_1.urlToConnectionConfig)(options.ogmiosUrl)) }, { logger });
|
|
125
|
-
throw new errors_1.MissingCardanoNodeOption([
|
|
125
|
+
throw new errors_1.MissingCardanoNodeOption([ogmios_2.OgmiosOptionDescriptions.Url, ogmios_2.OgmiosOptionDescriptions.SrvServiceName]);
|
|
126
126
|
};
|
|
127
127
|
exports.getOgmiosObservableCardanoNode = getOgmiosObservableCardanoNode;
|
|
128
128
|
//# sourceMappingURL=ogmios.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ogmios.js","sourceRoot":"","sources":["../../../../src/Program/services/ogmios.ts"],"names":[],"mappings":";;;AAIA,sCAAqD;AACrD,gDAK6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"ogmios.js","sourceRoot":"","sources":["../../../../src/Program/services/ogmios.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { BlockEntity, CurrentPoolMetricsEntity, PgConnectionConfig, PoolMetadataEntity, PoolRegistrationEntity, PoolRetirementEntity, StakePoolEntity } from '@cardano-sdk/projection-typeorm';
|
|
2
|
+
import { DataSource } from 'typeorm';
|
|
3
|
+
import { HttpService } from '../../Http/HttpService';
|
|
4
|
+
import { Logger } from 'ts-log';
|
|
5
|
+
import { Observable } from 'rxjs';
|
|
6
|
+
import { PgBossQueue } from '../../PgBoss';
|
|
7
|
+
import { Pool } from 'pg';
|
|
8
|
+
export declare const pgBossEntities: (typeof StakePoolEntity | typeof BlockEntity | typeof CurrentPoolMetricsEntity | typeof PoolMetadataEntity | typeof PoolRegistrationEntity | typeof PoolRetirementEntity)[];
|
|
9
|
+
export declare const createPgBossDataSource: (connectionConfig$: Observable<PgConnectionConfig>, logger: Logger) => Observable<DataSource>;
|
|
10
|
+
export interface PgBossServiceConfig {
|
|
11
|
+
parallelJobs: number;
|
|
12
|
+
queues: PgBossQueue[];
|
|
13
|
+
stakePoolProviderUrl?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface PgBossServiceDependencies {
|
|
16
|
+
connectionConfig$: Observable<PgConnectionConfig>;
|
|
17
|
+
db: Pool;
|
|
18
|
+
logger: Logger;
|
|
19
|
+
}
|
|
20
|
+
export declare class PgBossHttpService extends HttpService {
|
|
21
|
+
#private;
|
|
22
|
+
constructor(cfg: PgBossServiceConfig, deps: PgBossServiceDependencies);
|
|
23
|
+
protected startImpl(): Promise<void>;
|
|
24
|
+
protected shutdownImpl(): Promise<void>;
|
|
25
|
+
private work;
|
|
26
|
+
private workQueue;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=pgboss.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pgboss.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/pgboss.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EACL,UAAU,EAWX,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,WAAW,EAAiB,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAU1B,eAAO,MAAM,cAAc,6KAO1B,CAAC;AAEF,eAAO,MAAM,sBAAsB,sBAAuB,WAAW,kBAAkB,CAAC,UAAU,MAAM,2BAOpG,CAAC;AAEL,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB;IACxC,iBAAiB,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAClD,EAAE,EAAE,IAAI,CAAC;IACT,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,iBAAkB,SAAQ,WAAW;;gBAOpC,GAAG,EAAE,mBAAmB,EAAE,IAAI,EAAE,yBAAyB;cAUrD,SAAS;cAkBT,YAAY;IAM5B,OAAO,CAAC,IAAI;IAoCZ,OAAO,CAAC,SAAS;CAmDlB"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
3
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
4
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
5
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
8
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
11
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
12
|
+
};
|
|
13
|
+
var _PgBossHttpService_config, _PgBossHttpService_dataSource$, _PgBossHttpService_db, _PgBossHttpService_subscription, _PgBossHttpService_health;
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.PgBossHttpService = exports.createPgBossDataSource = exports.pgBossEntities = void 0;
|
|
16
|
+
const projection_typeorm_1 = require("@cardano-sdk/projection-typeorm");
|
|
17
|
+
const HttpService_1 = require("../../Http/HttpService");
|
|
18
|
+
const rxjs_1 = require("rxjs");
|
|
19
|
+
const PgBoss_1 = require("../../PgBoss");
|
|
20
|
+
const express_1 = require("express");
|
|
21
|
+
const util_1 = require("@cardano-sdk/util");
|
|
22
|
+
const createTypeormProjection_1 = require("../../Projection/createTypeormProjection");
|
|
23
|
+
const backoff_rxjs_1 = require("backoff-rxjs");
|
|
24
|
+
exports.pgBossEntities = [
|
|
25
|
+
projection_typeorm_1.CurrentPoolMetricsEntity,
|
|
26
|
+
projection_typeorm_1.BlockEntity,
|
|
27
|
+
projection_typeorm_1.PoolMetadataEntity,
|
|
28
|
+
projection_typeorm_1.PoolRegistrationEntity,
|
|
29
|
+
projection_typeorm_1.PoolRetirementEntity,
|
|
30
|
+
projection_typeorm_1.StakePoolEntity
|
|
31
|
+
];
|
|
32
|
+
const createPgBossDataSource = (connectionConfig$, logger) => (0, createTypeormProjection_1.createObservableDataSource)({
|
|
33
|
+
connectionConfig$,
|
|
34
|
+
entities: exports.pgBossEntities,
|
|
35
|
+
extensions: {},
|
|
36
|
+
logger,
|
|
37
|
+
migrationsRun: false
|
|
38
|
+
});
|
|
39
|
+
exports.createPgBossDataSource = createPgBossDataSource;
|
|
40
|
+
class PgBossHttpService extends HttpService_1.HttpService {
|
|
41
|
+
constructor(cfg, deps) {
|
|
42
|
+
const { connectionConfig$, db, logger } = deps;
|
|
43
|
+
super('pg-boss-service', { healthCheck: async () => __classPrivateFieldGet(this, _PgBossHttpService_health, "f") }, (0, express_1.Router)(), logger);
|
|
44
|
+
_PgBossHttpService_config.set(this, void 0);
|
|
45
|
+
_PgBossHttpService_dataSource$.set(this, void 0);
|
|
46
|
+
_PgBossHttpService_db.set(this, void 0);
|
|
47
|
+
_PgBossHttpService_subscription.set(this, void 0);
|
|
48
|
+
_PgBossHttpService_health.set(this, { ok: false, reason: 'PgBossHttpService not started' });
|
|
49
|
+
__classPrivateFieldSet(this, _PgBossHttpService_config, cfg, "f");
|
|
50
|
+
__classPrivateFieldSet(this, _PgBossHttpService_db, db, "f");
|
|
51
|
+
__classPrivateFieldSet(this, _PgBossHttpService_dataSource$, (0, exports.createPgBossDataSource)(connectionConfig$, this.logger), "f");
|
|
52
|
+
}
|
|
53
|
+
async startImpl() {
|
|
54
|
+
await super.startImpl();
|
|
55
|
+
if (__classPrivateFieldGet(this, _PgBossHttpService_subscription, "f")) {
|
|
56
|
+
this.logger.warn('Unsubscribing from an observable which should never happen');
|
|
57
|
+
__classPrivateFieldGet(this, _PgBossHttpService_subscription, "f").unsubscribe();
|
|
58
|
+
}
|
|
59
|
+
const sharedWork$ = this.work().pipe((0, rxjs_1.share)());
|
|
60
|
+
__classPrivateFieldSet(this, _PgBossHttpService_subscription, sharedWork$.subscribe(), "f");
|
|
61
|
+
await (0, rxjs_1.firstValueFrom)(sharedWork$);
|
|
62
|
+
}
|
|
63
|
+
async shutdownImpl() {
|
|
64
|
+
await super.shutdownImpl();
|
|
65
|
+
__classPrivateFieldGet(this, _PgBossHttpService_subscription, "f")?.unsubscribe();
|
|
66
|
+
}
|
|
67
|
+
work() {
|
|
68
|
+
return __classPrivateFieldGet(this, _PgBossHttpService_dataSource$, "f").pipe((0, rxjs_1.switchMap)((dataSource) => {
|
|
69
|
+
const pgBoss = (0, projection_typeorm_1.createPgBoss)(null, this.logger, dataSource);
|
|
70
|
+
return (0, rxjs_1.concat)((0, rxjs_1.from)(pgBoss.start()), (0, rxjs_1.merge)(...__classPrivateFieldGet(this, _PgBossHttpService_config, "f").queues.map((queue) => this.workQueue(dataSource, pgBoss, queue, __classPrivateFieldGet(this, _PgBossHttpService_db, "f"))))).pipe((0, rxjs_1.finalize)(() => pgBoss.stop().catch((error) => this.logger.warn('Error stopping pgBoss', error))));
|
|
71
|
+
}), (0, rxjs_1.tap)(() => (__classPrivateFieldSet(this, _PgBossHttpService_health, { ok: true }, "f"))), (0, backoff_rxjs_1.retryBackoff)({
|
|
72
|
+
initialInterval: 10,
|
|
73
|
+
maxInterval: 5000,
|
|
74
|
+
resetOnSuccess: true,
|
|
75
|
+
shouldRetry: (error) => {
|
|
76
|
+
const retry = (0, projection_typeorm_1.isRecoverableTypeormError)(error);
|
|
77
|
+
__classPrivateFieldSet(this, _PgBossHttpService_health, {
|
|
78
|
+
ok: false,
|
|
79
|
+
reason: retry ? 'DataBase error: reconnecting...' : 'Fatal error! Shutting down'
|
|
80
|
+
}, "f");
|
|
81
|
+
return retry;
|
|
82
|
+
}
|
|
83
|
+
}), (0, rxjs_1.catchError)((error) => {
|
|
84
|
+
this.logger.error('Fatal worker error', error);
|
|
85
|
+
process.exit(1);
|
|
86
|
+
}));
|
|
87
|
+
}
|
|
88
|
+
workQueue(dataSource, pgBoss, queue, db) {
|
|
89
|
+
const logger = (0, util_1.contextLogger)(this.logger, queue);
|
|
90
|
+
const handler = PgBoss_1.queueHandlers[queue]({
|
|
91
|
+
dataSource,
|
|
92
|
+
db,
|
|
93
|
+
logger,
|
|
94
|
+
stakePoolProviderUrl: __classPrivateFieldGet(this, _PgBossHttpService_config, "f").stakePoolProviderUrl
|
|
95
|
+
});
|
|
96
|
+
return new rxjs_1.Observable((subscriber) => {
|
|
97
|
+
const workOption = {
|
|
98
|
+
teamConcurrency: __classPrivateFieldGet(this, _PgBossHttpService_config, "f").parallelJobs,
|
|
99
|
+
teamRefill: true,
|
|
100
|
+
teamSize: __classPrivateFieldGet(this, _PgBossHttpService_config, "f").parallelJobs
|
|
101
|
+
};
|
|
102
|
+
const baseHandler = async (job) => {
|
|
103
|
+
const { id, data } = job;
|
|
104
|
+
try {
|
|
105
|
+
logger.info(`Job ${id} started`, data);
|
|
106
|
+
await handler(data);
|
|
107
|
+
subscriber.next(null);
|
|
108
|
+
logger.info(`Job ${id} successfully completed`, data);
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
logger.error(`Job ${id} got error`, error);
|
|
112
|
+
if ((0, projection_typeorm_1.isRecoverableTypeormError)(error)) {
|
|
113
|
+
logger.info('The error is recoverable: re-creating DB connection');
|
|
114
|
+
subscriber.error(error);
|
|
115
|
+
}
|
|
116
|
+
throw error;
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
pgBoss.work(queue, workOption, baseHandler).catch((error) => {
|
|
120
|
+
logger.error(`Error while starting worker for queue '${queue}'`, error);
|
|
121
|
+
subscriber.error(error);
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
exports.PgBossHttpService = PgBossHttpService;
|
|
127
|
+
_PgBossHttpService_config = new WeakMap(), _PgBossHttpService_dataSource$ = new WeakMap(), _PgBossHttpService_db = new WeakMap(), _PgBossHttpService_subscription = new WeakMap(), _PgBossHttpService_health = new WeakMap();
|
|
128
|
+
//# sourceMappingURL=pgboss.js.map
|