algoliasearch-django
algoliasearch-django copied to clipboard
Algolia doesn't handle Django Atomic Transactions
- Django version: 2.0.6
- Algolia Django integration version: 1.7.0
- Language Version: Python 3.6.5
Consider - Auto-Index to be True
Description
While in a Django atomic transaction, if anytime save() is called - algolia is instantly updated. If due to some exception that atomic transaction fails, Algolia would still be updated with invalid values that do not match the database.
Steps To Reproduce
Step 1 - Import your model from app, import django transaction
>>> from myapp import mymodel
>>> from django import transaction
Step 2 - Start a transaction
// Consider there is boolean field status
in model mymodel
>>> with transaction.atomic():
obj = mymodel.objects.first()
obj.status = False
obj.save() # Algolia gets updated here
raise Exception('something here') # This cancels/doesn't commit anything to the database
Thanks for bring this up to our attention, we will take a look soon as possible.
Any update here @nunomaduro ?
Any update on this issue @nunomaduro ?