Skip to content

chore: Drop NetworkTopology::full_topology - #11216

Merged
alin-at-dfinity merged 4 commits into
masterfrom
alin/stop-populating-full_topology
Aug 25, 2026
Merged

alin-at-dfinity merged 4 commits into
masterfrom
alin/stop-populating-full_topology

Conversation

@alin-at-dfinity

@alin-at-dfinity alin-at-dfinity commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

NetworkTopology::full_topology (only populated for the NNS subnet) holds the same subnets as NetworkTopology::subnets and the same routing table as NetworkTopology::routing_table. Drop it altogether, as it is unused by all subnets but the NNS; and the NNS behaves identically with or without it (including in the case of a replica downgrade to a version that still populates it).

`NetworkTopology::full_topology` (only populated for the NNS subnet) holds the same subnets as `NetworkTopology::subnets` and the same routing table as `NetworkTopology::routing_table`. Stop populating it, so it can be dropped in a future release.
@alin-at-dfinity
alin-at-dfinity requested a review from a team as a code owner August 19, 2026 09:35
@github-actions github-actions Bot added the chore label Aug 19, 2026
@zeropath-ai

zeropath-ai Bot commented Aug 19, 2026

Copy link
Copy Markdown

No security or compliance issues detected. Reviewed everything up to 7d76ca5.

Security Overview
Detected Code Changes
Change Type Relevant files
Refactor ► rs/canonical_state/src/lazy_tree_conversion.rs
    Replace usage of routing_table_for_certification() with routing_table(), and subnets_for_certification() with subnets() in multiple sites
Refactor ► rs/http_endpoints/nns_delegation_manager/src/nns_delegation_manager.rs
    Use network_topology.routing_table() and network_topology.subnets() for delegation checks
Refactor ► rs/http_endpoints/nns_delegation_reader/src/reader.rs
    Update documentation and references from routing_table_for_certification()/subnets_for_certification() to routing_table()/subnets()
Refactor ► rs/http_endpoints/public/tests/common/mod.rs
    Adjust test expectations to align with routing_table() and subnets() usage
Refactor ► rs/messaging/src/message_routing.rs
    Rename and adjust internal topology construction from full_topology/subnets_for_certification to standard subnets/routing_table (and related references)
Refactor ► rs/protobuf/def/state/metadata/v1/metadata.proto
    Remove full_topology and related reserved field entries from NetworkTopology message
Refactor ► rs/protobuf/src/gen/state/state.metadata.v1.rs
    Remove full_topology field from NetworkTopology struct
Refactor ► rs/replicated_state/src/metadata_state.rs
    Remove FullTopology struct and full_topology field from NetworkTopology; adjust related comments and structure
Refactor ► rs/replicated_state/src/metadata_state/proto.rs
    Remove serialization/deserialization handling for FullTopology in NetworkTopology
Refactor ► rs/replicated_state/src/metadata_state/tests.rs
    Update tests to use routing_table() and subnets() and remove full_topology-related assertions

…ntical to the base topology on every single subnet, the behavior with or without full_topology is identical. And would be identical in case of a replica downgrade (it would simply fall back to the base topology instead of full_topology).
@alin-at-dfinity
alin-at-dfinity requested a review from a team as a code owner August 24, 2026 12:54
@alin-at-dfinity alin-at-dfinity changed the title chore: Stop populating NetworkTopology::full_topology chore: Drop NetworkTopology::full_topology Aug 24, 2026
Comment thread .vscode/settings.json

@schneiderstefan schneiderstefan left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but could you please do the RUN_ALL_BAZEL_TESTS thing, so that all upgrade downgrade tests have a chance to run?

@alin-at-dfinity alin-at-dfinity added the CI_ALL_BAZEL_TARGETS Runs all bazel targets label Aug 24, 2026
@alin-at-dfinity
alin-at-dfinity added this pull request to the merge queue Aug 25, 2026
Merged via the queue into master with commit 6d96a60 Aug 25, 2026
40 checks passed
@alin-at-dfinity
alin-at-dfinity deleted the alin/stop-populating-full_topology branch August 25, 2026 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants