This repository has been archived by the owner on Aug 26, 2022. It is now read-only.
Enable searching customers by their IDs and optimize # of database queries #236
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR makes two main changes:
Adds the ability to search by customerIDs:
GET /customers?customerIDs=id_1,id_2
Reduces the number of database queries triggered by
GET /customers
A call to
GET /customers
that matchesn=25
customers would trigger~100 or n*4
database queries:searchCustomers
would callgetCustomer()
n
timesgetCustomer()
would also trigger 3 additional db queries to fetch the customer's addresses, phones, and metadata.Thus,
n * ( getCustomer() + getAddresses() + getPhones() + getMetadata() ) -> 25 * (1+1+1+1) = 100
Fixes #220 #216