Fix imtermittent failure dispatch test cases
In dispatch test cases, we need a way to put a segment to in-recovery status to test gang recreating logic of dispatcher. We used to trigger a panic fault on a segment and suspend the quickdie() to simulate in-recovery status. To avoid segment staying in recovery mode for a long time, we used a "sleep" fault instead of 'suspend' in quickdie(), so segment can accept new connections after 5 seconds. 5 seconds works fine most of time, but still not stable enough, so we decide to use more straight-forward mean to simulate in-recovery mode which reports a POSTMASTER_IN_RECOVERY_MSG directly in ProcessStartupPacket(). To not affecting other backends, we create a new database so fault injectors only affect dispatch test cases.
Showing
想要评论请 注册 或 登录