Proposal to elect new release rc--2024-03-27_23-01

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 128865.

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

Release Notes for release-2024-03-27_23-01-base (ac971e7b4c851b89b312bee812f6de542ed907c5)

Changelog since git revision 463296c0bc82ad5999b70245e5f125c14ba7d090

Features:

  • e33a10e1b Consensus(ecdsa): Enable reduced tECDSA latency feature
  • cb144e1a7 Crypto: add threshold Schnorr vault signer trait
  • f5bf35a12 Execution: Limit the total size of canister logs buffer
  • a23f854de Execution,Message Routing: Implement MessagePool
  • 2a6eb75b9 Networking: allow fetching api boundary nodes via subnet read state request
  • cf1afec73 Runtime,Execution: Update format of logging canister traps

Bugfixes:

  • 5d5d7425c Execution: Support both versions of chunk_hash type for install_chunked_code
  • e4f38e051 Networking: state sync manager fixes

Chores:

  • baf0963ee Boundary Nodes,Node(nginx): remove add_header instructions that have no effect
  • 23ecad053 Consensus(ecdsa): move ecdsa_key_id from QuadrupleId to QuadrupleInCreation and PreSignatureQuadrupleRef.
  • 469babde6 Crypto: Add a Ed25519 key conversion routine
  • e9bd734d0 Execution: Add proto de/serialization for SchnorrKeyId and MasterPublicKeyId
  • b412b7931 Financial Integrations,Crypto: Move hex dependency to workspace
  • c0f74b193 Networking: Add metric for HTTP version used for incoming requests.
  • 8d2804339 Networking(http_endpoint): migrate pprof and dashboard endpoint to axum
  • 6668eb3f4 Networking(http_endpoint): migrate read state endpoinst to axum
  • 1ba61ea0c Runtime: Add Wasmtime store limits

Refactoring:

  • a6e9e06df Consensus: Introduce ConsensusResponse with optional fields

Tests:

  • 897f61fec Consensus: Add a unit test for make_reshare_dealings_response
  • fece3b6c0 Consensus(ecdsa): prepare some unit tests for multiple ecdsa keys
  • ba810441f Crypto: Fix threshold ECDSA serialization stability tests
  • e3aa7a17e Execution,Runtime: Add heartbeat and timers canister logging tests
  • fdd49e523 Message Routing,Runtime: proptest for sharded overlays

Other changes:

  • fc6386010 Boundary Nodes,Node: () BN network tuning
  • 4c63db7e7 Execution,Interface: Make SnapshotId unique over all subnets.
  • 86f415458 Execution,Runtime: Remove remaining traces of unused query_allocation
  • a893e9b56 Message Routing,Interface: Canister stores the belonging snapshot ids
  • da0184fb0 Node: Improve image caching
  • 92c810e22 Node: Updating container base images refs [2024-03-21-0830]

IC-OS Verification

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

# From https://github.com/dfinity/ic#verifying-releases
sudo apt-get install -y curl && curl --proto '=https' --tlsv1.2 -sSLO https://raw.githubusercontent.com/dfinity/ic/ac971e7b4c851b89b312bee812f6de542ed907c5/gitlab-ci/tools/repro-check.sh && chmod +x repro-check.sh && ./repro-check.sh -c ac971e7b4c851b89b312bee812f6de542ed907c5

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.

2 Likes

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 128864.

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

Release Notes for release-2024-03-27_23-01-p2p (30a4021d7463e4e9ee96b3f279cf38e01b1028ca)

Changelog since git revision ac971e7b4c851b89b312bee812f6de542ed907c5

Features:

  • 30a4021d7 Networking(p2p): Enable the new p2p for consensus

IC-OS Verification

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

# From https://github.com/dfinity/ic#verifying-releases
sudo apt-get install -y curl && curl --proto '=https' --tlsv1.2 -sSLO https://raw.githubusercontent.com/dfinity/ic/30a4021d7463e4e9ee96b3f279cf38e01b1028ca/gitlab-ci/tools/repro-check.sh && chmod +x repro-check.sh && ./repro-check.sh -c 30a4021d7463e4e9ee96b3f279cf38e01b1028ca

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.

2 Likes

This week’s release continues the rollout of our effort to reduce the latency of tECDSA signature requests. After upgrading to this version, the Internet Computer’s tECDSA signing subnets will require one less consensus round when answering signature requests. This week, we propose to upgrade the tECDSA production key subnets, which are:

  • uzr34: the backup subnet of Secp256k1:key_1
  • pzp6e: the signing subnet of Secp256k1:key_1

For compatibility reasons, we again propose to temporarily handle signature requests on the backup subnet, while the signing subnet is being upgraded. This switch will be made with additional update subnet proposals. In particular, the proposed rollout will be scheduled as follows, where each point represents a single proposal:

  1. Upgrade backup subnet uzr34
  2. Enable signing on uzr34
  3. Disable signing on signing subnet pzp6e
  4. Upgrade signing subnet pzp6e
  5. Re-enable signing on signing subnet pzp6e
  6. Disable signing on backup subnet uzr34

Note that while signing is handled on the backup subnet, signature throughput may be reduced.

3 Likes

Reviewers for the CodeGov project have completed our review of these replica updates.

Proposal ID: 128846
Vote: ADOPT
Full report on OpenChat

Proposal ID: 128864
Vote: ADOPT
Full report on OpenChat

Proposal ID: 128865
Vote: ADOPT
Full report on OpenChat

At the time of this comment on the forum there are still 2 days left in the voting period, which means there is still plenty of time for others to review the proposal and vote independently.

We had several very good reviews of the Release Notes on these proposals by @Zane, @cyberowl, @ZackDS, @massimoalbarello, @ilbert, @Gekctek, and @hpeebles. The IC-OS Verification was also performed by @jwiegley and @tiago89. I recommend folks talk a look and see the excellent work that was performed on these reviews by the entire CodeGov team. Feel free to comment here or in the thread of each respective proposal in our community on OpenChat if you have any questions or suggestions about these reviews.

4 Likes

Can we get an update why this FAILED with “Rejection message: IC0503: Canister rwlgt-iiaaa-aaaaa-aaaaa-cai trapped explicitly: Panicked at ‘[Registry] Cannot retire versions {“88e489c293ce2d6ede5aef1866775ca7eab614a6”}, because they are currently deployed to a subnet!’, rs/registry/canister/src/mutations/do_update_elected_replica_versions.rs:153:13”
? Thanks.

1 Like

We had a bug in the automation that publishes releases. As the message says, version is currently active on some subnets and therefore cannot be unelected.

2 Likes

We’re resubmitting the 128865 proposal because it failed. To avoid the proposal failing again, we have to empty the unelect_versions list since 88e489c293ce2d6ede5aef1866775ca7eab614a6 version is active on a subnet.

Proposal: 128876

3 Likes

Looking back @ Proposal 128804 that also failed but a proposal to update unassigned nodes fixed the problem, I am curious if updating the subnets related would have solved the problem. Also what is the downside of not unelecting may that be one ore more prior versions ? Thank you.

2 Likes

Looking back @ Proposal 128804 that also failed but a proposal to update unassigned nodes fixed the problem

proposal Proposal 128804 failed because of similar bug where unassigned nodes version was not excluded from unelect nodes version. The bug we experienced with this week’s release proposal is slightly different.

I am curious if updating the subnets related would have solved the problem.

It would, but there’s a reason why the subnets are not yet upgraded. If you look at a thread from previous release, you’ll see that we had some issues on the last week’s release and as a result the rollout for previous release still did not finish.

Also what is the downside of not unelecting may that be one ore more prior versions ?

We would want to avoid updating to older versions because there are no strong guarantees that newer versions are backwards compatible with much older ones. For each new release we verify that the new versions is backwards compatible only with the latest version rolled out to mainnet. However, there’s very little downside to not unelecting an old version since anyhow all the upgrades go through governance. Unelecting versions is just used as an extra precaution to keep the possibility of untested upgrade proposal to a minimum.

Finally, as you may have guessed from what I explained above, unelect versions list we propose highly depends on the state of the mainnet. Last week when the proposal was placed, rollout was complete so we could unelect many versions that are not used anymore. This week however, the rollout is not yet finished so there are no versions that should be unelected.

4 Likes

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 128904.

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

Release Notes for release-2024-03-27_23-01-p2p-ecdsa-fix (ad8024d83965bac64239f53c2c6d4b5c6fb480d3)

Changelog since git revision 30a4021d7463e4e9ee96b3f279cf38e01b1028ca

Bugfixes:

  • ad8024d83 Consensus(ecdsa): Finish ongoing signature requests if signing is disabled

IC-OS Verification

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

# From https://github.com/dfinity/ic#verifying-releases
sudo apt-get install -y curl && curl --proto '=https' --tlsv1.2 -sSLO https://raw.githubusercontent.com/dfinity/ic/ad8024d83965bac64239f53c2c6d4b5c6fb480d3/gitlab-ci/tools/repro-check.sh && chmod +x repro-check.sh && ./repro-check.sh -c ad8024d83965bac64239f53c2c6d4b5c6fb480d3

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.

2 Likes

Ok cool, it’s all clear now, thank you so much for the detailed answer. So in a normal flow all the subnets would be updated before the replica update executes and would work normally as before. Thanks again.

2 Likes

Reviewers for the CodeGov project have completed our review of these replica updates. All reviews consisted of IC-OS verification only. There was one report of failing the IC-OS verification on the first attempt, but all others were successful.

Proposal ID: 128876
Vote: ADOPT
Full report on OpenChat

Proposal ID: 128904
Vote: ADOPT
Full report on OpenChat

At the time of this comment on the forum there are still 2 days left in the voting period, which means there is still plenty of time for others to review the proposal and vote independently.

2 Likes

The rollout was completed successfully and signing requests are again handled by the signing subnet pzp6e using the new implementation. Summary of all proposals:

  1. Upgrade backup subnet uzr34: Proposal 129033
  2. Enable signing on uzr34: Proposal 128896
  3. Disable signing on signing subnet pzp6e: Proposal 129029
  4. Upgrade signing subnet pzp6e: Proposal 129040
  5. Re-enable signing on signing subnet pzp6e: Proposal 129041
  6. Disable signing on backup subnet uzr34: Proposal 129042

Thanks to everyone who participated!

3 Likes