スタンドアロンモードでの保存済みレジャーの読み込み
以前にディスクに保存していた履歴レジャーバージョンを使用して、rippled
サーバをスタンドアロンモードで起動できます。例えば、以前にrippled
サーバをXRP Ledgerのピアツーピアネットワーク(本番Mainnet、Testnet、Devnetなど)と同期していた場合は、過去にサーバで使用できていた任意のレジャーバージョンを読み込むことができます。
履歴レジャーバージョンを読み込むことにより、レジャーを「リプレイ」して、トランザクションがネットワークのルールに従って処理されていたか検証したり、異なるAmendmentを有効にした場合のトランザクションセットの処理の結果を比較したりすることができます。万が一、XRP Ledgerのコンセンサスメカニズムに対する攻撃が発生して共有レジャーの状態に悪影響が及んでも、このプロセスを始めることで、バリデータのコンセンサスを以前の良好だったネットワークの状態に「ロールバック」できる可能性があります。
1. rippled
を通常の方法で起動します。
既存のレジャーを読み込むには、最初にネットワークから当該のレジャーを取得する必要があります。rippled
をオンラインモードで通常の方法で起動します。
rippled --conf=/path/to/rippled.cfg
2. rippled
が同期されるまで待ちます。
server_infoメソッドを使用して、ネットワークに対するサーバの状態を確認します。server_state
に以下のいずれかの値が示される場合は、サーバは同期しています。
full
proposing
validating
詳細は、考えられるサーバの状態をご覧ください。
3. (省略可)特定のレジャーバージョンを取得します。
最新レジャーのみを必要とする場合は、このステップをスキップできます。
特定の履歴レジャーバージョンを読み込むには、ledger_requestメソッドを実行してrippled
にそのレジャーバージョンを取得させます。rippled
にまだレジャーバージョンがない場合は、レジャーの取得が完了するまでledger_request
コマンドを複数回実行する必要があります。
特定の履歴レジャーバージョンをリプレイする場合は、リプレイするレジャーバージョンとその直前のレジャーバージョンの両方を取得する必要があります。(前のレジャーバージョンにより、リプレイするレジャーバージョンに記述されている変更を適用する初期状態が設定されます。)
4. rippled
をシャットダウンします。
stopメソッドを使用します。
rippled stop --conf=/path/to/rippled.cfg
5. スタンドアロンモードでrippled
を起動します。
最新のレジャーバージョンを読み込むには、-a
オプションと--load
オプションを指定してサーバを起動します。
rippled -a --load --conf=/path/to/rippled.cfg
特定の履歴レジャーを読み込むには、--load
パラメーターと--ledger
パラメーターを使用し、読み込むレジャーバージョンのレジャーインデックスまたは識別用ハッシュを指定してサーバを起動します。
rippled -a --load --ledger 19860944 --conf=/path/to/rippled.cfg
スタンドアロンモードでrippled
を起動するときに使用可能なオプションについての詳細は、コマンドラインの使用: スタンドアロンモードのオプション をご覧ください。
6. レジャーを手動で進めます。
スタンドアロンモードで--ledger
を使用してレジャーを読み込むと、読み込まれたレジャーが現行のオープンレジャーになるので、レジャーを手動で進める必要があります。
rippled ledger_accept --conf=/path/to/rippled.cfg