diff --git a/netbox/ipam/api/views.py b/netbox/ipam/api/views.py index df998c0ad..2d50e7732 100644 --- a/netbox/ipam/api/views.py +++ b/netbox/ipam/api/views.py @@ -19,7 +19,7 @@ from ipam import filtersets from ipam.models import * from ipam.utils import get_next_available_prefix from netbox.api.viewsets import NetBoxModelViewSet -from netbox.api.viewsets.mixins import ObjectValidationMixin +from netbox.api.viewsets.mixins import ObjectValidationMixin, discard_events_on_rollback from netbox.config import get_config from netbox.constants import ADVISORY_LOCK_KEYS from utilities.api import get_serializer_for_model @@ -295,8 +295,9 @@ class AvailableObjectsView(ObjectValidationMixin, APIView): return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) # Create the new IP address(es) + using = router.db_for_write(self.queryset.model) try: - with transaction.atomic(using=router.db_for_write(self.queryset.model)): + with transaction.atomic(using=using), discard_events_on_rollback(self, using=using): created = serializer.save() self._validate_objects(created) except ObjectDoesNotExist: