-
Notifications
You must be signed in to change notification settings - Fork 7
Implement HA-Scope actor #73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
yue-fred-gao
wants to merge
113
commits into
sonic-net:master
Choose a base branch
from
yue-fred-gao:hascope_actor
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
+1,144
−134
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
swbus-cli needs to display the result
- Fix compilation warnings - Reduce the use of global edge runtime, which is bad for running tests in parallel - Introduce ha_actor_messages to formalize the message key for actors
- Spawn common bridge to send selected dpu_state update to local dpu
The reason is in dpu test, Dpu actor will try to connect config_db with db_named. That will implicitly initialize SonicDBConfig. So when later test_get_dpu_config_from_db tries to initialize SonicDBConfig, it complains. This reverts commit 8c0285d.
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
- Move dpu_appl_db id to 14 because redis only supports 16 ids - Fix some lint warning - Added some tracing for debugging
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
r12f
approved these changes
Jul 6, 2025
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
zjswhhh
approved these changes
Jul 7, 2025
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
why
According to HAMGR design at https://github.com/r12f/SONiC/blob/user/r12f/hamgrd/doc/smart-switch/high-availability/smart-switch-ha-hamgrd.md, we need ha-scope actor to program dpu DASH_HA_SCOPE_TABLE and npu STATE_DB DASH_HA_SCOPE_STATE. It is the main actor to coordinate between DPU and SDN controller to bring HA up or down in DPU.
what this PR does
Initialization: Receives a DASH_HA_SCOPE_CONFIG_TABLE with disable=true, sets up initial state, registers with vDPU and HaSet.
State Updates: Receives state from HaSet and vDPU, updates DPU and NPU state tables.
Role Activation: Handles admin request to enable HA via DASH_HA_SCOPE_CONFIG_TABLE with disable=false, processes pending activation, waits for approval, then triggers DPU to activate the role.
Role Activated: Once DPU confirms, notifies vDPU and updates NPU state.
Planned Shutdown: Handles admin request to set HA state to "dead", notifies vDPU, and updates state accordingly.