pgsql: Add some errdetail to checkRuleResultList(). - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Add some errdetail to checkRuleResultList().
Date
Msg-id E1X2P9d-00010N-Bp@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Add some errdetail to checkRuleResultList().

This function wasn't originally thought to be really user-facing,
because converting a table to a view isn't something we expect people
to do manually.  So not all that much effort was spent on the error
messages; in particular, while the code will complain that you got
the column types wrong it won't say exactly what they are.  But since
we repurposed the code to also check compatibility of rule RETURNING
lists, it's definitely user-facing.  It now seems worthwhile to add
errdetail messages showing exactly what the conflict is when there's
a mismatch of column names or types.  This is prompted by bug #10836
from Matthias Raffelsieper, which might have been forestalled if the
error message had reported the wrong column type as being "record".

Per Alvaro's advice, back-patch to branches before 9.4, but resist
the temptation to rephrase any existing strings there.  Adding new
strings is not really a translation degradation; anyway having the
info presented in English is better than not having it at all.

Branch
------
REL8_4_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/e78791ea7cabd220400d8c1639789e929f974f0e

Modified Files
--------------
src/backend/rewrite/rewriteDefine.c |   33 ++++++++++++++++++++++++++++-----
1 file changed, 28 insertions(+), 5 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Add some errdetail to checkRuleResultList().
Next
From: Andres Freund
Date:
Subject: pgsql: Rename logical decoding's pg_llog directory to pg_logical.