Details
Description
The session hierarchy in Livy is currently over-engineered; too many session types, too many factories for those sessions, and a weird "manager" concept that creates yet another layer of indirection.
There are more session types in the code than actual session types you can create!
For an example of the headaches, see the patch for LIVY-68 where most of the code has nothing to do with the problem being solved, just deals with this type hierarchy.
We should simplify this so that more code is shared and there's a simpler hierarchy. This should make code maintenance cheaper and also increase our test coverage.
In the process, we should also merge the "server" and "spark" sub-modules since there's no point in them being separate. We could potentially also get rid of the "yarn" sub-module, merging its code with the server module if it's really needed.
Attachments
Issue Links
- links to