Skip to content
  • Dave Collins's avatar
    blockchain: Combine ErrDoubleSpend & ErrMissingTx. · 19eada0b
    Dave Collins authored
    This replaces the ErrDoubleSpend and ErrMissingTx error codes with a
    single error code named ErrMissingTxOut and updates the relevant errors
    and expected test results accordingly.
    
    Once upon a time, the code relied on a transaction index, so it was able
    to definitively differentiate between a transaction output that
    legitimately did not exist and one that had already been spent.
    
    However, since the code now uses a pruned utxoset, it is no longer
    possible to reliably differentiate since once all outputs of a
    transaction are spent, it is removed from the utxoset completely.
    Consequently, a missing transaction could be either because the
    transaction never existed or because it is fully spent.
    19eada0b