I set the approval assignment rule in the business processes, since I processed this, the approval notification mail is not being sent. I tried to remove it again and try emails are being sent?
No, it’s not standard process. It doesn’t matter if you are using default approvalScheme or approvalAssignmentRule, notification would get triggered for approvers. Cross check your LCM Variables once (One variable I could remember is ‘approvalEmailTemplate’)
Using the incoming Approval to set only the owner and description, rather than creating a new one. It seems you are creating approvals from scratch in addApproval(). It would be better to update the existing approvals instead.
Alternatively, try setting all arguments from the incoming approval.