Tezos RPCは、現在のチェックポイントより下のブロックで応答しません
2 回答
- 投票
-
- 2019-07-09
あなたが参照したブログ投稿には次のように書かれています:
full
モードで実行されているノードは、現在のチェックポイントより古いブロックも含め、すべてのブロックのフルチェーンデータを保存します.より正確には、これらのブロックのヘッダーと操作を保持します.ただし、アーカイブされたコンテキストと操作を破棄し、受信をブロックします.このようなブロック情報は「プルーニング」されていると言います.ネットワークから取得した必要なビットのみを保持し、それらから再構築できるすべてのものを削除します.これは、
../<block_id>/header
エンドポイントが機能する理由を説明していますが、「完全な情報」エンドポイントでは、プルーニングされた情報が必要になる可能性があります.ただし、ブログ投稿からのこの引用は、../<block_id>/operations
エンドポイントも同様に機能し、これら2つの部分から必要なすべての情報を再構築できることを意味します.データ(ヘッダーと操作).The blog post you referenced says that:
A node running in
full
-mode stores the full chain data for all blocks, even the ones older than the current checkpoint. More precisely, it keeps the headers and the operations for these blocks. However, it discards the archived context and the operation and block receipts. We say that such a block information is “pruned”: we keep only the necessary bits that we got from the network, and drop everything that can be reconstructed from them.So this explains why the
../<block_id>/header
endpoint works for you, while the “full information” endpoint probably requires some information that is pruned. However, this quote from the blog post implies that the../<block_id>/operations
endpoint should work as well, and you should be able to reconstruct all the information you need from these two pieces of data (header and operations).-
残念ながら、 `GET/chain/main/blocks/212993/operations`は期待どおりに機能しますが、` GET/chain/main/blocks/212992/operations`は機能しません.Unfortunately, `GET /chains/main/blocks/212993/operations` works as expected but `GET /chains/main/blocks/212992/operations` doesn't
- 1
- 2019-07-09
- Ilya Peresadin
-
/OperationsRPCには整理された情報が必要です.レシートなしで生の操作データを取得するには、新しいRPCを追加する必要があります.The /operations RPC needs pruned info. A new RPC should be added for getting the raw operations data, without the receipts.
- 1
- 2019-07-10
- Tom
-
- 2019-12-26
これはフルモードの既知の問題です-
フルノードが操作データをクエリできないを参照してください詳細については、最新のチェックポイントより前のブロックから. This is a known issue with full-mode - please see Full node unable to query operation data from blocks prior to most recent checkpoint for more info.
Tezosノードの独自のインスタンスを実行しましたが、ノードが現在のチェックポイントより下のブロックで応答しないようです.
GET /chains/main/checkpoint
応答:つまり、ご覧のとおり、history_modeは「フル」です.この記事によると https://blog.nomadic -labs.com/introducing-snapshots-and-history-modes-for-the-tezos-node.html このモードのノードはすべてのブロックを保存します.
しかし、
GET /chains/main/blocks/212992
の応答は404Not Found、 ただし、GET /chains/main/blocks/212992/header
応答はブロックヘッダーです.GET /chains/main/blocks/212993
は正しく機能し、期待どおりにブロックに応答します.dockerイメージを使用してノードをデプロイしました.
UPD :
GET /chains/main/blocks/212992/operations
も機能しません