Skip to content

Update block failed message #2418

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 11 commits into from
May 31, 2024
Merged

Update block failed message #2418

merged 11 commits into from
May 31, 2024

Conversation

yoozo
Copy link
Collaborator

@yoozo yoozo commented May 29, 2024

Description

Update block failed message.

Fixes #2414 (issue)

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Checklist

  • I have tested locally
  • I have performed a self review of my changes
  • Updated any relevant documentation
  • Linked to any relevant issues
  • I have added tests relevant to my changes
  • Any dependent changes have been merged and published in downstream modules
  • My code is up to date with the base branch
  • I have updated relevant changelogs. We suggest using chan

@yoozo yoozo requested review from stwiname and jiqiang90 May 29, 2024 02:33
Copy link
Collaborator

@stwiname stwiname left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The updated error message should be for a specific error not all errors failing to index blocks.

It needs to handle a specific error type here https://github.com/subquery/subql/blob/main/packages/node/src/utils/substrate.ts#L257

Copy link

github-actions bot commented May 29, 2024

Coverage report for .

Caution

Test run failed

St.
Category Percentage Covered / Total
🟡 Statements
69.36% (-0.74% 🔻)
19197/27676
🟡 Branches
78.37% (+0.08% 🔼)
2138/2728
🟡 Functions
63.42% (+0.92% 🔼)
912/1438
🟡 Lines
69.36% (-0.74% 🔻)
19197/27676
Show new covered files 🐣
St.
File Statements Branches Functions Lines
🟢
... / migrate.ts
85.09% 10% 100% 85.09%
🟢
... / migrate-abis.controller.ts
95% 87.5% 100% 95%
🟢
... / constants.ts
100% 100% 100% 100%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / ethereum.ts
82.05% 83.33% 100% 82.05%
🟢
... / migrate-manifest.controller.ts
88% 72.41% 88.89% 88%
🟢
... / migrate-mapping.controller.ts
100% 100% 100% 100%
🟢
... / migrate-controller.ts
92.31% 84% 100% 92.31%
🟢
... / migrate.fixtures.ts
100% 100% 100% 100%
🟢
... / migrate-schema.controller.ts
100% 100% 100% 100%
🔴
... / types.ts
0% 0% 0% 0%
🟢
... / createProject.fixtures.ts
90.16% 66.67% 100% 90.16%
🟢
... / networkFamily.ts
92.59% 88.89% 100% 92.59%
🟢
... / dictionary.fixtures.ts
100% 100% 100% 100%
🔴
... / sandbox.service.ts
45.45% 50% 33.33% 45.45%
🔴
... / foreceClean.init.ts
42.86% 100% 0% 42.86%
🔴
... / reindex.init.ts
31.03% 100% 0% 31.03%
🔴
... / datasourceProcessors.ts
0% 0% 0% 0%
Show files with reduced coverage 🔻
St.
File Statements Branches Functions Lines
🔴
... / index.ts
26.14% (-56.82% 🔻)
100% (+33.33% 🔼)
0% (-50% 🔻)
26.14% (-56.82% 🔻)
🔴
... / index.ts
33.87% (-58.06% 🔻)
100% (+75% 🔼)
0% (-100% 🔻)
33.87% (-58.06% 🔻)
🔴
... / deploy.ts
18.97% (-2.17% 🔻)
100% 0%
18.97% (-2.17% 🔻)
🔴
... / publish.ts
28% (-61.33% 🔻)
100% (+42.86% 🔼)
0% (-100% 🔻)
28% (-61.33% 🔻)
🔴
... / build-controller.ts
11.96% (-79.35% 🔻)
100% (+42.86% 🔼)
0% (-100% 🔻)
11.96% (-79.35% 🔻)
🟢
... / codegen-controller.ts
89.39%
75% (-0.58% 🔻)
100% 89.39%
🟢
... / generate-controller.ts
97.65%
93.85% (-0.18% 🔻)
100% 97.65%
🟡
... / init-controller.ts
72.38% (+1.89% 🔼)
50% (-18% 🔻)
61.11% (+7.78% 🔼)
72.38% (+1.89% 🔼)
🔴
... / publish-controller.ts
14.81% (-65.43% 🔻)
100% (+28.89% 🔼)
0% (-100% 🔻)
14.81% (-65.43% 🔻)
🟢 cli/src/types.ts
96.97% (-0.03% 🔻)
100% 33.33%
96.97% (-0.03% 🔻)
🟡
... / build.ts
74.48% (-10.34% 🔻)
80% (+3.08% 🔼)
87.5% (-12.5% 🔻)
74.48% (-10.34% 🔻)
🟢
... / utils.ts
80.26% (-0.82% 🔻)
90.32% (+9.62% 🔼)
78.57% (+1.3% 🔼)
80.26% (-0.82% 🔻)
🟢
... / ProjectManifestVersioned.ts
82.19% (-2.74% 🔻)
87.5% (-12.5% 🔻)
58.33%
82.19% (-2.74% 🔻)
🔴
... / load.ts
44.9% (-14.29% 🔻)
44.44% (-11.11% 🔻)
50% (-16.67% 🔻)
44.9% (-14.29% 🔻)
🟢
... / reader.ts
81.58% (-7.89% 🔻)
57.14% (-17.86% 🔻)
100%
81.58% (-7.89% 🔻)
🔴
... / utils.ts
54.11% (-8.59% 🔻)
70.37% (-2.8% 🔻)
48% (-8% 🔻)
54.11% (-8.59% 🔻)
🟢
... / base.ts
94.95% (-3.05% 🔻)
87.5% (-12.5% 🔻)
80%
94.95% (-3.05% 🔻)
🟢
... / NodeConfig.ts
87.97% (-0.63% 🔻)
77.36% (-2.27% 🔻)
86.05%
87.97% (-0.63% 🔻)
🟢
... / ProjectUpgrade.service.ts
85.84% (-1.24% 🔻)
93.67% (+2.31% 🔼)
87.5% (-3.8% 🔻)
85.84% (-1.24% 🔻)
🟢
... / configure.module.ts
80% (-4.57% 🔻)
47.83% (-16.17% 🔻)
100%
80% (-4.57% 🔻)
🟢
... / db.module.ts
88.28%
62.5% (-20.83% 🔻)
80% 88.28%
🟡
... / migration-helpers.ts
75.28% (-0.74% 🔻)
88.24% (+7.64% 🔼)
90.91%
75.28% (-0.74% 🔻)
🔴
... / base-block-dispatcher.ts
46.62% (-0.73% 🔻)
100%
5% (-5% 🔻)
46.62% (-0.73% 🔻)
🔴
... / block-dispatcher.ts
39.35% (-1.64% 🔻)
66.67% 28.57%
39.35% (-1.64% 🔻)
🔴
... / worker-block-dispatcher.ts
48.92% (-1.29% 🔻)
100% 27.27%
48.92% (-1.29% 🔻)
🟢
... / coreDictionary.ts
94.67% (-5.33% 🔻)
87.5% (-6.94% 🔻)
87.5% (-12.5% 🔻)
94.67% (-5.33% 🔻)
🟢
... / dictionary.service.ts
85.28% (+0.14% 🔼)
82.35% (-3.36% 🔻)
90.91%
85.28% (+0.14% 🔼)
🟢
... / utils.ts
92.59% (-3.7% 🔻)
69.23% (-24.89% 🔻)
100%
92.59% (-3.7% 🔻)
🟢
... / dictionaryV1.ts
91.84% (-1.39% 🔻)
76.09% (-2.17% 🔻)
100%
91.84% (-1.39% 🔻)
🟢
... / dictionaryV2.ts
81.58% (-0.1% 🔻)
68% (+2.78% 🔼)
100%
81.58% (-0.1% 🔻)
🔴
... / ds-processor.service.ts
42.08% (-20.01% 🔻)
73.33% (-1.67% 🔻)
63.64% (-23.86% 🔻)
42.08% (-20.01% 🔻)
🟢
... / dynamic-ds.service.ts
90.55% (+0.36% 🔼)
65% (-1.67% 🔻)
88.89% (+3.17% 🔼)
90.55% (+0.36% 🔼)
🔴
... / indexer.manager.ts
33.21% (+0% 🔼)
100%
11.11% (-1.39% 🔻)
33.21% (+0% 🔼)
🟡
... / store.service.ts
65.57% (-0.48% 🔻)
68.42% 57.14%
65.57% (-0.48% 🔻)
🔴
... / store.ts
30.59% (-1.62% 🔻)
100% 0%
30.59% (-1.62% 🔻)
🟢
... / cacheModel.ts
83.3% (-1.78% 🔻)
85.71% (+7.4% 🔼)
75% (-1.19% 🔻)
83.3% (-1.78% 🔻)
🟢
... / cacheable.ts
89.66% (-0.97% 🔻)
75% 100%
89.66% (-0.97% 🔻)
🟡
... / worker.builder.ts
78.85% (-0.33% 🔻)
65.38%
75% (-5% 🔻)
78.85% (-0.33% 🔻)
🔴
... / worker.service.ts
44.14% (-0.5% 🔻)
100% 0%
44.14% (-0.5% 🔻)
🟢
... / worker.store.service.ts
80% (-2.61% 🔻)
100% 50%
80% (-2.61% 🔻)
🔴
... / worker.ts
41.86% (-0.59% 🔻)
100% 0%
41.86% (-0.59% 🔻)
🟡
... / worker.unfinalizedBlocks.service.ts
64.44% (-35.56% 🔻)
100%
0% (-100% 🔻)
64.44% (-35.56% 🔻)
🟡
... / meta.service.ts
68.57% (-0.95% 🔻)
100% (+20% 🔼)
30% (-10% 🔻)
68.57% (-0.95% 🔻)
🔴
... / reindex.service.ts
32.8% (-0.53% 🔻)
100% 0%
32.8% (-0.53% 🔻)
🟡
... / blocks.ts
77.78% (-22.22% 🔻)
88.89%
66.67% (-33.33% 🔻)
77.78% (-22.22% 🔻)
🟡
... / project.ts
72.88% (-0.5% 🔻)
74.58% 77.78%
72.88% (-0.5% 🔻)
🟢
... / promise.ts
94.92% (+3.15% 🔼)
100% (+13.64% 🔼)
83.33% (-2.38% 🔻)
94.92% (+3.15% 🔼)
🔴
... / reindex.ts
33.33% (-0.71% 🔻)
100% 0%
33.33% (-0.71% 🔻)
🟢
... / SubqueryProject.ts
95.38% (-0.14% 🔻)
82.35% 85.71%
95.38% (-0.14% 🔻)
🟡
... / apiPromise.connection.ts
77.08% (+8% 🔼)
44.44% (-35.56% 🔻)
57.14% (+14.29% 🔼)
77.08% (+8% 🔼)
🟢
... / substrateDictionary.service.ts
98.06% (+7.49% 🔼)
69.23% (-3.5% 🔻)
100% (+20% 🔼)
98.06% (+7.49% 🔼)
🟢
... / substrateDictionaryV1.ts
85.05% (-0.43% 🔻)
70.45% (+0.69% 🔼)
83.33%
85.05% (-0.43% 🔻)
🟡
... / substrateDictionaryV2.ts
73.03% (-2.48% 🔻)
75% 33.33%
73.03% (-2.48% 🔻)
🟢
... / fetch.module.ts
90.4% (-1.47% 🔻)
50% (-25% 🔻)
100%
90.4% (-1.47% 🔻)
🔴
... / indexer.manager.ts
57% (-0.55% 🔻)
100%
11.11% (+2.02% 🔼)
57% (-0.55% 🔻)
🟢
... / runtimeService.ts
94.29% (+2.08% 🔼)
80% (-8.89% 🔻)
100% (+20% 🔼)
94.29% (+2.08% 🔼)
🟢
... / project.ts
88.81% (-0.08% 🔻)
68.18% 87.5%
88.81% (-0.08% 🔻)
🟢
... / buffer.ts
95.12% (-4.88% 🔻)
95.65% (-4.35% 🔻)
85.71% (+1.5% 🔼)
95.12% (-4.88% 🔻)
🟢
... / builder.ts
92.77%
82.14% (-0.62% 🔻)
100% 92.77%
🟢
... / entities.ts
87.77% (-0.54% 🔻)
83.49% (-2.6% 🔻)
100%
87.77% (-0.54% 🔻)
🟡
... / logger.ts
70.2% (+0.6% 🔼)
52.38% (-2.62% 🔻)
75%
70.2% (+0.6% 🔼)

Test suite run failed

Failed tests: 17/501. Failed suites: 10/94.
  ● CLI codegen:generate › extract from TS manifest

    expect(received).toMatch(expected)

    Expected substring: "approve(address spender, uint256 rawAmount)"
    Received string:    "0x095ea7b3"

      684 |     );
      685 |     // TODO expected to fail, due to unable to skip comments
    > 686 |     expect(v.function).toMatch('approve(address spender, uint256 rawAmount)');
          |                        ^
      687 |     expect(v.topics[0]).toMatch('Transfer(address indexed from, address indexed to, uint256 amount)');
      688 |     expect(v.endpoint[0]).toMatch('https://eth.api.onfinality.io/public');
      689 |   });

      at Object.<anonymous> (packages/cli/src/controller/generate-controller.spec.ts:686:24)


  ● Test suite failed to run

    Your test suite must contain at least one test.

      at onResult (node_modules/@jest/core/build/TestScheduler.js:133:18)
      at node_modules/@jest/core/build/TestScheduler.js:254:19
      at node_modules/emittery/index.js:363:13
          at Array.map (<anonymous>)
      at Emittery.emit (node_modules/emittery/index.js:361:23)


  ● Store cache upper threshold › waits for flushing when threshold is met

    expect(received).toBeGreaterThanOrEqual(expected)

    Expected: >= 1000
    Received:    999

      288 |
      289 |     // Should be more than 1s, we set the db tx.commit to take 1s
    > 290 |     expect(end - start).toBeGreaterThanOrEqual(1000);
          |                         ^
      291 |   });
      292 | });
      293 |

      at Object.<anonymous> (packages/node-core/src/indexer/storeCache/storeCache.service.spec.ts:290:25)


  ● Individual dictionary V1 test › test query the correct range

    expect(received).toEqual(expected) // deep equality

    Expected: [1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, …]
    Received: undefined

      249 |     const endBlock = 10001;
      250 |     const dic = await dictionary.getData(startBlock, endBlock, batchSize);
    > 251 |     expect(dic?.batchBlocks).toEqual(range(startBlock, startBlock + batchSize));
          |                              ^
      252 |   });
      253 |
      254 |   it('use minimum value of event/extrinsic returned block as batch end block', async () => {

      at Object.<anonymous> (packages/node-core/src/indexer/dictionary/v1/dictionaryV1.spec.ts:251:30)


  ● Cli can create project (mocked) › Ensure prepareManifest and preparePackage correctness for project.ts

    expect(received).toStrictEqual(expected) // deep equality

    Expected: ["https://zzz", "https://bbb"]
    Received: null

      190 |       endpoint: ENDPOINT_REG,
      191 |     });
    > 192 |     expect(extractedValues.endpoint).toStrictEqual(project.endpoint);
          |                                      ^
      193 |     expect(originalManifest).not.toBe(updatedManifest.toString());
      194 |     expect(originalPackage).not.toBe(packageData.toString());
      195 |   });

      at Object.<anonymous> (packages/cli/src/controller/init-controller.spec.ts:192:38)


  ● CLI deploy, delete, promote › Deploy to Hosted Service and Delete

    Failed to validate IPFS CID: Unauthorized

      88 | export function errorHandle(e: any, msg: string): Error {
      89 |   if (axios.isAxiosError(e) && e?.response?.data) {
    > 90 |     throw new Error(`${msg} ${e.response.data.message ?? e.response.data}`);
         |           ^
      91 |   }
      92 |
      93 |   throw new Error(`${msg} ${e.message}`);

      at errorHandle (packages/cli/src/utils/utils.ts:90:11)
      at ipfsCID_validate (packages/cli/src/controller/deploy-controller.ts:169:16)
      at Object.<anonymous> (packages/cli/src/controller/deploy-controller.spec.ts:106:23)

  ● CLI deploy, delete, promote › should return true for valid ipfsCID

    Failed to validate IPFS CID: Unauthorized

      88 | export function errorHandle(e: any, msg: string): Error {
      89 |   if (axios.isAxiosError(e) && e?.response?.data) {
    > 90 |     throw new Error(`${msg} ${e.response.data.message ?? e.response.data}`);
         |           ^
      91 |   }
      92 |
      93 |   throw new Error(`${msg} ${e.message}`);

      at errorHandle (packages/cli/src/utils/utils.ts:90:11)
      at ipfsCID_validate (packages/cli/src/controller/deploy-controller.ts:169:16)
      at Object.<anonymous> (packages/cli/src/controller/deploy-controller.spec.ts:135:23)

  ● CLI deploy, delete, promote › to throw error for invalid ipfsCID

    expect(received).rejects.toThrow(expected)

    Expected substring: "Failed to validate IPFS CID: fake is not a valid subquery deployment id!"
    Received message:   "Failed to validate IPFS CID: Unauthorized"

          88 | export function errorHandle(e: any, msg: string): Error {
          89 |   if (axios.isAxiosError(e) && e?.response?.data) {
        > 90 |     throw new Error(`${msg} ${e.response.data.message ?? e.response.data}`);
             |           ^
          91 |   }
          92 |
          93 |   throw new Error(`${msg} ${e.message}`);

      at errorHandle (packages/cli/src/utils/utils.ts:90:11)
      at ipfsCID_validate (packages/cli/src/controller/deploy-controller.ts:169:16)
      at Object.<anonymous> (packages/cli/src/controller/deploy-controller.spec.ts:140:5)
      at Object.toThrow (node_modules/expect/build/index.js:210:22)
      at Object.<anonymous> (packages/cli/src/controller/deploy-controller.spec.ts:140:80)

  ● CLI deploy, delete, promote › get DictEndpoint - polkadot

    Failed to validate IPFS CID: Unauthorized

      88 | export function errorHandle(e: any, msg: string): Error {
      89 |   if (axios.isAxiosError(e) && e?.response?.data) {
    > 90 |     throw new Error(`${msg} ${e.response.data.message ?? e.response.data}`);
         |           ^
      91 |   }
      92 |
      93 |   throw new Error(`${msg} ${e.message}`);

      at errorHandle (packages/cli/src/utils/utils.ts:90:11)
      at ipfsCID_validate (packages/cli/src/controller/deploy-controller.ts:169:16)
      at Object.<anonymous> (packages/cli/src/controller/deploy-controller.spec.ts:146:23)

  ● CLI deploy, delete, promote › reDeploy to Hosted Service

    Failed to validate IPFS CID: Unauthorized

      88 | export function errorHandle(e: any, msg: string): Error {
      89 |   if (axios.isAxiosError(e) && e?.response?.data) {
    > 90 |     throw new Error(`${msg} ${e.response.data.message ?? e.response.data}`);
         |           ^
      91 |   }
      92 |
      93 |   throw new Error(`${msg} ${e.message}`);

      at errorHandle (packages/cli/src/utils/utils.ts:90:11)
      at ipfsCID_validate (packages/cli/src/controller/deploy-controller.ts:169:16)
      at Object.<anonymous> (packages/cli/src/controller/deploy-controller.spec.ts:156:23)


  ● Cli can create project › prepare correctly applies project details

    expect(received).toEqual(expected) // deep equality

    Expected: null
    Received: ["wss://rpc.polkadot.io/public-ws"]

      128 |     //spec version is  not returned from readDefaults
      129 |     //expect(projectSpec.specVersion).toEqual(specVersion);
    > 130 |     expect(projectSpec.endpoint).toEqual(endpoint);
          |                                  ^
      131 |     expect(projectSpec.author).toEqual(author);
      132 |     expect(projectSpec.description).toEqual(description);
      133 |     await promisify(rimraf)(tempPath);

      at Object.<anonymous> (packages/cli/src/controller/init-controller.test.ts:130:34)


  ● Codegen can generate schema › Should dedupe enums

    ENOENT: no such file or directory, open '/home/runner/work/subql/subql/packages/cli/test/schemaTest/src/types/models/foo.ts'




  ● Cli publish › should upload appropriate project to IPFS

    Command failed: npm i
    npm error code ERESOLVE
    npm error ERESOLVE unable to resolve dependency tree
    npm error
    npm error While resolving: mocked_starter@1.0.0
    npm error Found: @polkadot/api@10.13.1
    npm error node_modules/@polkadot/api
    npm error   dev @polkadot/api@"^10" from the root project
    npm error
    npm error Could not resolve dependency:
    npm error peer @polkadot/api@"^11" from @subql/types@3.6.0
    npm error node_modules/@subql/types
    npm error   dev @subql/types@"latest" from the root project
    npm error
    npm error Fix the upstream dependency conflict, or retry
    npm error this command with --force or --legacy-peer-deps
    npm error to accept an incorrect (and potentially broken) dependency resolution.
    npm error
    npm error
    npm error For a full report see:
    npm error /home/runner/.npm/_logs/2024-05-31T03_51_19_125Z-eresolve-report.txt

    npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-05-31T03_51_19_125Z-debug-0.log

      53 |
      54 |   // Install dependencies
    > 55 |   childProcess.execSync(`npm i`, {cwd: projectDir});
         |                ^
      56 |
      57 |   await Codegen.run(['-l', projectDir]);
      58 |   await Build.run(['-f', projectDir]);

      at createTestProject (packages/cli/src/createProject.fixtures.ts:55:16)
      at Object.<anonymous> (packages/cli/src/controller/publish-controller.spec.ts:22:18)

  ● Cli publish › convert to deployment and removed descriptive field

    Command failed: npm i
    npm error code ERESOLVE
    npm error ERESOLVE unable to resolve dependency tree
    npm error
    npm error While resolving: mocked_starter@1.0.0
    npm error Found: @polkadot/api@10.13.1
    npm error node_modules/@polkadot/api
    npm error   dev @polkadot/api@"^10" from the root project
    npm error
    npm error Could not resolve dependency:
    npm error peer @polkadot/api@"^11" from @subql/types@3.6.0
    npm error node_modules/@subql/types
    npm error   dev @subql/types@"latest" from the root project
    npm error
    npm error Fix the upstream dependency conflict, or retry
    npm error this command with --force or --legacy-peer-deps
    npm error to accept an incorrect (and potentially broken) dependency resolution.
    npm error
    npm error
    npm error For a full report see:
    npm error /home/runner/.npm/_logs/2024-05-31T03_51_19_125Z-eresolve-report.txt

    npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-05-31T03_51_19_125Z-debug-0.log

      53 |
      54 |   // Install dependencies
    > 55 |   childProcess.execSync(`npm i`, {cwd: projectDir});
         |                ^
      56 |
      57 |   await Codegen.run(['-l', projectDir]);
      58 |   await Build.run(['-f', projectDir]);

      at createTestProject (packages/cli/src/createProject.fixtures.ts:55:16)
      at Object.<anonymous> (packages/cli/src/controller/publish-controller.spec.ts:22:18)

  ● Cli publish › convert js object to JSON object

    Command failed: npm i
    npm error code ERESOLVE
    npm error ERESOLVE unable to resolve dependency tree
    npm error
    npm error While resolving: mocked_starter@1.0.0
    npm error Found: @polkadot/api@10.13.1
    npm error node_modules/@polkadot/api
    npm error   dev @polkadot/api@"^10" from the root project
    npm error
    npm error Could not resolve dependency:
    npm error peer @polkadot/api@"^11" from @subql/types@3.6.0
    npm error node_modules/@subql/types
    npm error   dev @subql/types@"latest" from the root project
    npm error
    npm error Fix the upstream dependency conflict, or retry
    npm error this command with --force or --legacy-peer-deps
    npm error to accept an incorrect (and potentially broken) dependency resolution.
    npm error
    npm error
    npm error For a full report see:
    npm error /home/runner/.npm/_logs/2024-05-31T03_51_19_125Z-eresolve-report.txt

    npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-05-31T03_51_19_125Z-debug-0.log

      53 |
      54 |   // Install dependencies
    > 55 |   childProcess.execSync(`npm i`, {cwd: projectDir});
         |                ^
      56 |
      57 |   await Codegen.run(['-l', projectDir]);
      58 |   await Build.run(['-f', projectDir]);

      at createTestProject (packages/cli/src/createProject.fixtures.ts:55:16)
      at Object.<anonymous> (packages/cli/src/controller/publish-controller.spec.ts:22:18)


  ● Intergration test - Publish › overwrites any exisiting CID files

    Command failed: npm i
    npm error code ERESOLVE
    npm error ERESOLVE unable to resolve dependency tree
    npm error
    npm error While resolving: mocked_starter@1.0.0
    npm error Found: @polkadot/api@10.13.1
    npm error node_modules/@polkadot/api
    npm error   dev @polkadot/api@"^10" from the root project
    npm error
    npm error Could not resolve dependency:
    npm error peer @polkadot/api@"^11" from @subql/types@3.6.0
    npm error node_modules/@subql/types
    npm error   dev @subql/types@"latest" from the root project
    npm error
    npm error Fix the upstream dependency conflict, or retry
    npm error this command with --force or --legacy-peer-deps
    npm error to accept an incorrect (and potentially broken) dependency resolution.
    npm error
    npm error
    npm error For a full report see:
    npm error /home/runner/.npm/_logs/2024-05-31T03_51_24_636Z-eresolve-report.txt

    npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-05-31T03_51_24_636Z-debug-0.log

      53 |
      54 |   // Install dependencies
    > 55 |   childProcess.execSync(`npm i`, {cwd: projectDir});
         |                ^
      56 |
      57 |   await Codegen.run(['-l', projectDir]);
      58 |   await Build.run(['-f', projectDir]);

      at createTestProject (packages/cli/src/createProject.fixtures.ts:55:16)
      at Object.<anonymous> (packages/cli/src/commands/publish.test.ts:16:18)

  ● Intergration test - Publish › create ipfsCID file stored in local with dictiory path

    Command failed: npm i
    npm error code ERESOLVE
    npm error ERESOLVE unable to resolve dependency tree
    npm error
    npm error While resolving: mocked_starter@1.0.0
    npm error Found: @polkadot/api@10.13.1
    npm error node_modules/@polkadot/api
    npm error   dev @polkadot/api@"^10" from the root project
    npm error
    npm error Could not resolve dependency:
    npm error peer @polkadot/api@"^11" from @subql/types@3.6.0
    npm error node_modules/@subql/types
    npm error   dev @subql/types@"latest" from the root project
    npm error
    npm error Fix the upstream dependency conflict, or retry
    npm error this command with --force or --legacy-peer-deps
    npm error to accept an incorrect (and potentially broken) dependency resolution.
    npm error
    npm error
    npm error For a full report see:
    npm error /home/runner/.npm/_logs/2024-05-31T03_51_24_636Z-eresolve-report.txt

    npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-05-31T03_51_24_636Z-debug-0.log

      53 |
      54 |   // Install dependencies
    > 55 |   childProcess.execSync(`npm i`, {cwd: projectDir});
         |                ^
      56 |
      57 |   await Codegen.run(['-l', projectDir]);
      58 |   await Build.run(['-f', projectDir]);

      at createTestProject (packages/cli/src/createProject.fixtures.ts:55:16)
      at Object.<anonymous> (packages/cli/src/commands/publish.test.ts:16:18)

  ● Intergration test - Publish › file name consistent with manfiest file name, if -f <manifest path> is used

    Command failed: npm i
    npm error code ERESOLVE
    npm error ERESOLVE unable to resolve dependency tree
    npm error
    npm error While resolving: mocked_starter@1.0.0
    npm error Found: @polkadot/api@10.13.1
    npm error node_modules/@polkadot/api
    npm error   dev @polkadot/api@"^10" from the root project
    npm error
    npm error Could not resolve dependency:
    npm error peer @polkadot/api@"^11" from @subql/types@3.6.0
    npm error node_modules/@subql/types
    npm error   dev @subql/types@"latest" from the root project
    npm error
    npm error Fix the upstream dependency conflict, or retry
    npm error this command with --force or --legacy-peer-deps
    npm error to accept an incorrect (and potentially broken) dependency resolution.
    npm error
    npm error
    npm error For a full report see:
    npm error /home/runner/.npm/_logs/2024-05-31T03_51_24_636Z-eresolve-report.txt

    npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-05-31T03_51_24_636Z-debug-0.log

      53 |
      54 |   // Install dependencies
    > 55 |   childProcess.execSync(`npm i`, {cwd: projectDir});
         |                ^
      56 |
      57 |   await Codegen.run(['-l', projectDir]);
      58 |   await Build.run(['-f', projectDir]);

      at createTestProject (packages/cli/src/createProject.fixtures.ts:55:16)
      at Object.<anonymous> (packages/cli/src/commands/publish.test.ts:16:18)

Report generated by 🧪jest coverage report action from 87dad2e

@jiqiang90
Copy link
Contributor

It will also face decode error at

api.query.system.events.at(hash).catch((e) => {

@yoozo
Copy link
Collaborator Author

yoozo commented May 29, 2024

The comments have all been fixed.

Copy link
Collaborator

@stwiname stwiname left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking much better, it needs to catch a specific type of error though, not just all errors from these methods.

@jiqiang90 can you please help finding a reproducible case if needed

@jiqiang90
Copy link
Contributor

The updated error message should be for a specific error not all errors failing to index blocks.

It needs to handle a specific error type here https://github.com/subquery/subql/blob/main/packages/node/src/utils/substrate.ts#L257

I think from our previous experience, only these two calls when fetch block and get event will throw decode error, I'm happy with this change.

@yoozo we can try this project , with change start height to 43249 and remove chainTypes. https://github.com/subquery/subql-starter/blob/main/Karura/karura-starter/project.ts

Will be nice we and include a unit test here too

const api = await ApiPromise.create({ provider });

await expect(getBlockByHeight(api, 86614)).rejects.toThrow(
/Unable to decode|failed decoding|unknown type/,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We want to test that it throws an error with our message and not the underlying error that we wrap

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think both are needed.

@stwiname stwiname merged commit cf8cec6 into main May 31, 2024
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Improve error message for pokladot failing to decode block
3 participants