From 771a1245d8d521932b81a7a55729fa141550c7a3 Mon Sep 17 00:00:00 2001 From: DanB Date: Wed, 8 Jan 2020 14:03:48 +0100 Subject: [PATCH] SessionS - cloning AttributeS event to avoid concurrency --- sessions/sessions.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sessions/sessions.go b/sessions/sessions.go index 977964cfc..9a9fe42ac 100644 --- a/sessions/sessions.go +++ b/sessions/sessions.go @@ -2084,7 +2084,7 @@ func (sS *SessionS) BiRPCv1InitiateSession(clnt rpcclient.ClientConnector, rplyAttr, err := sS.processAttributes(args.CGREvent, args.ArgDispatcher, args.AttributeIDs) if err == nil { - args.CGREvent = rplyAttr.CGREvent + args.CGREvent = rplyAttr.CGREvent.Clone() // avoid concurrency with rply.Attributes if tntIface, has := args.CGREvent.Event[utils.MetaTenant]; has { // special case when we want to overwrite the tenant args.CGREvent.Tenant = tntIface.(string) @@ -2307,7 +2307,7 @@ func (sS *SessionS) BiRPCv1UpdateSession(clnt rpcclient.ClientConnector, rplyAttr, err := sS.processAttributes(args.CGREvent, args.ArgDispatcher, args.AttributeIDs) if err == nil { - args.CGREvent = rplyAttr.CGREvent + args.CGREvent = rplyAttr.CGREvent.Clone() if tntIface, has := args.CGREvent.Event[utils.MetaTenant]; has { // special case when we want to overwrite the tenant args.CGREvent.Tenant = tntIface.(string)