Частые сбои при удалении в Django с помощью CockroachDB
Я использую CockroachDb (версия 24.2) с Django (версия 5.0.7), но в настоящее время я столкнулся с проблемой, которую я не очень понимаю. Когда я запускаю определенное представление много раз подряд, которое удаляет объект из базы данных Cockroach, это может сработать для 4 из 6 объектов, для которых я запросил удаление, то есть 2 объекта останутся не удаленными, я не получаю никаких Error или stacktrace вообще, транзакция просто не проходит, а Django сообщает, что все прошло нормально.
Вид может быть очень простым, как показано ниже.:
@api_view(['DELETE'])
@authentication_classes([])
@permission_classes([IsAuthenticated])
def delete_my_model_entry(request, pk):
try:
# Fetch the object to be deleted
my_model_entry = MyModel.objects.get(pk=pk)
# Delete the object
my_model_entry.delete()
return Response(status=status.HTTP_204_NO_CONTENT)
except ObjectDoesNotExist:
return Response({'error': 'Object not found'}, status=status.HTTP_404_NOT_FOUND)
except Exception as e:
return Response({'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
Но если я стреляю по нему много раз за короткий промежуток времени, удаление фактически не происходит вообще...
На данный момент я не смог выявить реальную проблему, я просто использую django-cockroachdb==5.0 и psycopg2==2.9.9, в точности как описано в Readme файле библиотек.
Заранее спасибо.