diff --git a/actors/sunbird-lms-mw/actors/user/src/main/java/org/sunbird/user/service/impl/UserRoleServiceImpl.java b/actors/sunbird-lms-mw/actors/user/src/main/java/org/sunbird/user/service/impl/UserRoleServiceImpl.java
index 8993806f9cdfba85d104c2efc9d3d6cdbc12475c..5e5f70ce2d4838dad160482d781a305b8b715856 100644
--- a/actors/sunbird-lms-mw/actors/user/src/main/java/org/sunbird/user/service/impl/UserRoleServiceImpl.java
+++ b/actors/sunbird-lms-mw/actors/user/src/main/java/org/sunbird/user/service/impl/UserRoleServiceImpl.java
@@ -10,6 +10,7 @@ import java.util.Map;
 import java.util.Optional;
 import java.util.stream.Collectors;
 import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.lang3.SerializationUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.sunbird.exception.ProjectCommonException;
 import org.sunbird.exception.ResponseCode;
@@ -47,8 +48,10 @@ public class UserRoleServiceImpl implements UserRoleService {
               userRequest, dbUserRoleListToUpdate, dbUserRoleListToDelete, context);
       // Update existing role scope, if same role is in request
       if (CollectionUtils.isNotEmpty(dbUserRoleListToUpdate)) {
+        List<Map<String, Object>> newUserReqMap =
+            SerializationUtils.clone(new ArrayList<>(dbUserRoleListToUpdate));
+        userRoleListResponse.addAll(newUserReqMap);
         userRoleDao.updateRoleScope(dbUserRoleListToUpdate, context);
-        userRoleListResponse.addAll(dbUserRoleListToUpdate);
       }
       // Delete existing roles of user, if the same is not in request
       if (CollectionUtils.isNotEmpty(dbUserRoleListToDelete)) {