I'm also not quite convinced that there's no long-term use case for multi-process mode. Maybe you're right and there isn't, but that amounts to arguing that every extension in the world will be happy to run in a multi-threaded world rather than not. I don't know if I quite believe that. It also amounts to arguing that performance is going to be better for everyone in this new multi-threaded mode, and that it won't cause unforeseen problems for any significant numbers of users, and maybe those things are true, but I think we need to get this new system in place and get some real-world experience before we can judge these kinds of things. I agree that, in theory, it would be nice to get to a place where the multi-process mode is a dinosaur and that we can just rip it out ... but I don't share your confidence that we can get there in any short time period.
First, I am enjoying the activity of this thread. But my first question is "to what end"?
Do I consider threads better? (yes... and no)
I do wonder if we could add better threading within any given session/process to get a hybrid?
[maybe this gets us closer to solving some of the problems incrementally?]
If I could have anything (today)... I would prefer a Master-Master Implementation leveraging some
of the ultra-fast server-server communication protocols to help sync things. Then I wouldn't care.
I could avoid the O/S Overwhelm caused by excessive processes, via spinning up machines.
[Unfortunately I know that PG leverages the filesystem cache, etc to such a degree that communicating
from one master to another would require a really special architecture there. And the N! communication lines].