ouroboros-consensus-0.1.0.1: Consensus layer for the Ouroboros blockchain protocol
Safe Haskell None
Language Haskell2010

Ouroboros.Consensus.Storage.ImmutableDB.Impl.Validation

Synopsis

Documentation

data ValidateEnv m blk h Source #

Bundle of arguments used most validation functions.

Note that we don't use Ouroboros.Consensus.Storage.ImmutableDB.Impl.Index because we are reading and manipulating index files in different ways, e.g., truncating them.

validateAndReopen :: forall m blk h. ( IOLike m, GetPrevHash blk, HasBinaryBlockInfo blk, DecodeDisk blk ( ByteString -> blk), ConvertRawHash blk, Eq h, HasCallStack ) => ValidateEnv m blk h -> ResourceRegistry m -> ValidationPolicy -> WithTempRegistry ( OpenState m blk h) m ( OpenState m blk h) Source #

Perform validation as per the ValidationPolicy using validate and create an OpenState corresponding to its outcome using mkOpenState .

Exported for testing purposes

data ShouldBeFinalised Source #

Iff the chunk is the most recent chunk, it should not be finalised.

With finalising, we mean: if there are one or more empty slots at the end of the chunk, the primary index should be padded with offsets to indicate that these slots are empty. See backfill .