On 2017-12-07 11:26:07 +0800, Craig Ringer wrote: > PostgreSQL's architecture conflates "connection", "session" and "executor" > into one somewhat muddled mess.
How is the executor entangled in the other two?
Executor in the postgres sense isn't, so I chose the word poorly.
"Engine of execution" maybe. What I'm getting at is that we tie up more resources than should ideally be necessary when a session is idle, especially idle in transaction. But I guess a lot of that is really down to memory allocated and not returned to the OS (because like other C programs we can't do that), etc. The key resources like PGXACT entries aren't something we can release while idle in a transaction after all.