-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace django-elasticsearch-dsl-drf with vanilla django-elasticsearch-dsl implementation #2297
Conversation
Test Results71 tests +68 71 ✅ +68 12s ⏱️ +12s Results for commit e3d3817. ± Comparison against base commit e84f864. This pull request removes 3 and adds 71 tests. Note that renamed tests count towards both.
♻️ This comment has been updated with latest results. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
everything looks in order. i'm kind of happy for this change. the magic that DRF was doing is now laid bare to see 😄
Agreed! It turns out it really wasn't doing much for us anyway, and was a very frustrating library to build upon. |
Suspect IssuesThis pull request was deployed and Sentry observed the following issues:
Did you find this useful? React with a 👍 or 👎 |
The django-elasticsearch-dsl-drf library makes it pretty difficult for us to explicitly craft the elasticsearch query. In particular, it's impossible for use to add ES version 8 features like retrievers and RRF (hybrid) searches. It was also difficult to work with and behaved strangely at times. This removes it completely.
This moves the core logic (which we had largely implemented outside of elasticsearch-dsl-drf already) into a SearchEngine class.
This has the benefit that we can craft and call searches outside of DRF.