Help us understand the problem. What is going on with this article?

[Hyperledger Iroha]Pythonライブラリからクエリを実行すると[bad timestamp: sent from future]が返ってくる

内容

ちょっとしたことですが対応方法をメモ

エラー内容

Hyperledger Irohaのライブラリを使ってRoleを取得するクエリを実行する

get_role.py
from iroha import Iroha, IrohaCrypto, IrohaGrpc
import iroha_config

net = IrohaGrpc(iroha_config.IROHA_HOST)

iroha = Iroha(iroha_config.ADMIN_ACCOUNT)
admin_priv_key = iroha_config.ADMIN_PRIV_KEY

# Queryの作成
get_block_query = iroha.query(
    'GetRoles'
)

# Transactionへ署名
IrohaCrypto.sign_query(get_block_query, iroha_config.ADMIN_PRIV_KEY)

# Transactionの送信
response = net.send_query(get_block_query)
print(response)

エラーの内容

error_response {
  message: "Query: [[bad timestamp: sent from future, timestamp: 1594256328577, now: 1594147827999 ]]\n"
}
query_hash: "e4567087a82943225e0a774cf4b4349a62f35854f947b8ecf78039a945ae3858"

エラーの原因と対応策

Pythonを動かしているクライアントとirohaを動かしているVMの時間がずれていたことが原因

以下のコマンドで時間を合わせる

# ntpdate ntp.nict.jp
 9 Jul 10:18:36 ntpdate[8383]: step time server 133.243.238.244 offset 108402.649465 sec

実行結果

エラー対応後の実行結果

roles_response {
  roles: "admin"
  roles: "user"
  roles: "money_creator"
}
query_hash: "9b27f830f9a388590a9131f7960b4d3aca8908614cc89fa6631c11d5365196b8"
bc_yuuuuuki
ブロックチェーン/AI/Python/Golang/MongoDB/GraphDBなどを学習中です。 このサイトにおける掲載内容はあくまで私自身の見解であり、必ずしも私の所属団体・企業における立場、戦略、意見を代表するものではありません。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away