We are facing race condition problem. From core dump info.
When state_machine queue deal with resources update, in collector, the generator's vsession is NULL, state_machine_ is NULL and disconnected state is NULL.
The race condition seems like collector receive redis disconnection firstly, and enqueue resource update message to state_machine_ queue, after that, receive session remove. Because session remove was immediately processed. So when queue message trigger callback, in fact, the state_machine has been removed.
We are facing race condition problem. From core dump info.
When state_machine queue deal with resources update, in collector, the generator's vsession is NULL, state_machine_ is NULL and disconnected state is NULL.
The race condition seems like collector receive redis disconnection firstly, and enqueue resource update message to state_machine_ queue, after that, receive session remove. Because session remove was immediately processed. So when queue message trigger callback, in fact, the state_machine has been removed.