From a06e605e671bfcbe336addd780ae7c9e79069b99 Mon Sep 17 00:00:00 2001 From: Erdenezul Batmunkh Date: Thu, 29 Aug 2019 11:11:27 +0200 Subject: [PATCH] Add BulkWriteError exception --- mongoengine/errors.py | 5 +++++ mongoengine/queryset/base.py | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/mongoengine/errors.py b/mongoengine/errors.py index 9852f2a1..b76243d3 100644 --- a/mongoengine/errors.py +++ b/mongoengine/errors.py @@ -12,6 +12,7 @@ __all__ = ( "InvalidQueryError", "OperationError", "NotUniqueError", + "BulkWriteError", "FieldDoesNotExist", "ValidationError", "SaveConditionError", @@ -51,6 +52,10 @@ class NotUniqueError(OperationError): pass +class BulkWriteError(OperationError): + pass + + class SaveConditionError(OperationError): pass diff --git a/mongoengine/queryset/base.py b/mongoengine/queryset/base.py index 46b20d78..6d3fb41a 100644 --- a/mongoengine/queryset/base.py +++ b/mongoengine/queryset/base.py @@ -20,6 +20,7 @@ from mongoengine.common import _import_class from mongoengine.connection import get_db from mongoengine.context_managers import set_write_concern, switch_db from mongoengine.errors import ( + BulkWriteError, InvalidQueryError, LookUpError, NotUniqueError, @@ -356,7 +357,7 @@ class BaseQuerySet(object): # inserting documents that already have an _id field will # give huge performance debt or raise message = u"Bulk write error: (%s)" - raise NotUniqueError(message % six.text_type(err.details)) + raise BulkWriteError(message % six.text_type(err.details)) except pymongo.errors.OperationFailure as err: message = "Could not save document (%s)" if re.match("^E1100[01] duplicate key", six.text_type(err)):