---

**[tickets:#3402] amf: SI partial assignment after split-brain recovery**

**Status:** assigned
**Milestone:** 5.27.01
**Created:** Fri Jun 19, 2026 04:47 AM UTC by Thang Duc Nguyen
**Last Updated:** Fri Jun 19, 2026 04:47 AM UTC
**Owner:** Thang Duc Nguyen


Test scenario:
1. Cluster starts with SC-1 as Active controller, SC-3 as Standby.
2. Two applications deployed: osaftest0 (SI A) and osaftest1 (SI B).
3. For safSi=B,safApp=osaftest1:
    4. safSu=1 (on SC-1) has Active assignment.
    5. safSu=2 (on SC-2) has Standby assignment.
5. Network split into: [SC-1, SC-2, SC-3, SC-4, SC-5] vs [SC-6, SC-7, SC-8, 
SC-9, SC-10]
6. SC-1 is rebooted (the Active controller holding active assignment for SI B).
7. Network merged back.
8. Verification: SI B should be FULLY_ASSIGNED — FAILS

The issue is due to: When an SI has only a standby assignment remaining (active 
was lost due to node reboot), the function fails to promote the standby SU to 
active. Instead, it creates a duplicate standby assignment, leaving the SI 
permanently in PARTIALLY_ASSIGNED state.

The execution flow when SI B has only a standby (no active):
1. avd_sg_2n_act_susi() scans the SG and finds:
    2. SI B has only one SU assigned (SU2 with standby state).
    3. Since SU2 is standby-only, returns: a_susi = NULL, s_susi = SU2's 
standby SUSI.
3. Back in avd_sg_2n_su_chose_asgn(), enters the a_susi == NULL branch.
4. Calls avd_sg_2n_assign_act_si() for each in-service SU.
5. avd_sg_2n_assign_act_si() checks: i_si->list_of_sisu == AVD_SU_SI_REL_NULL
    6. But SI B already has SU2 as standby → list_of_sisu != NULL
    7. Condition is false → SI B is skipped
7. l_flag remains false, falls through to standby assignment section.
8. Standby section: i_si->list_of_sisu->si_next == NULL → true (only one SUSI).
9. Creates another standby for SI B → 2 standby, 0 active!



---

Sent from sourceforge.net because [email protected] is 
subscribed to https://sourceforge.net/p/opensaf/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/opensaf/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.
_______________________________________________
Opensaf-tickets mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets

Reply via email to