QFX5100 has a hardware limitation that might cause BFD hello packets to be lost / dropped when BFD timers are set below the supported settings. The minimum supported BFD timer is 1000ms. This issue was reproduced with BFD timers set to 300 and 350.
When running a RSI, the PPM drops BFD hello packets. Then the BGP session will drop. The following conditions need to be in place for this issue to occur: 1) BFD is set to 300ms (an unsupported timer). 2) More than one RSI is run at the same time, i.e., an automated script running na RSI and a user logged into a switch running an RSI not knowing the script is running at that same time. 3) Some event that causes the PFE micro kernel to be busy and miss a BFD hello packet because the timer is set to 300ms.
The microkernel polls the PFE looking for packets. The PFE does NOT interrupt and send to the microkernel. This is the reason for the recommended 1000ms (1sec) BFD timers.
root@lab-switch-1> start shell root@lab-switch:RE:0% vty fpc0 FPC0(lab-switch vty)# sh ppm adjacencies PPM distributed adjacencies Protocol Holdtime (msec) PPM handle Inline BFD 3000 7 No BFD 3000 8 No LACP 3000 17 No LACP 3000 21 No LACP 3000 22 No LACP 3000 18 No LACP 3000 19 No LACP 3000 20 No Total adjacencies: 8 <-- at risk if this number is 20 or higher and BFD is set to 350 or less
This is a product/hardware limitation. You can either lower the PPM adjacencies, or raise the BFD timer. You can also deactivate BFD, then collect the RSI.
2019-08-23: Updated the symptoms and cause with more details.