On Mon, Jan 07, 2019 at 01:49:49PM +0900, Amit Langote wrote:
>  {
>       /*
> -      * We currently only support writing to regular tables.
> +      * We currently only support writing to regular tables.  However, give
> +      * a more specific error for partitioned and foreign tables.
>        */
> +     if (relkind == RELKIND_PARTITIONED_TABLE)
> +             ereport(ERROR,
> +                             (errcode(ERRCODE_WRONG_OBJECT_TYPE),
> +                              errmsg("\"%s.%s\" is a partitioned table",
> +                                             nspname, relname),
> +                              errdetail("Partitioned tables are not
> supported as logical replication targets.")));

Could it be possible to avoid a full sentence in the primary error
message?  Usually these are avoided:
https://www.postgresql.org/docs/devel/error-style-guide.html

It seems to me that we may want something more like:
Primary: "could not use \"%s.%s\" as logical replication target".
Detail: "Relation %s.%s is a foreign table", "not a table", etc.

The existing error message in CheckSubscriptionRelkind() could also be
better regarding that...
--
Michael

Attachment: signature.asc
Description: PGP signature

Reply via email to