Midnight Node 2.1.0 RC2 がブリッジコストとノードのブートストラップを修正

最新のリリース候補は、検証可能なランタイムを公開し、過小評価されていたブリッジ処理を是正し、Preview と Devnet の新規ノードに影響していたブートストラップ障害を修正する。Devnet と QANet 向けのプレリリースのままである。

By SongMarketCap

Cardano News - Midnight Node 2.1.0 RC2 がブリッジコストとノードのブートストラップを修正

Midnight は 9 月 17 日に Node 2.1.0 RC2 をリリースし、2.1 系が最終リリースへ前進するのを妨げていた二つの技術的なブロッカーを取り除いた。

このアップデートは新たなプロトコル挙動を導入しないが、ランタイムの検証方法、ブリッジのワークロードの測定方法、そして新規ノードが Preview と Devnet に接続する方法を変更する。

Midnight が検証可能なランタイムを公開

Midnight Node 2.1.0 RC2 は、決定的なランタイム WASM ファイルと、それがどのように生成されたかを記録する srtool ダイジェストを同梱した、2.1 系で最初の候補である。

ランタイム WASM には Midnight ノードが実行するロジックが含まれている。決定的ビルドにより、オペレーターやガバナンス参加者は公開されたアーティファクトがソースコードに対応していることを確認できる。

RC1 には別個の WASM アーティファクトが含まれていなかった。そのため、set_code アクションによってアップグレードを承認する際に参照できる、独立に再現可能なファイルがガバナンスに欠けていた。

RC2 では、検証に必要なランタイムファイル、暗号学的ハッシュ、およびビルドの出自情報が提供される。ランタイムを有効化するには依然として協調的なガバナンスアクションが必要だが、必要な技術的アーティファクトは入手可能になった。

このリリースには RC1 と比べて 5 件の追加コミットが含まれる。プロトコル仕様を変更したりユーザー向けの新機能を導入したりはせず、最終リリース準備に焦点を絞った内容になっている。

Midnight が Cardano ブリッジのコストを是正

新たなベンチマークテストにより、pallet_c2m_bridgepallet_partner_chains_bridge 内の関数に対し、リファレンス検証者ハードウェア上での実際の実行コストのおよそ半分の重みが割り当てられていたことが判明した。

以前のウェイトは、Midnight の指定ベンチマーク用マシンではなく開発者のワークステーションで生成されていた。リファレンスハードウェアでテストをやり直した結果、ブリッジ操作の測定ウェイトは 1.92 倍から 2.51 倍の範囲で増加した。

このアップデートは処理を計算的に高コストにするものではない。既に消費されていたリソースを、ランタイムがより正確に測定できるようにするものだ。

影響を受けた関数の一つである handle_transfers は、ブロックの必須処理として実行される。必須呼び出しが過小価格であると、残余キャパシティが消費された際にその処理を延期できないため、ブロック処理が想定するリソース上限を超えてしまう可能性がある。

修正対象には、Cardano から Midnight へのブリッジや、cNIGHT に関連する Cardano の観測基盤が含まれる。これらのシステムは、Cardano 上の NIGHT のアクティビティを Midnight チェーンと接続する。より正確なリソース価格付けにより、検証者ハードウェアでの NIGHT 関連処理の測定コストに合わせてブリッジのキャパシティが調整される。

ジェネシスの修正により新規ノードのブートストラップが復旧

RC2 はまた、Preview と Devnet 向けの同梱チェーン仕様とジェネシスアーティファクトを置き換える。

以前のファイルを用いて空のディスクから起動したノードは、誤ったジェネシスハッシュを計算してしまう可能性があった。既存のブートノードはそれを別のチェーンに属すると判断して接続を拒否し、当該ノードはピアのいないブロックゼロの状態に取り残されていた。

この不具合は、既に接続と同期を完了しているノードには影響しない。正当なジェネシスデータがローカルに保存されているためである。影響を受けた新規インストールのオペレーターは、既存のベースパスを削除し、RC2 に同梱されたファイルを用いて再度ブートストラップする必要がある。

既に同期済みのノードに、リセットや再同期、再インデックスは不要である。RC1 やそれ以前のベータ版からの直接アップグレードパスもサポートされない。これらの版はデプロイの基準ではなく開発候補だったためである。サポートされる経路は、1.0.300 ランタイムからの協調的なハードフォークのままである。

Midnight 2.0 は最終リリースに到達しなかったため、2.1.0 が Node 1.0.1 に続く新しいメジャー系の最初の完成版となる予定である。RC2 は最終的なメインネットリリースではないが、ガバナンスは検証可能なランタイムアーティファクトを入手し、ブリッジ呼び出しは測定された実行コストを用い、Preview と Devnet の新規ノードは稼働中ネットワークで用いられているジェネシスデータでブートストラップできるようになった。