Mining / Stake Consensus Error

Discussion in 'Proof-of-work Mining' started by norikai, Feb 22, 2016.

  1. 2017/12/15 - Decred v1.1.2 released! → Release Notes  → Downloads
  1. norikai

    norikai New Member

    Dec 24, 2015
    40
    12
    I received this notification...not sure what to make of it, other than what it says. Hoping someone can clarify.

    [ERR] MINR: failed to check template: Error in stake consensus: The number of SSgen tx in block ___ was not the 3 voters expected from the header!
    [ERR] RPCS: Failed to create new block template: Error in stake consensus: The number of SSGen tx in block ____ was not the 3 voters expected from the header!
     
  2. sambiohazard

    sambiohazard Sr. Member

    Jan 21, 2016
    844
    372
    If you can post the block hashes, they could be helpful in debugging. I dont think this should be happening. It means that the hash/header of the block didn't match with content (selected voting tickets for the block). I am not sure why this would happen. I think your coins are safe but a particular block was not correctly created. I hope @davecgh & other devs can explain and take a look at this.

    Thanks for reporting this, its very much appreciated. :)
     
  3. root

    root Member

    Feb 3, 2016
    381
    76
    I would guess the reason is that a wallet that bought the ticket was not running or was locked.

    ==== ccminer ====
    [2016-02-22 09:52:35] JSON-RPC call failed: Error in stake consensus: The number of SSGen tx in block dde7c2b613d830ea57d151cfea85edcbb3adec097256b7ed23d08b40c25b6b72 was not the 4 voters expected from the header!
    ==== daemon ====
    09:52:35 2016-02-22 [DBG] MINR: Too few voters found on any HEAD block, recycling a parent block to mine on
    09:52:35 2016-02-22 [TRC] CHAN: CheckBlockStakeSanity failed for incoming node dde7c2b613d830ea57d151cfea85edcbb3adec097256b7ed23d08b40c25b6b72; error given: Error in stake consensus: The number of SSGen tx in block dde7c2b613d830ea57d151cfea85edcbb3adec097256b7ed23d08b40c25b6b72 was not the 4 voters expected from the header!
    09:52:35 2016-02-22 [ERR] MINR: failed to check template: Error in stake consensus: The number of SSGen tx in block dde7c2b613d830ea57d151cfea85edcbb3adec097256b7ed23d08b40c25b6b72 was not the 4 voters expected from the header!
    09:52:35 2016-02-22 [ERR] RPCS: Failed to create new block template: Error in stake consensus: The number of SSGen tx in block dde7c2b613d830ea57d151cfea85edcbb3adec097256b7ed23d08b40c25b6b72 was not the 4 voters expected from the header!
    09:52:35 2016-02-22 [DBG] PEER: Received inv (size 5) from 178.33.228.14:9108 (outbound)
    09:52:35 2016-02-22 [TRC] PEER: (*wire.MsgInv)(0xc821eda660)({
    InvList: ([]*wire.InvVect) (len=5 cap=5) {
    (*wire.InvVect)(0xc823840270)({
    ...
    ...
     
  4. norikai

    norikai New Member

    Dec 24, 2015
    40
    12
    I realize that my "coins are safe" as it's a mining issue and not a wallet issue. I didn't include the block, because I would have to type it out manually. If a dev needed it for debugging, I could provide it.

    @root I don't have a complete understanding of POS, but I would think that if a wallet was called upon to vote, and it wasn't present, another wallet would be chosen instead?

    Would I be correct in my thinking that I potentially solved a block, but there was some kind of voting issue that failed to validate it?
     
  5. norikai

    norikai New Member

    Dec 24, 2015
    40
    12
    This happened again. I have included the block hash info this time. Has this happened to anyone else?

    15:04:40 2016-02-22 [ERR] MINR: failed to check template: Error in stake consensus: The number of SSgen tx in block 7d2884197b27d11df888647eb5544d440d90a9be91fe68b3f32524964bfb9069 was not the 3 voters expected from the header!
    [ERR] RPCS: Failed to create new block template: Error in stake consensus: The number of SSGen tx in block 7d2884197b27d11df888647eb5544d440d90a9be91fe68b3f32524964bfb9069 was not the 3 voters expected from the header!
     
  6. ceejep

    ceejep Sr. Member
    Developer

    Dec 14, 2015
    192
    220
    #6 ceejep, Feb 22, 2016
    Last edited: Feb 22, 2016
    This has been an ongoing rare bug from testnet. There is an issue on GitHub for it. We're currently stuck doing stake pool related things at the moment, but hope to look into it later this week.

    The issue is caused by an update to the stake transaction tree without simultaneously updating the header. It's likely caused by getwork being keyed to the Merkle root of the regular transaction tree.

    edit: That fix won't work, it sounds like the getwork handler is creating multiple work items for a single Merkle root. A real fix would probably key work to a [64]byte of (regularRoot || stakeRoot).
     
    sambiohazard likes this.
  7. norikai

    norikai New Member

    Dec 24, 2015
    40
    12
    Thanks for the response. In layman's terms, does this mean that I initially solved the blocks and was rejected because of the bug?

    Secondly, should I just mine on a pool for now to avoid the issue? Or should I not expect it to happen too often?
     
  8. ceejep

    ceejep Sr. Member
    Developer

    Dec 14, 2015
    192
    220
    That seems to be the case.

    A pool won't help unless they've resolved the issue too.
     
  9. norikai

    norikai New Member

    Dec 24, 2015
    40
    12
    Thank you. I'll just keep chugging along for now then.
     
  10. ceejep

    ceejep Sr. Member
    Developer

    Dec 14, 2015
    192
    220
  11. norikai

    norikai New Member

    Dec 24, 2015
    40
    12
    I just had another of the same error. I don't mind testing it, but I have to learn how to compile first...
     
  12. root

    root Member

    Feb 3, 2016
    381
    76
    another one .... but I feel brave enough ;)

    [2016-02-23 13:48:42] GPU #0: Gigabyte GTX 970, 1300.39 MH/s
    [2016-02-23 13:48:42] JSON-RPC call failed: Error in stake consensus: The number of SSGen tx in block 17ace4320dce41793fb82e6f434f057786be68717217ba24b1493337114dbe7a was not the 4 voters expected from the header!
    [2016-02-23 13:48:42] get_work failed, retry after 30 seconds
     
  13. root

    root Member

    Feb 3, 2016
    381
    76
    well, pull48 did not help.

    [2016-02-23 14:53:59] JSON-RPC call failed: Error in stake consensus: The number of SSGen tx in block ccb95beb8bfe90d5a9180bb35d168bd1b9a172cc424fff58645b3e9c1ff3cf4f was not the 3 voters expected from the header!
    [2016-02-23 14:53:59] get_work failed, retry after 30 seconds
    [2016-02-23 14:54:29] decred block 4503
     
    norikai likes this.
  14. norikai

    norikai New Member

    Dec 24, 2015
    40
    12
    Yeah, this is still happening. Mining is a drag right now...
     
  15. ceejep

    ceejep Sr. Member
    Developer

    Dec 14, 2015
    192
    220
    Different error. That's the GBT error that has an issue on GitHub.

    https://github.com/decred/dcrd/issues/53

    It only lasts for about a second, so configure your miner to retry more quickly (1s rather than 30s).
     
  16. norikai

    norikai New Member

    Dec 24, 2015
    40
    12
    FYI, the original error I have been reporting is still occurring with the new release. I'm not sure if it's supposed to be fixed already, or not.

    Thanks.
     
  17. root

    root Member

    Feb 3, 2016
    381
    76
    I see it should be fixed in 0.0.6, but are there problems with wallet ERR and "restart" @Dyrk mentioned present still ?
    I would upgrade, but you know ... "don't change horses midstream" ;)

    EDIT : error present about once a day
     

Share This Page