Voting is open for a new IC release - 1a12201

Hello there!

we are happy to announce that voting is now open for a new IC release .
The NNS proposal is here: IC NNS Proposal 122910.

Here is a summary of the changes since the last release:

  • [2348d1839] Consensus: Move the resolve function from state_tool::split to state_manager::split so that it can be reused by the ic-recovery tool.
  • [680d4db6d] Consensus: chore: small clean-ups of IC-Recovery
  • [d106c60bc] Consensus: chore: Use ProxyDecodeError and factor some parsing out into its own functions
  • [f2b04ad8d] Consensus: chore: Enable linting error for bindings_with_variant_name
  • [d275d16d9] Consensus: feat: implement halting of the consensus at a cup height
  • [fc3b6c659] Consensus: fix(ecdsa): Reject signing requests for disabled keys
  • [b296abda7] Crypto: chore: add benchmarks for secp point-scalar vartime multiplication
  • [48bd267bb] Crypto: fix: Ensure that CryptoError::is_reproducible does not panic
  • [906c41668] Execution: chore: Add consumed instructions for install_code message
  • [b55af29f5] Execution: fix: Revert ā€œDeleted call contexts do not prevent canister from reaching stopped stateā€
  • [af6bc86e8] Message Routing: feat: Implement manifest splitting in State Manager
  • [fc6585e98] Message Routing: feat: Manifest splitting support in state-tool
  • [0bd6d4611] Message Routing: improvement: Decouple message memory
  • [68f17e93b] Message Routing: improvement: Do not write empty protobuf files
  • [eeef9ef94] Message Routing: improvement: Check manifest consistency during validation
  • [f24206708] Message Routing: improvement: Require manifest version when parsing
  • [93684ff3d] Message Routing: fix: Also retain ingress messages addressed to subnet in after_split()
  • [a2c8c6cb4] Message Routing: fix: Do not reset SystemMetadata::prev_state_hash
  • [9ebfcfc40] Message Routing: fix: Fix state-tool verify_manifest
  • [076c3489f] Networking: feat(firewall): Limit simultaneous connections from any ip
  • [4824fd135] Node: Create dev-sev target for setupos, hostos and guestos
  • [5938ed2d3] Node: Fix HostOS ā€œfirst boot stateā€ typo
  • [b1a486c1a] Node: Fix for script not recognizing different NIC types
  • [6da550e88] Runtime: Fix PageMap::get_memory_region bug
  • [24a9878aa] Runtime: Reserve memory for response/cleanup execution
  • [6a9ec3aed] Runtime: Upgrade wasmtime to version 9.0.3
  • Various tech-debt management: code refactoring, docs, bug fixes, test updates

IC-OS Verification

To build and verify the IC-OS disk image, run:

# From https://github.com/dfinity/ic#building-the-code
# This process requires Mac/Linux/WSL2, Git and Podman on your machine.
git clone https://github.com/dfinity/ic
cd ic
git fetch origin
git checkout 1a12201749b946dddb43a17b7f67f1c7b7ac8844
if ./gitlab-ci/container/build-ic.sh -i ; then
    curl -LO https://download.dfinity.systems/ic/1a12201749b946dddb43a17b7f67f1c7b7ac8844/guest-os/update-img/update-img.tar.gz
    shasum -a 256 artifacts/icos/guestos/update-img.tar.gz update-img.tar.gz
else
    echo "IC-OS build failed. Verification unsuccessful." >&2
fi

The two SHA256 sums printed above from a) the downloaded CDN image and b) the locally built image,
must be identical, and must match the SHA256 from the payload of the NNS proposal.

3 Likes

And there is another feature build in this release cycle.

  • Enable Wasm-native stable memory

This is an experimental build with a performance improvement. It will be rolled out only to a few subnets in this release cycle.

Forum post that explains the feature: Proposal: Wasm-Native Stable Memory

NNS motion proposal of the feature: Proposal: 88812 - IC Dashboard

2 Likes

Reviewers for the CodeGov project have completed our review of this replica update and our findings from this review can be viewed in this post in the CodeGov portal on DSCVR. The CodeGov neuron 2649066124191664356 has voted to adopt proposal 122910.

We are currently looking for additional reviewers. If you are interested, then please Apply at codegov.org. The current bounty for this work can always be found in this post in the CodeGov portal.

At the time of this comment on the forum, there are still 2 days left in the voting period. We encourage people to review the replica update proposal and vote.

2 Likes

Reviewers for the CodeGov project have also completed our review of this replica update and our findings from this review can be viewed in this post in the CodeGov portal on DSCVR. The CodeGov neuron 2649066124191664356 has voted to adopt proposal 122911.

1 Like

Hotfix for a query caching replica crash

The Internet Computer versions 2023-05-31 (5eb2810) rolled out last week, as well as 2023-06-07 (1a122017) planned for this week, had a bug in the query cache. In certain corner cases a newly added entry had an older timestamp than the already cached entry. This caused a panic in Rust code that computed the caching duration metric by subtracting the timestamps and that did not expect a negative duration. The crash is not critical because a crashing replica can recover and continue execution.

The bug is fixed by the following hotfixes:

Note that the hotfixes also revert the Wasm-native stable memory feature that was planned for experimental rollout this week. DFINITY submitted two proposals to elect replica versions based on these commits:

Additionally, the time library function was made more robust by changing subtraction that may panic into a subtraction that uses saturation operation. The change is in code review as of writing.

4 Likes

Reviewers for the CodeGov project have completed our review of these replica updates and our findings from this review can be viewed in this post and in this post in the CodeGov portal on DSCVR. The CodeGov neuron 2649066124191664356 has voted to adopt proposal 122923 and 122924.

1 Like