iroha
iroha copied to clipboard
Signatory error causes irohad to consume all the cpu time
Environment:
- Linux ubuntu 20.04 with docker
- 2 nodes using
hyperledger/iroha:latest
docker iamge (1.2.1 I guess)
Issue
irohad
consumes 100% of the CPU after this error occurs: query signatories did not pass validation
In the logs the same errors repeats ever and ever:
[2021-06-16 17:04:47.645623705][I][Irohad]: ~~~~~~~~~| PROPOSAL ^_^ |~~~~~~~~~
[2021-06-16 17:04:47.649028445][I][Irohad/Consensus/Network]: Received votes[size=2] from ipv4:172.18.0.6:51088
[2021-06-16 17:04:47.649678029][I][Irohad/Consensus/VoteStorage/ProposalStorage]: Vote with Round: [block=15, reject=2, ] and hashes [, ] looks valid
[2021-06-16 17:04:47.649713156][I][Irohad/Consensus/VoteStorage/ProposalStorage/BlockStorage]: Vote with round Round: [block=15, reject=2, ] and hashes (, ) inserted, votes in storage [1/2]
[2021-06-16 17:04:47.649724902][I][Irohad/Consensus/VoteStorage/ProposalStorage]: Vote with Round: [block=15, reject=2, ] and hashes [, ] looks valid
[2021-06-16 17:04:47.649732911][I][Irohad/Consensus/VoteStorage/ProposalStorage/BlockStorage]: Vote with round Round: [block=15, reject=2, ] and hashes (, ) inserted, votes in storage [2/2]
[2021-06-16 17:04:47.649749670][I][Irohad/Consensus/HashGate]: Received supermajority of votes for Round: [block=15, reject=2, ], skip propagation
[2021-06-16 17:04:47.649756625][I][Irohad/Consensus/HashGate]: Pass outcome for Round: [block=15, reject=2, ] to pipeline
[2021-06-16 17:04:47.649804153][I][Irohad/Consensus/Gate]: Consensus skipped round, voted for nothing
[2021-06-16 17:04:47.649835521][I][Irohad/Synchronizer]: processing consensus outcome
[2021-06-16 17:04:47.649840313][I][Irohad/Synchronizer]: at handleDifferent
[2021-06-16 17:04:47.649856284][I][Irohad]: ~~~~~~~~~| EMPTY (-_-)zzz |~~~~~~~~~
[2021-06-16 17:04:47.919925724][E][Irohad/Storage/QueryExecutor]: query signatories did not pass validation
[2021-06-16 17:04:47.922364898][E][Irohad/Storage/QueryExecutor]: query signatories did not pass validation
[2021-06-16 17:04:47.924425797][E][Irohad/Storage/QueryExecutor]: query signatories did not pass validation
...
[2021-06-16 17:16:05.417894639][E][Irohad/Storage/QueryExecutor]: query signatories did not pass validation
[2021-06-16 17:16:05.419727197][E][Irohad/Storage/QueryExecutor]: query signatories did not pass validation
[2021-06-16 17:16:05.421585804][E][Irohad/Storage/QueryExecutor]: query signatories did not pass validation
[2021-06-16 17:16:05.423794589][E][Irohad/Storage/QueryExecutor]: query signatories did not pass validation
[2021-06-16 17:16:05.425627766][E][Irohad/Storage/QueryExecutor]: query signatories did not pass validation
and never stops.
Context
I can reproduce the issue.
It happens when validating of a batch transaction but due to the first transaction create_account
RuntimeError: Stateful validation failed on tx: payload {
reduced_payload {
commands {
create_account {
account_name: "demo"
domain_id: "test
public_key: "a79cf22cc56338addafcdca239670ae42611588f9123ce1b80702a111edb5ac6"
}
}
creator_account_id: "bob@test"
created_time: 1623885629608
quorum: 1
}
batch {
reduced_hashes: "e577ecc1d444e4b5fbdfd4bfa59e75da3c8a5c8045f483951175c8def705b2cf"
reduced_hashes: "c3148c0da9c584cc019f0e4bd29759de2f4082ff57cd97ca59f48802b3d1bf45"
reduced_hashes: "f7f16279f3b29ffd29b46c34d8987bd0c45b01dff7e6cee8fca43a5a05f55e20"
reduced_hashes: "86549da0d5de9582585da1693eb241de19d259cadbba4380bcdd68f1991222ab"
reduced_hashes: "23eb2b40d6e1098e3877f3ba1c3919c56d2c8d36304937c8e84f2e1bb51768c7"
}
}
signatures {
public_key: "d72cf8174850b34e6ea3fa5cceb218a22fab17fa82fdbf638f673b251ddfd106"
signature: "d29a72cf7bc715ee51831852dabc9183b23e7bc12154006eb2a23d8924423122cd0b86b16aa075b5c6e1db46657d2b39a72b79c183d0038b6cbbc8efa8f60d06"
}
due to reason 0