github.com/Oyster-zx/tendermint@v0.34.24-fork/proto/tendermint/state/types.proto (about) 1 syntax = "proto3"; 2 package tendermint.state; 3 4 option go_package = "github.com/tendermint/tendermint/proto/tendermint/state"; 5 6 import "gogoproto/gogo.proto"; 7 import "tendermint/abci/types.proto"; 8 import "tendermint/types/types.proto"; 9 import "tendermint/types/validator.proto"; 10 import "tendermint/types/params.proto"; 11 import "tendermint/version/types.proto"; 12 import "google/protobuf/timestamp.proto"; 13 14 // ABCIResponses retains the responses 15 // of the various ABCI calls during block processing. 16 // It is persisted to disk for each height before calling Commit. 17 message ABCIResponses { 18 repeated tendermint.abci.ResponseDeliverTx deliver_txs = 1; 19 tendermint.abci.ResponseEndBlock end_block = 2; 20 tendermint.abci.ResponseBeginBlock begin_block = 3; 21 } 22 23 // ValidatorsInfo represents the latest validator set, or the last height it changed 24 message ValidatorsInfo { 25 tendermint.types.ValidatorSet validator_set = 1; 26 int64 last_height_changed = 2; 27 } 28 29 // ConsensusParamsInfo represents the latest consensus params, or the last height it changed 30 message ConsensusParamsInfo { 31 tendermint.types.ConsensusParams consensus_params = 1 [(gogoproto.nullable) = false]; 32 int64 last_height_changed = 2; 33 } 34 35 message ABCIResponsesInfo { 36 ABCIResponses abci_responses = 1; 37 int64 height = 2; 38 } 39 40 message Version { 41 tendermint.version.Consensus consensus = 1 [(gogoproto.nullable) = false]; 42 string software = 2; 43 } 44 45 message State { 46 Version version = 1 [(gogoproto.nullable) = false]; 47 48 // immutable 49 string chain_id = 2 [(gogoproto.customname) = "ChainID"]; 50 int64 initial_height = 14; 51 52 // LastBlockHeight=0 at genesis (ie. block(H=0) does not exist) 53 int64 last_block_height = 3; 54 tendermint.types.BlockID last_block_id = 4 55 [(gogoproto.nullable) = false, (gogoproto.customname) = "LastBlockID"]; 56 google.protobuf.Timestamp last_block_time = 5 57 [(gogoproto.nullable) = false, (gogoproto.stdtime) = true]; 58 59 // LastValidators is used to validate block.LastCommit. 60 // Validators are persisted to the database separately every time they change, 61 // so we can query for historical validator sets. 62 // Note that if s.LastBlockHeight causes a valset change, 63 // we set s.LastHeightValidatorsChanged = s.LastBlockHeight + 1 + 1 64 // Extra +1 due to nextValSet delay. 65 tendermint.types.ValidatorSet next_validators = 6; 66 tendermint.types.ValidatorSet validators = 7; 67 tendermint.types.ValidatorSet last_validators = 8; 68 int64 last_height_validators_changed = 9; 69 70 // Consensus parameters used for validating blocks. 71 // Changes returned by EndBlock and updated after Commit. 72 tendermint.types.ConsensusParams consensus_params = 10 [(gogoproto.nullable) = false]; 73 int64 last_height_consensus_params_changed = 11; 74 75 // Merkle root of the results from executing prev block 76 bytes last_results_hash = 12; 77 78 // the latest AppHash we've received from calling abci.Commit() 79 bytes app_hash = 13; 80 }