>> Another thing worth considering is to have pg_upgrade init, stop and
>> start clusters as necessary instead of requesting the user to do it.
>> I think this is two less steps.
>
> Then you'd need to expose the entire pg_ctl shutdown mode logic through pg_upgrade, which might not make things
simpler.
What about having single user mode talk fe/be protocol, and talk to it via a UNIX pipe, with pg_upgrade starting the
singleuser backend as a subprocess?
--
dim