Add some errdetail to checkRuleResultList().

Enterprise / PostgreSQL - Tom Lane [sss.pgh.pa.us] - 2 July 2014 11:31 UTC

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".

Back-patch to 9.4, but not into older branches where the set of translatable error strings is supposed to be stable.

7980ab3 Add some errdetail to checkRuleResultList().
src/backend/rewrite/rewriteDefine.c | 33 ++++++++++++++++++++++++++++-----
1 file changed, 28 insertions(+), 5 deletions(-)

Upstream: git.postgresql.org


  • Share