Only return a single QueryableProduct object for a given data store
Ensure that only one update can be running at a time per query
Ensure that query registration also happens after it has finished updating