diff --git a/erpnext/crm/doctype/email_campaign/email_campaign.py b/erpnext/crm/doctype/email_campaign/email_campaign.py index 4454ede5310..bf0379b8e32 100644 --- a/erpnext/crm/doctype/email_campaign/email_campaign.py +++ b/erpnext/crm/doctype/email_campaign/email_campaign.py @@ -174,6 +174,7 @@ def send_mail(entry, email_campaign): subject = frappe.render_template(email_template.get("subject"), context) content = frappe.render_template(email_template.response_, context) + frappe.db.savepoint("email_campaign_send") try: comm = make( doctype="Email Campaign", @@ -197,6 +198,7 @@ def send_mail(entry, email_campaign): queue_separately=True, ) except Exception: + frappe.db.rollback(save_point="email_campaign_send") frappe.log_error(title="Email Campaign Failed.") return comm