Browse Source

Add past attempts at solutions.

Mina Galić 4 months ago
Signed by: igalic <> GPG Key ID: ACFEFF7F6A123A86
1 changed files with 15 additions and 0 deletions
  1. +15

+ 15
- 0 View File

@@ -31,3 +31,18 @@ Posts's `AsObject` APIs are called every time a Post is added/updated/deleted.
It builds on `PlumeRocket` as main `Context`, and so we'd have to touch every API if we split either `DbConn` or `Searcher` out of `PlumeRocket`

## Solution Attempts and their Problems

in the past couple of weeks, we've made the following attepts to at least partially dissolve `PlumeRocket`

- [plume-model: refactor Searcher to have its own DbPool](
- [WIP: Experiment: extract Searcher into an Actor](
- [extract DbConn from PlumeRocket](

As soon as we attempted to delete out one of the members from `PlumeRocket`, compiles would fail all over the place, meaning we'd have to touch almost every single function's *signature* that uses `PlumeRocket`.
This then means we'd have to touch every single function that in turn use those functions!
That is a lot of broken code, before we've even started refactoring.

## Strategy

Despite ambitions to use an [Actor System (Riker)](, it is not magnitude of the ambitions, but the size of the steps we've taken.
So, given past failures we devise a strategy: