This PR is another attempt at fixing #799
Instead of relying on a separate actor model, as described, we make use of the fact that DbPool is an
Arc, and can be arbitrarily cloned, so we add it to
Searcher. Further more, and
db_pool.get() acts like sending a message to an Actor: if there are enough connections, the Pool gives us one, if not, tough luck!
this way, we don’t need to pass along a conn into the searcher functions.
This should make splitting PlumeRocket up into its components a little easier.