As a cloud service, Azure Database for PostgreSQL uses a gateway proxy to route
connections to a node hosting the actual server. To do that, the proxy needs to
know the name of the server it tries to locate. As a work-around we currently
overload the username parameter to pass in the server name using
username@servername convention. It is purely a convention that our customers
need to follow and understand. We would like to extend the PgSQL connection
protocol to add an optional parameter for the server name to help with this
Change the Postgres wire protocol to include server name in the startup
message. This field can be an optional field driven by the connection
parameters for psql (-N, --servername).
We need this extra parameter for backward compatibility.
Make PostgreSQL server aware of the new field, and accept the startup message
containing this field. Though server doesn't need this field, this change helps
making the server name by default included in the startup message in future.
P.S: I would like to get some initial feedback on this idea and will provide
more design details if required. Any feedback in this regard is really