I understand there are workarounds, but generally the software
automatically creates a postgres role during initialization.
Including "CREATE ROLE postgres;" in the dumpall will cause the script to
throw an error. This came to light while doing PostgreSQL upgrades. I'm
finding that turning on ON_ERROR_STOP makes sense to ensure that there
isn't some problem in our data or stored procedures that goes unnoticed
during upgrades. The fact that a "CREATE ROLE postgres" statement is
created in every dumpall means loading the script into a new server means
an error is thrown and execution stops.