Skip to content

trx.ref_block_prefix == tapos_block_summary.block_id._hash[1].value() #144

@bitphage

Description

@bitphage

Despite the issue was addressed in b3d6cda, I started to get this this error time-to-time in my dexbot production instance.

Error means "referenced block num prefix != actual block prefix". Block prefix is taken from next block using "previous" field: block = ws.get_block_header(int(dynBCParams["last_irreversible_block_num"])+1)

Some ambiguity is caused by referencing block num using only 16 bits. This means, referenced block num should not be older than 65535 from head block. The only way I can reproduce this issue artificially is by referring to some old block, like this: dynBCParams["last_irreversible_block_num"] -= 70000

I'm not sure how it's happening in production, but I can guess there could be a reconnection to the next node and LIB on new node was shifted to the past (node out of sync). I added a debug to see LIB next time the issue will happen.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions