特定のサイクルでベイク/承認権を決定するために使用されたロールスナップショットを見つけるために使用されるrpcエンドポイントはどれですか?
1 回答
- 投票
-
- 2019-05-16
特定のサイクルのスナップショットに関する情報は、生のコンテキストから取得できます.
var cycle = 100; var level = cycle * 4096 + 1; var snapshot = get('/chains/main/blocks/{level}/context/raw/json/cycle/{cycle}/roll_snapshot'); var snapshot_block = ((cycle - 7) * 4096 + 1) + (snapshot + 1) * 256 - 1; var balance = get('/chains/main/blocks/{snapshot_block}/context/contracts/KT1.../balance');
You can get information about snapshot for a given cycle from the raw context:
var cycle = 100; var level = cycle * 4096 + 1; var snapshot = get('/chains/main/blocks/{level}/context/raw/json/cycle/{cycle}/roll_snapshot'); var snapshot_block = ((cycle - 7) * 4096 + 1) + (snapshot + 1) * 256 - 1; var balance = get('/chains/main/blocks/{snapshot_block}/context/contracts/KT1.../balance');
-
_snapshot \ _block_の定義では、(snapshot + 1)ではなく(snapshot-1)にする必要があると思いますIn the definition of _snapshot\_block_ I think it should be (snapshot - 1) instead of (snapshot + 1)
- 0
- 2019-06-20
- TEZOS on the ROAD
-
私はあなたが間違っているのではないかと思います;)あなたはそれをチェックしようとしましたか?I'm afraid you're wrong ;) Did you try to check it?
- 0
- 2019-06-20
- Groxan
-
はい私は間違っていましたスナップショットインデックスの範囲は0から15ですが、* 256の後に-1があります.yes I was wrong the snapshot index ranges from 0 to 15 but there is a -1 after * 256.
- 0
- 2019-06-21
- TEZOS on the ROAD
-
(これは面白いですが、コメントを投稿するには5分の制限があります)とにかく、たとえば、ブロック範囲が{1〜4096}の最初のスナップショットサイクルでは、最初のスナップショットはブロック256で取得され、次に512で取得されます..つまり、snapshot_block方程式は((7-7)* 4096 +1)+(snap + 1)* 256-1です.snap={0,1}の場合、snapshot_block={256,512}になります(tzscan.ioで確認しました)(this is funny there is a 5 min limit to post a comment), anyway for example for the first snapshot cycle with blocks range {1 - 4096}, the first snapshot is taken at block 256, then the second at 512 and so on. That means that the snapshot_block equation is ((7 - 7) *4096 +1) + (snap + 1) *256 -1. With snap={0,1} we have snapshot_block={256,512} (I checked on tzscan.io)
- 0
- 2019-06-21
- TEZOS on the ROAD
-
うーん、ソースhttps://gitlab.com/tezos/tezos/blob/master/src/proto_alpha/lib_protocol/apply.ml#L968を調べたところ、ずっと間違っていたことがわかりました...どうもありがとうございました!Hmm, I have looked at the sources https://gitlab.com/tezos/tezos/blob/master/src/proto_alpha/lib_protocol/apply.ml#L968 and found that the whole time was wrong... Thanks a lot!
- 0
- 2019-06-24
- Groxan
-
これは正しく理解するために重要なようです.チェーンからの直接の証拠は可能だと思われますか?This seems kind of important to get right. Direct evidence from the chain seems possible?
- 0
- 2019-06-24
- Tom
-
少し紛らわしいかもしれませんが、以前のスナップショット式です.が誤って1ブロックだけシフトされた場合、実際のスナップショットブロックの1ブロック前に委任が追加/削除された場合にのみ問題が発生します.ここにいくつかの便利なRPCがあります.最初は、特定のサイクルの最初から最後のブロックを示しています../tezos-clientrpcget/chains/main/ブロック/head/helpers/levels_in_current_cycle? "offset=<-some#>" 次のrpcはスナップショット番号を示します:./tezos-client rpcget/chains/main/blocks/
/context/raw/json/cycle/ /roll_snapshot( は最初のブロック内の任意のブロックにすることができます-最後の範囲) it can be a bit confusing but the earlier snapshot eq. was only incorrectly shifted by 1 block, it would have been a problem only if a delegation was added/removed 1 block before the actual snapshot block. Here a couple of useful rpc. The first shows the first-last block of a particular cycle: ./tezos-client rpc get /chains/main/blocks/head/helpers/levels_in_current_cycle?"offset=<-some#>" the next rpc shows the snapshot number: ./tezos-client rpc get /chains/main/blocks//context/raw/json/cycle/ /roll_snapshot ( can be any block within the first-last range) - 0
- 2019-06-26
- TEZOS on the ROAD
サイクルxのすべてのパン屋について、そのサイクルでのパン作りの権利に貢献した、所有しているロールの数を知りたいと思います.そのためには、サイクルx-7で選択された特定のスナップショット中に所有していたロールの数を知る必要があると思います.完全なアーカイブノードからこの数を取得する方法はありますか?