Trouble Shooting

トラブルシューティングガイド

何か新しいテクノロジーを操作する際、エラーはつきものです。

暗号通貨のように、現在黎明期にあるようなテクノロジーであれば特に、一般ユーザーがエラー・問題に直面するという状況がしばしば発生します

EOS に関しても、Block.one やさまざまなコミュニティの努力によって各種プラットフォームやプロダクトが継続的に改善されてきているものの、ユーザビリティという観点からはまだまだ向上の余地があります。

本ガイドでは、EOS ネットワークを使用する中で発生する可能性があるエラーや問題について、解決法を含めて解説していきます

EOSIO ソフトウェアにおけるエラーは、基本的に以下のような JSON 形式で表示されます。

insufficient bps

こうしたエラーを見るとなんとなく嫌な気持ちになったり、中には「アー!!」となる人がいるかもしれませんが、エラーメッセージの目的は私たちを苛立たせることではなく、エラーに関する情報を提供することです。そのため、エラーの内容を落ち着いてチェックし、問題解決に向かうことが大切です。

EOSIO ソフトウェアによって生成されるトランザクションエラーに関してまず注目していただきたいのは、”what” という部分です。ここで、エラーの内容が大まかに説明されます。

insufficient bps error (

なお、”what” の内容があまりにも曖昧でエラーの内容が特定できないという場合は、”details” に続く最初の “message” という部分を確認します。ここに、エラーの詳細内容が記述されています (“details” に続く “message” は 2 つありますが、ここでフォーカスすべきなのは 1 番目の “message” です)。具体的には下記スクリーンショットを参考にしてください。

insufficient bp error underlined

本項では便宜上、エラーコード (“error” 内にある “code”。今回の例では 3050003) に基づいてエラーを分類したうえで解決方法を提示していきますので、本トラブルシューティングにおけるエラーの検索にあたってはこのコードを参照にしてください。

なお、解決にあたっては上述した “what” および (必要に応じて) “details” -> “message” の内容を参照していきます。

以下、「ソリューション」で問題解決方法を概説し、「解説」で問題原因・背景を含めて解決方法を詳しく説明します。「原因解明はあまり重要でなく、とにかくすぐに問題を解決したい」という人は「解説」を無視していただいても構いません。

insufficient bps error code

エラーコード “3050003” のエラーには複数のタイプがあり、”what” の内容はあまり参考になりません。そのため、以下では “details” 内の “message” に応じてエラーを分類していきます。

assertion failure with message: insufficient staked net bandwidth

insufficient net error

ソリューション
 
NET のステーク量が不足しているので、NET へのステーク量を追加してください。
 
解説
 

EOS ネットワークにおいては、任意のトランザクションを実行するにあたってネットワーク内のリソースである “CPU” と “NET” が使用されます。場合によっては “RAM” を消費することもあります (EOS ネットワークにおける CPU・NET・RAM についてはこちらを参照してください)。そのため、これらが不足している場合、トランザクションを実行できないという現象が発生します。

本エラーは、これらのリソースのうち NET が不足していることにより生じるエラーです。そのため、解決にあたっては NET へのステーク量を増やす必要があります。

必要ステーク量の目安ですが、1 日あたり 1 トランザクションを実行する程度であればおよそ 0.1 EOS を、各種 dApp と頻繁にやりとりをする必要があるのであればおよそ 1 EOS を、CPU と NET にステークしておけば十分でしょう (ステーク目安量は、BP 候補 Cypherglass 作成のビデオを参考にしました)。

assertion failure with message: voter holding REX tokens must vote for at least 21 producers or for a proxy

insufficient bps error

ソリューション
 
REX 利用のアカウントにおいて、21 以上の BP に投票するか、プロキシを設定してください。
 
解説
 

REX 使用に際して生じる可能性のあるエラーです (REX に関する詳細はこちらをご覧ください)。

REX を使用するには、「投票条件」として、21 以上の BP に投票するかプロキシを設定している必要があり、これが満たされていない場合 (投票している BP 数が 21 未満である、プロキシが未設定) に本エラーが発生します。

したがって、解決にあたっては REX の設定において 21 以上の BP に投票するかプロキシを設定する必要があります。設定方法については、上述したこちらの記事などを参考にしてください。

Transaction exceeded the current CPU usage limit imposed on the transaction

insufficient cpu error

ソリューション
 
 CPU のステーク量が不足しているので、CPU へのステーク量を追加してください。
 
解説
 

EOS ネットワークにおいては、任意のトランザクションを実行するにあたってネットワーク内のリソースである “CPU” と “NET” が使用されます。場合によっては “RAM” を消費することもあります (EOS ネットワークにおける CPU・NET・RAM についてはこちらを参照してください)。そのため、これらが不足している場合、トランザクションを実行できないという現象が発生します。

本エラーは、これらのリソースのうち CPU が不足していることにより生じるエラーです。そのため、解決にあたっては CPU へのステーク量を増やす必要があります。

必要ステーク量の目安ですが、1 日あたり 1 トランザクションを実行する程度であればおよそ 0.1 EOS を、各種 dApp と頻繁にやりとりをする必要があるのであればおよそ 1 EOS を、CPU と NET にステークしておけば十分でしょう (ステーク目安量は、BP 候補 Cypherglass 作成のビデオを参考にしました)。

Provided keys, permissions, and delays do not satisfy declared authorizations

improperly imported keys error
 
ソリューション
 
まず、インターネット接続が正常に行われていることを確認してください。
 
次に、該当するキー (この例では Active Key ペアにおける秘密鍵) 情報を更新してください。
 

それでも解決しない場合は、該当キーをご使用のアプリケーション (Scatter など) からいったん削除したのちに再インポートしてください。

それでも解決しない場合は、新しいキーペアを生成した上で既存の該当キーと置き換えて、その新しいキーをインポートしてみてください。

解説
 
“what” 部分に目を通すと、”keys”、”permissions”, または “delays” に問題があることがわかります。すなわち、キー (秘密鍵およびそれから生成される公開鍵)、権限 (Active、Owner)、遅延 (タイムリミット) のいずれかまたは複数において問題があるということになります。
 

まず、「遅延」、すなわちタイムリミットについて確実にしておくため、インターネット接続が正常に機能していることを確認してください。インターネット接続がよくない環境である場合、EOS メインネットとのやりとりがスムーズにいかず、「遅延」エラーになる可能性があります。

インターネット接続が正常であることが確認できたら、「キー」をみていきます。ここでいうキーとは、トランザクション生成に際して使用したキーペア (秘密鍵・公開鍵) における秘密鍵をさしており、今回の例では “Active Key” (上記スクリーンショットの “permission” という部分をチェックすると “active” と表示されているのを確認できるかと思います) のキーペアにおける秘密鍵をさします。したがって、ここでは Active Key の秘密鍵が正しく認識されなかったことによってエラーが生じた可能性があります。
 
解決法としてはまず、トランザクション生成に使用したアプリケーション (Scatter など) においてもう一度 “Active Key” に関する情報を更新したのち、トランザクションを実行してみてください。
キー情報更新でも問題が解決されない場合、秘密鍵をアプリケーションからいったん削除し、もう一度インポートした上で、再度トランザクション実行を試みます。なお、秘密鍵を削除する前に、秘密鍵のバックアップ (秘密鍵をテキストまたは QR コード形式で紙または USB などの外部媒体に保管したもの) があることを必ず確認してください!バックアップのない状態で削除した場合、インポートができないのみならず、いわゆる セルフ GOX することになってしまいます (Active Key と Owner Key が別々に設定されており、今回インポートする秘密鍵ではないキーにおいてバックアップが存在する場合 (今回の例では、Owner Key ペアの秘密鍵のバックアップが存在する場合) はアカウント情報復元が可能ですが、セキュリティ保護において注意しすぎるということはありません)。秘密鍵インポートの方法 (Scatter) については、こちらの記事を参考にしてください。
 
scatter refresh/import keys
さて、何かしらの理由によりまだ本エラーが出現するという場合は、キーペア自体を変更した上で再度インポートするという方法があります。キーペア変更に際してはまず新規キーペアを作成したうえで、既存の Active Key と Owner Key のいずれか、または両方を置き換えます。なおこの際、新規作成した秘密鍵のバックアップ (秘密鍵をテキストまたは QR コード形式で紙または USB などの外部媒体に保管したもの) を必ず作成してください!
Close Menu