On 23.06.23 09:45, Ian Lawrence Barwick wrote:
> if (!HeapTupleIsValid(tp))
> + {
> + ForeignServer *server = GetForeignServer(serverid);
> +
> ereport(ERROR,
> (errcode(ERRCODE_UNDEFINED_OBJECT),
> - errmsg("user mapping not found for \"%s\"",
> - MappingUserName(userid))));
> + errmsg("user mapping not found for user \"%s\", server \"%s\"",
> + MappingUserName(userid),
> + server->servername)));
> + }
What if the foreign server does not exist either? Then this would show
a "cache lookup failed" error message, which I think we should avoid.
There is existing logic for handling this in
get_object_address_usermapping().