Block.forgedBy
-> StakePool
およびStakePool.blocksForged
-> [Block]
のモデルを有効にするには
https://github.com/input-output-hk/cardano-ledger-specs/pull/1637を参照してください
これはslot_leaderテーブルと重複していませんか?
はい、slot_leadersテーブルからプールIDを取得できます。 ただし、vkeyの一部ではなく、スロットリーダーテーブルにプールIDを含めることができれば非常に便利です。 現在、次のようにvkeyをプールIDに変換し、スロットリーダーテーブルの新しい列に保存しています。
vkey = "5820"+p['hash'][2:]
h = hashlib.blake2b(digest_size=28)
h.update(binascii.unhexlify(p['hash'][2:]))
poolid = h.hexdigest()
これにより、結合を実行し、プールごとにブロックをかなり簡単に構築できます。
@disassemblerはい、そうです。 タイトルを更新して、簡単に参加できるキーでリーダーテーブルを拡張しました
@papacarp回避策を追加していただきありがとうございます。 cardano-db-sync
によって管理されるテーブルのスキーマを変更することは、 @ erikdによって推奨されているため、これからリファクタリングできることを願っています。
最も参考になるコメント
はい、slot_leadersテーブルからプールIDを取得できます。 ただし、vkeyの一部ではなく、スロットリーダーテーブルにプールIDを含めることができれば非常に便利です。 現在、次のようにvkeyをプールIDに変換し、スロットリーダーテーブルの新しい列に保存しています。
これにより、結合を実行し、プールごとにブロックをかなり簡単に構築できます。