daemon/lrc: bizzare call state transitions when call fails immediately
Issue generated from Tuleap's migration script. Originally submitted by: Stepan Salenikovich (ssalenik)
It seems like when a call fails, lrc puts in Failed -> Over state, but then a new call object is created in the Failed state.
lrc log:
Creating the call to "ring" failed
Calling action ACCEPT (0) on Call(0x603000b18aa0) with state "Dialing" . Become "Failed"
Call State Changed for call "15222503668050492823" . New state : "FAILURE"
Call not found "15222503668050492823" new state "FAILURE"
New foreign call: "15222503668050492823"
Building call "15222503668050492823" failed, it may already have been destroyed by the daemon
Call State Changed for call "15222503668050492823" . New state : "OVER"
Call not found "15222503668050492823" new state "OVER"
New foreign call: "15222503668050492823"
Building call "15222503668050492823" failed, it may already have been destroyed by the daemon
State changing from "Failed" to "Over" on Call(0x603000b18aa0)
Cannot remove Call(0x603000b18aa0) : call not found in tree
Calling action REFUSE (1) on Call(0x603000b18aa0) with state "Failed" . Become "Over"