Description

After restarting the Active MNHA node & after the restarted node comes up and before the cold-sync completes, the MNHA node state becomes Active

Symptoms

Node0 has a higher priority than node 1, and preemption is configured. Node 0 was rebooted, hence node 1 went active. Once node0 came up, it appears node0 took the activeness when coldsync was not yet completed

Feb 13 10:01:22 SRG[1] mode:SWITCHING STATE [HOLD] EVENT [Peer Msg Rcvd] <<<<Post reboot node is at hold state
Feb 13 10:01:22  SRG[1] Peer pkt Type 1                                         
Feb 13 10:01:22  No state evaluation as init wait is running                    
Feb 13 10:01:22 ==== PKT-SEND: to Peer 0xb4640102 ====                          
Feb 13 10:01:22 ==== PKT-SEND: Type [SRG Status Ack] pkt_id: 2 size 35 ====     
Feb 13 10:01:33 coldsync status message received from PFE: 0, status: In Progress(0x6) kinij<<<<<< cold sync in progress
Feb 13 10:01:40 last message repeated 2 times                                   
Feb 13 10:01:40 SRG[1] mode:SWITCHING STATE [HOLD] EVENT [Init Wait timer expired] <<<<
Feb 13 10:01:40 Hold state local state evaluate Peer SRG state:ACTIVE           
Feb 13 10:01:40  Local Node HA_FAILOVER_NOT_READY                                                                                                                                                                                      
Feb 13 10:01:40 SRG[1] not failover ready, Marked for premption                 
Feb 13 10:01:40 SRG[1]: BFD split-brain probe not in use                        
Feb 13 10:01:40 SRG-[1] mode:SWITCHING HA STATE CHANGE: [HOLD --> BACKUP] REASON: [Peer state Active received]<<<<<< Node went backup (expected)
Feb 13 10:01:40 Successfully sent an snmp-trap due to a failover from HOLD to BACKUP on SRG-1 Reason: Peer state Active received
Feb 13 10:01:40  BFD monitoring not configured for SRG[1]                       
Feb 13 10:01:40 No ip-monitoring is configured for SRG[1]                       
Feb 13 10:01:40 SRG ifmon start Timer create passed                             
Feb 13 10:01:40 SRG ifmon start [ivl = 2 sec] Timer started                     
Feb 13 10:01:40 Control plane not ready for srg 1, change hold timer to 60s     
Feb 13 10:01:40 SRG[1] hold timer changed to 60                                 
Feb 13 10:01:40 SRG hold Timer create passed                                    
Feb 13 10:01:40 SRG hold [ivl = 60 sec] Timer started                           
Feb 13 10:01:40 SRG[1] 60s hold timer started                                   
Feb 13 10:01:40 SRG[1] Triggering Split brain prev logic stop                   
Feb 13 10:01:40 Split brain prev probe Not Running, do nothing                  
Feb 13 10:01:40  Local Node HA_FAILOVER_NOT_READY                               
Feb 13 10:01:40 SRG[1]: BFD split-brain probe not in use                        
Feb 13 10:01:40 Successfully changed srg info blob                              
Feb 13 10:01:40 jsrpd_ha_peer_srg_status_encode_and_send: before send, pkt_id is 1
Feb 13 10:01:40  Local Node HA_FAILOVER_NOT_READY                               
Feb 13 10:01:40 Total TLV length 28, total Length 35                            
Feb 13 10:01:40 jsrpd_ha_peer_srg_status_encode_and_send: after send, pkt_id is 2
Feb 13 10:01:40 ==== PKT-SEND: to Peer 0xb4640102 ====                          
Feb 13 10:01:40 ==== PKT-SEND: Type [SRG Status Msg] pkt_id: 2 size 35 ====     
Feb 13 10:01:40 Peer SRG msg retry [ivl = 5 sec] Timer started                  
Feb 13 10:01:40  Local Node HA_FAILOVER_NOT_READY                               
Feb 13 10:01:40 Processing SIGUSR2 ...                                          
Feb 13 10:01:40 Read sync DB ready status for srg 1 as : 0                      
Feb 13 10:01:40 Multi-srg sync DB ready status is updated!                      
Feb 13 10:01:40 Status unchanged 0                                              
Feb 13 10:01:40 Received Peer msg of len=35                                     
Feb 13 10:01:40 ==== PKT-RCVD: Sender-id :2 Type [SRG Status Ack] pkt_id: 2 ====
Feb 13 10:01:40 Peer SRG msg retry Timer stopped                                
Feb 13 10:01:42 SRG[1] mode:SWITCHING STATE [BACKUP] EVENT [Path Monitoring Success] <<<<
Feb 13 10:01:42 Prempt is Pending. let's take action                            
Feb 13 10:01:42 SRG[1] pending event stored State :[ACTIVE] Reason : [HA state preemption]
Feb 13 10:01:43 ifl : st0.1 and op is : 2                                       
Feb 13 10:01:43 last message repeated 3 times                                   
Feb 13 10:01:43 Processing SIGUSR2 ...                                          
Feb 13 10:01:43 Read sync DB ready status for srg 1 as : 1                      
Feb 13 10:01:43  Local Node HA_FAILOVER_NOT_READY                               
Feb 13 10:01:43 Control plane is ready for srg 1, stop the hold timer           
Feb 13 10:01:43 Handling pending event for srg 1                                
Feb 13 10:01:43 SRG-[1] mode:SWITCHING HA STATE CHANGE: [BACKUP --> ACTIVE] REASON: [HA state preemption]<<<< Control plane state is ready but cold sync is not done yet.
Feb 13 10:01:43 Successfully sent an snmp-trap due to a failover from BACKUP to ACTIVE on SRG-1 Reason: HA state preemption

Solution

This is traced via PR1878637 and has been fixed in the following releases:

  • Junos 24.4R2-S1
  • Junos 25.2R1
  • Junos 25.2R2
  • Junos 25.3R1

Modification History

2026-03-06 : Article Created