diff --git a/sessions/sessions.go b/sessions/sessions.go index 460c5c7bb..5f05e9374 100644 --- a/sessions/sessions.go +++ b/sessions/sessions.go @@ -2550,9 +2550,6 @@ func (sS *SessionS) BiRPCv1ProcessCDR(clnt rpcclient.RpcClientConnection, if cgrEvWithArgDisp.ID == "" { cgrEvWithArgDisp.ID = utils.GenUUID() } - if _, has := cgrEvWithArgDisp.Event[utils.Source]; !has { - cgrEvWithArgDisp.Event[utils.Source] = utils.MetaSessionS - } // RPC caching if sS.cgrCfg.CacheCfg()[utils.CacheRPCResponses].Limit != 0 { @@ -2573,6 +2570,10 @@ func (sS *SessionS) BiRPCv1ProcessCDR(clnt rpcclient.RpcClientConnection, nil, true, utils.NonTransactional) } // end of RPC caching + // in case that source don't exist add it + if _, has := cgrEvWithArgDisp.Event[utils.Source]; !has { + cgrEvWithArgDisp.Event[utils.Source] = utils.MetaSessionS + } ev := engine.NewSafEvent(cgrEvWithArgDisp.Event) cgrID := GetSetCGRID(ev)