iroha icon indicating copy to clipboard operation
iroha copied to clipboard

Signatory error causes irohad to consume all the cpu time

Open shazz opened this issue 3 years ago • 0 comments

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

shazz avatar Jun 16 '21 23:06 shazz