Error 404 al llamar a algún ancestro de bloque
1 respuesta
- votos
-
- 2019-12-26
Puede llamar alpunto de control rpc:
http://mainnet.tezos.cryptium.ch:8732/chains/main/checkpoint
que regresa
{"block": {"level":729089, "proto":5, "predecessor":"BMF3ELahUsKsvSfct9qVFWX3Pf6aV2sLpKRgWkwTePpmo3tNjEG", "timestamp":"2019-12-09T21:56:50Z", "validation_pass":4, "operations_hash":"LLob8aa16cFyHG1rCrMQ2NrLDtCDegMNQLXmRWCHFD86KmYefbwbi", "fitness":["01","0000000000012001"], "context":"CoWPc7UaEHYdXJ3PEpp6CyKB11K9XgX4n87cJpAMuFzbyAerrHSD", "protocol_data": "0000756e6b6f8a3562bc00f131365318490b14b69329500a1f6e2000f0f767edf777ec9c6f33c6ff149eee289f642b2bdcbfdd8d54013da72eeedea56c1b828ba11c8adbd67f63f5e93578"}, "save_point":729089, "caboose":0, "history_mode":"full" }
history_modeparaestenodoestá "lleno" y losnodos completoseliminan los datos queno sean losencabezados delbloque y las operaciones de losbloques antes delpunto de control actual.
Consultar soloelencabezado delbloqueen modo completofuncionaen cualquiernivel,porejemplo:
curl -v http://mainnet.tezos.cryptium.ch:8732/chains/main/blocks/BKrq16vch5v3iEE1hHSMENLh54vBikkmqYLDv4j7hANx6ZE3Rmb~72755/header
funciona. Desafortunadamente,elpuntofinal de RPCpara las operaciones delbloqueen modo completoestá actualmente roto - veaelproblema "Elnodo completonopuede consultar datos de operaciones debloques anteriores alpunto de controlmás reciente ":Actualmente,estono semuestraparamainnet.smartpy.io (quees unnodo de archivo).
Editar:el rpc ahoratambiénestá abiertoen mainnet.smartpy.io (ymuestra "archivo").
{ "block": { "level": 729089, "proto": 5, "predecessor": "BMF3ELahUsKsvSfct9qVFWX3Pf6aV2sLpKRgWkwTePpmo3tNjEG", "timestamp": "2019-12-09T21:56:50Z", "validation_pass": 4, "operations_hash": "LLob8aa16cFyHG1rCrMQ2NrLDtCDegMNQLXmRWCHFD86KmYefbwbi", "fitness": [ "01", "0000000000012001" ], "context": "CoWPc7UaEHYdXJ3PEpp6CyKB11K9XgX4n87cJpAMuFzbyAerrHSD", "protocol_data": "0000756e6b6f8a3562bc00f131365318490b14b69329500a1f6e2000f0f767edf777ec9c6f33c6ff149eee289f642b2bdcbfdd8d54013da72eeedea56c1b828ba11c8adbd67f63f5e93578" }, "save_point": 0, "caboose": 0, "history_mode": "archive" }```
You can call the checkpoint rpc:
http://mainnet.tezos.cryptium.ch:8732/chains/main/checkpoint
which returns
{"block": {"level":729089, "proto":5, "predecessor":"BMF3ELahUsKsvSfct9qVFWX3Pf6aV2sLpKRgWkwTePpmo3tNjEG", "timestamp":"2019-12-09T21:56:50Z", "validation_pass":4, "operations_hash":"LLob8aa16cFyHG1rCrMQ2NrLDtCDegMNQLXmRWCHFD86KmYefbwbi", "fitness":["01","0000000000012001"], "context":"CoWPc7UaEHYdXJ3PEpp6CyKB11K9XgX4n87cJpAMuFzbyAerrHSD", "protocol_data": "0000756e6b6f8a3562bc00f131365318490b14b69329500a1f6e2000f0f767edf777ec9c6f33c6ff149eee289f642b2bdcbfdd8d54013da72eeedea56c1b828ba11c8adbd67f63f5e93578"}, "save_point":729089, "caboose":0, "history_mode":"full" }
history_mode for this node is "full" and full nodes prune data other than block's headers and operations from blocks before the current checkpoint.
Querying only the block's header in full mode works at any level, e.g.:
curl -v http://mainnet.tezos.cryptium.ch:8732/chains/main/blocks/BKrq16vch5v3iEE1hHSMENLh54vBikkmqYLDv4j7hANx6ZE3Rmb~72755/header
works. Unfortunately, the RPC endpoint for block's operations in full mode is currently broken - see issue "Full node unable to query operation data from blocks prior to most recent checkpoint":This is currently not shown for mainnet.smartpy.io (which is an archive node).
Edit: the rpc is now opened as well on mainnet.smartpy.io (and shows "archive").
{ "block": { "level": 729089, "proto": 5, "predecessor": "BMF3ELahUsKsvSfct9qVFWX3Pf6aV2sLpKRgWkwTePpmo3tNjEG", "timestamp": "2019-12-09T21:56:50Z", "validation_pass": 4, "operations_hash": "LLob8aa16cFyHG1rCrMQ2NrLDtCDegMNQLXmRWCHFD86KmYefbwbi", "fitness": [ "01", "0000000000012001" ], "context": "CoWPc7UaEHYdXJ3PEpp6CyKB11K9XgX4n87cJpAMuFzbyAerrHSD", "protocol_data": "0000756e6b6f8a3562bc00f131365318490b14b69329500a1f6e2000f0f767edf777ec9c6f33c6ff149eee289f642b2bdcbfdd8d54013da72eeedea56c1b828ba11c8adbd67f63f5e93578" }, "save_point": 0, "caboose": 0, "history_mode": "archive" }```
-
Punto de control delnodo SmartPy: https://mainnet.smartpy.io/chains/main/checkpointSmartPy node checkpoint : https://mainnet.smartpy.io/chains/main/checkpoint
- 2
- 2019-12-26
- RoMarQ
-
@RoMarQ,editémi respuestaparaincluir la salida delpunto de control rpcen mainnet.smartpy.io.@RoMarQ, I edited my answer to include the output of the checkpoint rpc on mainnet.smartpy.io.
- 2
- 2019-12-26
- FFF
-
¡Gracias!Según https://blog.nomadic-labs.com/introducing-snapshots-and-history-modes-for-the-tezos-node.html,el conjunto completo de operaciones seguardaen elnodo completo.¿Significa que la compensación se consideraparte del contexto?EDITAR: consulte https://tezos.stackexchange.com/questions/1422/tezos-rpc-doesnt-respond-with-blocks-below-the-current-checkpointpara obtenermás detallesThanks! According to https://blog.nomadic-labs.com/introducing-snapshots-and-history-modes-for-the-tezos-node.html the full set of operations are saved in full node. Does it mean offset is considered part of context ? EDIT: see https://tezos.stackexchange.com/questions/1422/tezos-rpc-doesnt-respond-with-blocks-below-the-current-checkpoint for more details
- 0
- 2019-12-26
- Ezy
Estoy observando un comportamiento diferentepara algunas llamadas rpc
nome da datos (error 404)
sinembargo,cuando lo hago
Obtengo lainformación sobreelbloque
BLeam7Xqdw7w7ydU7g38gs82XJE6wNZMfm61cArUPaSFBzJ6q5r
. ¿Por quéeseso?Tengaen cuenta que si solicito un desplazamientomás reciente como
~1
,ambos devuelven datosparaelbloqueBLN3bh4ZCpBtade3VGbGbFWz2Nhvah3SqGKYZkdL6tbQ7FMD6f6
EDITAR: unapregunta relacionada con respecto a lanaturaleza de cómo losnodos completos y de archivo difierenparaesta llamada RPCestá disponible aquí