pub struct CongestionControlConfigView {
pub allowed_shard_outgoing_gas: u64,
pub max_congestion_incoming_gas: u64,
pub max_congestion_memory_consumption: u64,
pub max_congestion_missed_chunks: u64,
pub max_congestion_outgoing_gas: u64,
pub max_outgoing_gas: u64,
pub max_tx_gas: u64,
pub min_outgoing_gas: u64,
pub min_tx_gas: u64,
pub outgoing_receipts_big_size_limit: u64,
pub outgoing_receipts_usual_size_limit: u64,
pub reject_tx_congestion_threshold: f64,
}Expand description
CongestionControlConfigView
JSON schema
{
"type": "object",
"required": [
"allowed_shard_outgoing_gas",
"max_congestion_incoming_gas",
"max_congestion_memory_consumption",
"max_congestion_missed_chunks",
"max_congestion_outgoing_gas",
"max_outgoing_gas",
"max_tx_gas",
"min_outgoing_gas",
"min_tx_gas",
"outgoing_receipts_big_size_limit",
"outgoing_receipts_usual_size_limit",
"reject_tx_congestion_threshold"
],
"properties": {
"allowed_shard_outgoing_gas": {
"description": "How much gas the chosen allowed shard can send to a 100% congested shard.\n\n See [`CongestionControlConfig`] for more details.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"max_congestion_incoming_gas": {
"description": "How much gas in delayed receipts of a shard is 100% incoming congestion.\n\n See [`CongestionControlConfig`] for more details.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"max_congestion_memory_consumption": {
"description": "How much memory space of all delayed and buffered receipts in a shard is\n considered 100% congested.\n\n See [`CongestionControlConfig`] for more details.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"max_congestion_missed_chunks": {
"description": "How many missed chunks in a row in a shard is considered 100% congested.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"max_congestion_outgoing_gas": {
"description": "How much gas in outgoing buffered receipts of a shard is 100% congested.\n\n Outgoing congestion contributes to overall congestion, which reduces how\n much other shards are allowed to forward to this shard.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"max_outgoing_gas": {
"description": "The maximum amount of gas attached to receipts a shard can forward to\n another shard per chunk.\n\n See [`CongestionControlConfig`] for more details.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"max_tx_gas": {
"description": "The maximum amount of gas in a chunk spent on converting new transactions to\n receipts.\n\n See [`CongestionControlConfig`] for more details.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"min_outgoing_gas": {
"description": "The minimum gas each shard can send to a shard that is not fully congested.\n\n See [`CongestionControlConfig`] for more details.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"min_tx_gas": {
"description": "The minimum amount of gas in a chunk spent on converting new transactions\n to receipts, as long as the receiving shard is not congested.\n\n See [`CongestionControlConfig`] for more details.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"outgoing_receipts_big_size_limit": {
"description": "Large size limit for outgoing receipts to a shard, used when it's safe\n to send a lot of receipts without making the state witness too large.\n It limits the total sum of outgoing receipts, not individual receipts.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"outgoing_receipts_usual_size_limit": {
"description": "The standard size limit for outgoing receipts aimed at a single shard.\n This limit is pretty small to keep the size of source_receipt_proofs under control.\n It limits the total sum of outgoing receipts, not individual receipts.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"reject_tx_congestion_threshold": {
"description": "How much congestion a shard can tolerate before it stops all shards from\n accepting new transactions with the receiver set to the congested shard.",
"type": "number",
"format": "double"
}
}
}Fields§
§allowed_shard_outgoing_gas: u64How much gas the chosen allowed shard can send to a 100% congested shard.
See [CongestionControlConfig] for more details.
max_congestion_incoming_gas: u64How much gas in delayed receipts of a shard is 100% incoming congestion.
See [CongestionControlConfig] for more details.
max_congestion_memory_consumption: u64How much memory space of all delayed and buffered receipts in a shard is considered 100% congested.
See [CongestionControlConfig] for more details.
max_congestion_missed_chunks: u64How many missed chunks in a row in a shard is considered 100% congested.
max_congestion_outgoing_gas: u64How much gas in outgoing buffered receipts of a shard is 100% congested.
Outgoing congestion contributes to overall congestion, which reduces how much other shards are allowed to forward to this shard.
max_outgoing_gas: u64The maximum amount of gas attached to receipts a shard can forward to another shard per chunk.
See [CongestionControlConfig] for more details.
max_tx_gas: u64The maximum amount of gas in a chunk spent on converting new transactions to receipts.
See [CongestionControlConfig] for more details.
min_outgoing_gas: u64The minimum gas each shard can send to a shard that is not fully congested.
See [CongestionControlConfig] for more details.
min_tx_gas: u64The minimum amount of gas in a chunk spent on converting new transactions to receipts, as long as the receiving shard is not congested.
See [CongestionControlConfig] for more details.
outgoing_receipts_big_size_limit: u64Large size limit for outgoing receipts to a shard, used when it’s safe to send a lot of receipts without making the state witness too large. It limits the total sum of outgoing receipts, not individual receipts.
outgoing_receipts_usual_size_limit: u64The standard size limit for outgoing receipts aimed at a single shard. This limit is pretty small to keep the size of source_receipt_proofs under control. It limits the total sum of outgoing receipts, not individual receipts.
reject_tx_congestion_threshold: f64Trait Implementations§
Source§impl Clone for CongestionControlConfigView
impl Clone for CongestionControlConfigView
Source§fn clone(&self) -> CongestionControlConfigView
fn clone(&self) -> CongestionControlConfigView
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source. Read more