Proposal 133900
Summary
- Vote: Adopt
- Hash: All the hashes match
- Reasons to adopt: The release notes match the commits and the code changes. Builds successfully and all the hashes match
Features
e7b16eab4
Summary: Adjust dynamic block marker delay
Notes
updates DYNAMIC_DELAY_MAX_NON_RANK_0_BLOCKS
from 5 to 10 this means that the delay will still be triggered but less frequently now.
Review: Code changes matches the commit message.
e3c408cd0
Summary: Push all ingress messages
Notes
Before this change we only push ingress messages which have a size less than 1024 bytes this means for the messages which are more than 1024 bytes the node have the request to download it from the peer which adds latency in the range of 100’s of milliseconds. Now with this change all the message are pushed to the ingress pool which means that we save of latency but the trade off is that some messages received by the node may have been expired but this would be a very rare occurrence since now we actively remove expired messages from the ingress pool.
Review: Code changes matches the commit message.
c5e9e2af1
Summary: Reduce consensus bouncer function refresh period from 3 seconds to 1 second
Notes
Reduces the refresh period from 3 second to 1 seconds so that the node which is lagging behind can catchup quickly, in theory catching up-to 10 blocks per second.
Review: Code changes matches the commit message.
237990ccb
Summary: skip ingress_expiry check for anonymous queries and read_state requests
Notes
In this change ingress expiry check is skipped for anonymous messages queries and anonymous read_state requests.
Review: Code changes matches the commit message.
161b12ce8
Summary: Add support for derivation to ecdsa_secp256r1 crate
Notes
Implement derivation paths using DerivationIndex
and DerivationPath
for BIP32-style key generation. derive_subkey
and derive_subkey_with_chain_code
methods in PrivateKey
and PublicKey
, hierarchical key derivation is streamlined. The ckd
and ckd_pub
functions support SLIP-10 compatible key generation along the path.
Review: Code changes matches the commit message.
d361dd692
Summary: Update cycles cost for compute
Notes
Updates various cycle fees
Increases UNIVERSAL_CANISTER_CYCLE_MARGIN
from 7M to 42M
Increases update_message_execution_fee
from 590K cycles to 5M cycles.
Increase instruction execution fee from 0.4 cycles to 1 cycle per instruction
Review: Code changes matches the commit message.
74751adc0
Summary: Skip per-canister overhead if no instructions used
Notes
Skips canister execution if there are not enough cycles without additional overhead, this does not impact round capacity.
Review: Code changes matches the commit message.
71f3b769c
Summary: Make subnet replica version of latest block available to execution environment
Notes
The replica_version
has been integrated into Batch, making it accessible within the execution environment. Numerous code sections, including test cases, have been updated to support this addition.
Review: Code changes matches the commit message.
b29e83ac7
Summary: Enable visibility control for canister logs with allowed_viewers
Notes: The allowed_viewers
flag has been introduced to manage visibility settings for canister logs.
Review: Code changes match the commit message.
3006ab867
Summary: Sandbox eviction based on RSS memory usage
Notes: The sandbox eviction policy has shifted from a percentage-based method to using Resident Set Size (RSS) for memory-based evictions. The limit is set to handle 200 processes at a time, with 1 GiB of memory being freed per eviction cycle. Each sandbox process is assumed to use about 50 MiB, with updates handled asynchronously.
Review: Code changes match the commit message.
39f67a628
Summary: Add master key ID variant for VetKD support
Notes: This update introduces a master key ID
variant to support VetKeys on ICP, adding the VetKdKeyId
struct, which integrates with MasterPublicKeyId
.
Review: Code changes match the commit message.
0515bc380
Summary: Introduce minimum supported certification version
Notes: To phase out outdated certification versions, a new constant MIN_SUPPORTED_CERTIFICATION_VERSION
has been set to V17.
Review: Code changes match the commit message.
fa22c9fa9
Summary: Add msg_limit
to application subnet payload builder
Notes: The addition of msg_limit
ensures message limits are enforced within stream_slice
, with both upper and lower bounds applied for message control.
Review: Code changes match the commit message.
ac6c9d1e5
Summary: Adjust stream message limit from 50k to 10k
Notes: The maximum allowable messages in streams has been reduced to 10,000, reflecting typical usage patterns.
Review: Code changes match the commit message.
8c2e0c98e
Summary: Re-enable HTTP/2 for HTTPS outcalls
Notes: HTTP/2 support has been restored in the builder, improving networking efficiency.
Review: Code changes match the commit message.
993fc8586
Summary: Initial draft of custom metrics tool with systemd timer
Notes: A custom metrics tool has been added to export specific metrics, such as TLB shootdowns, to node_exporter
in a Prometheus-compatible format.
Review: Code changes match the commit message.
Bugfixes
f306fcb8c
Summary: Utilize correct metric for determining node heights in certification
Notes: Added certification_share_height
to node_heights
to correct a previous issue where the wrong metric was used in calculating the highest validated certification state. This metric is now included in artifact_pool_certification_height_stat
.
Review: Code changes match the commit message.
3d590ec5a
Summary: Remove async locks from orchestrator
Notes: Async locks have been removed in various sections of the orchestrator, reflected by the elimination of .await()
calls in the code.
Review: Code changes match the commit message.
e70f04d9f
Summary: Add example of expected SSH key format for recovery
Notes: Console output has been modified to display the expected SSH key format during recovery for improved clarity.
Review: Code changes match the commit message.
55297ccfd
Summary: Update ic.json5
to use nns_urls
consistently
Notes: Adjusted references from nns_url
to nns_urls
in ic.json5
, addressing missed instances from earlier changes.
Review: Code changes match the commit message.
ec12a4eea
Summary: Increase HTTP/2 request header size limit
Notes: http2_max_header_list_size(MAX_HEADER_LIST_SIZE)
has been added to the Client Builder to accommodate requests with headers exceeding 16KB.
Review: Code changes match the commit message.
218fdbcaa
Summary: Simplify idle future handling in networking
Notes: The idle future implementation, which was overly complex, has been removed for improved code simplicity and readability.
Review: Code changes match the commit message.
52bc5275e
Summary: Enable adapter to remain idle until activity is detected
Notes: Modified the adapter to stay in an idle state until it detects activity, which conserves resources when no events are occurring.
Review: Code changes match the commit message.
b56d5e1ba
Summary: Synchronize adapter state with tokio::Notify
Notes: AdapterState
has been updated to introduce idle_seconds
, determining how long the adapter should wait before transitioning to idle. Two methods, idle
and active
, use a watch channel to manage the adapter state.
Review: Code changes match the commit message.
582ce51a6
Summary: Clarify logging for ipmitool
in node
Notes: Adjusted logging for ipmitool
to remove potentially confusing messages when successfully retrieving a MAC address.
Review: Code changes match the commit message.
677aa6862
Summary: Update thiserror
to version 1.0.65
Notes: Updated thiserror
dependency from version 1.0.64 to 1.0.65 in Bazel.
Review: Code changes match the commit message.
7be43416d
Summary: Bump typenum
to version 1.17
Notes: Upgraded the typenum
library to version 1.17 in Bazel.
Review: Code changes match the commit message.
53f97714f
Summary: Resolve rebuild issues in rustix
Notes: Applied patches to rustix
to improve build determinism and prevent spurious rebuilds.
Review: Code changes match the commit message.
dac2f36f9
Summary: Strengthen regex for special address range filtering
Notes: Enhanced regex patterns to more strictly filter out special address ranges.
Review: Code changes match the commit message.
361d09aeb
Summary: Optimize prestorecon
performance
Notes: Moved the selabel_open
call outside of the loop to boost performance.
Review: Code changes match the commit message.
3753b4388
Summary: Update IPv6 prefix and gateway for setupos
testnets
Notes: Made a minor adjustment to the default IPv6 gateway settings for setupos
test networks.
Review: Code changes match the commit message.
Chores
80dc25b52
Summary: Move notary-related functions to notary.rs
in consensus crate
Notes: Simplifies maintainability by relocating notary-related functions from the consensus_utils
crate to the notary.rs
file within the consensus crate.
Review: Code changes match the commit message.
d3cfffac1
Summary: Replace generic pool metrics in certification pool
Notes: Introduces PerTypeMetrics
to improve PoolMetrics
by tracking max and min heights, count, and providing enhanced observability of pool states.
Review: Code changes match the commit message.
4f7cebee1
Summary: Log actual replica version instead of default in batch delivery
Notes: Adjusts logging to display the specific version of the block being delivered rather than the default version.
Review: Code changes match the commit message.
10150fb34
Summary: Rename certification pool section for consistency
Notes: Minor renaming of persistent_pool
to validated
to enhance naming consistency.
Review: Code changes match the commit message.
c5e6242f5
Summary: Remove unnecessary clippy
allowances
Notes: Removed the #[allow(clippy::needless_collect)]
directive, allowing expect
and unwrap
within tests.
Review: Code changes match the commit message.
4899bba2c
Summary: Upgrade tower-rs dependencies
Notes: Updated tower-rs
to version 0.5.1, along with a minor bump for tower-http
to version 0.6.1.
Review: Code changes match the commit message.
54f0fae1c
Summary: Disallow async locks
Notes: Added #![allow(clippy::disallowed_types)]
to multiple files to suppress warnings related to tokio::sync::Mutex
and tokio::sync::RwLock
.
Review: Code changes match the commit message.
c84916512
Summary: Improve memory management by keeping essential in-memory states
Notes: Adjusts in-memory state handling to improve memory usage by removing states more aggressively at checkpointed heights while retaining necessary states for CUP creation and validation. Adds an additional parameter to remove_inmemory_states_below()
and BTreeSet::new()
to support this functionality.
Review: Code changes match the commit message.
619190192
Summary: Bump rules_rust
to version 0.53.0
Notes: Updated the rules_rust
dependency to version 0.53.0.
Review: Code changes match the commit message.
35a25eaf6
Summary: Update proc-macro2
and remove patch
Notes: Upgraded proc-macro2
to version 1.0.89, which resolved a build reproducibility issue, allowing removal of rules_rust.patch
.
Review: Code changes match the commit message.
7dede601c
Summary: Enhance logging in check-network.sh
Notes: Added improvements to eval_command_with_retries()
to capture additional information such as ip -6 route show
and ${dns_servers}
for troubleshooting.
Review: Code changes match the commit message.
60ce9d351
Summary: Revert removal of older API BN certificates
Notes: Reverts a previous fix that temporarily removed older API Boundary Node certificates.
Review: Code changes match the commit message.
36cbd803b
Summary: Update base image references
Notes: Refreshed base image references to the latest versions.
Review: Code changes match the commit message.
Refactoring
6c4efce2e
Summary: Refactor load_checkpoint
for readability and async support
Notes: Refactored the load_checkpoint
function to improve readability and facilitate asynchronous loading of protobufs for validation purposes.
Review: Code changes match the commit message.
Proposal 133901
Summary
- Vote: Adopt
- Hash: All the hashes match
- Reasons to adopt: The release notes match the commits and the code changes. Builds successfully and all the hashes match
Features
cc1319059
Summary: Enable the hashes-in-blocks feature
Notes: The HASHES_IN_BLOCKS_FEATURE_ENABLED
flag has been set to true
, enabling the hashes-in-blocks functionality.
Review: Code changes match the commit message.
Proposal 133902
- Vote: Adopt
- Hash: All the hashes match
- Reasons to adopt: The release notes match the commits and the code changes. Builds successfully and all the hashes match
f910b32ef
Summary: Update to kernel 6.11 and use corresponding base images
Notes: Updated base image references and use 6.11 kernel version.
Review: Code changes match the commit message.