0

I am running a Babylonnet Full Node.

When I try to visit this link:

http://domain.com:8732/chains/main/blocks/BM3JSJhststG2TjxGu6K2RKsX6t4ByrcesGLfHypLRtZdaa7kn1~316538

It works. But when I try to visit this link: http://domain.com:8732/chains/main/blocks/BM3JSJhststG2TjxGu6K2RKsX6t4ByrcesGLfHypLRtZdaa7kn1~316535

It does not work. But example if you try it on this public node, this feature works well. https://tezos-staging.cryptonomic-infra.tech/chains/main/blocks/BLov9VuzMSnLKdjq8FvZhhw4ZsyR5cxkabQryyjb6eZ8qeSbYws~838089

https://tezos-staging.cryptonomic-infra.tech/chains/main/blocks/BLov9VuzMSnLKdjq8FvZhhw4ZsyR5cxkabQryyjb6eZ8qeSbYws~838085

How to fix it? I think changing node mode to archive is a possible solution.

result of tezos-client rpc get /chains/main/checkpoint:

{ "block":
    { "level": 321547, "proto": 1,
      "predecessor": "BKrwGuzKwYrc1KDkaCBiD1nGEyNNdnRg56ATuSLjLWP9bVFWS8X",
      "timestamp": "2020-02-26T03:35:18Z", "validation_pass": 4,
      "operations_hash":
        "LLoZjFRPiqiXf83HkjW8o3EnP5R1k57DAmooNTEBaiMwmsx89gUsw",
      "fitness": [ "01", "000000000004e80a" ],
      "context": "CoW8gQDQEuWgoXpSnEi5XAzntccWVw1uomyWpwW5RkVqGrY61rgm",
      "protocol_data":
        "0000756e6b6f2c4fda1d00660bcdca9aa1e8fa87b76e82926a77084bc52c4461b3098925e3473ecdfb7bf2d524aceb8f5577f092df1efd9bb6226140e1a0a5ab8409b18915a8d53ebd045b" },
  "save_point": 321547, "caboose": 0, "history_mode": "full" }
  • Weird, unless I misunderstand the history modes, this should work. According to tezos.gitlab.io/user/history_modes.html, a full node should have access to block information of all blocks (but not the context, inluding balances presumably). What you're requesting looks more like it should be block info, and not context. Do you get an error message? – arvidj Feb 27 at 14:35
  • Could you give the output of tezos-client rpc get /chains/main/checkpoint ? – arvidj Feb 27 at 14:36
  • @arvidj I updated my message. I added result of the tezos-client rpc get /chains/main/checkpoint to the first message. Actually I am trying to run my own Conseil server and my own Node. When I run conseil with my own node conseil gives error: I fetched a block definition from tezos node that I'm unable to decode: But when I use my conseil with one of the public Babylonnet nodes, conseil works. And when I mention about this thing to Conseil team they said your problem about your node. – bearddev Feb 27 at 14:45
  • Hi all. This rpc call includes some metadata fields that require having a context for the targeted block. As a consequence, if the targeted block level is under the save point block level (which is usually the same as the checkpoint), the rpc fails. You should still be able to get some information about this pruned block with the following header rpc call. http://18.197.75.44:8732/chains/main/blocks/BM3JSJhststG2TjxGu6K2RKsX6t4ByrcesGLfHypLRtZdaa7kn1~316535/header – phink Feb 27 at 15:16
  • @phink I think you can post your comment as an answer. – arvidj Feb 27 at 15:21
0

Hi and thanks for your first contribution to tezos stackexchange!

Contrary to the impression one might get from https://tezos.gitlab.io/user/history_modes.html, this call will not work on a Full Node, only on archive nodes, for a bit more information see this gitlab issue:

https://gitlab.com/tezos/tezos/issues/562

I also do not recommend opening your RPC port to the world like you did, that is potentially a security issue, you want to be the only one who can call the :8732/:.. urls!!

Public nodes like cryptonomic ones, or https://rpc.tulip.tools/#/ or similar, do not expose the RPC ports directly, but have some kind of reverse proxy that can block malicious calls!

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.