Skip to content

[6.0] Creating a box with script version greater than activated version crashes mining thread #2214

@sethdusek

Description

@sethdusek

Sending to an address like MvqqcW8YayVMRXFP (sigmaProp(true) with tree version 7) causes the mining thread to crash and repeatedly give exceptions. This is tested on the latest 6.0 devnet node version (RC5).

I'm not sure why my node isn't logging to disk, so the only logs I get are from the terminal:
https://gist.github.com/sethdusek/49165428a6ef14aabf8aa1f9eb543688

This needs further testing, but I believe https://github.com/ergoplatform/sigmastate-interpreter/blob/92cb2dbc524b521d26444a5a1b8bda0729d2f8ec/data/shared/src/main/scala/sigma/serialization/ErgoTreeSerializer.scala#L150 is problematic. My theory is that transactions with invalid script versions get accepted into the mempool, and thus unknowingly get put into a block candidate. However, this block candidate can't be parsed because of this condition (tree version <= activated version).

Steps to reproduce

  1. Use wallet interface to send ERGs to MvqqcW8YayVMRXFP
  2. Wait for the block to be mined (on devnet this only takes a few seconds)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions