aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Korotkov <akorotkov@postgresql.org>2020-03-31 17:51:57 +0300
committerAlexander Korotkov <akorotkov@postgresql.org>2020-03-31 17:51:57 +0300
commit02a5786df24b12c6379ef1b0375b70b8a9fb4925 (patch)
tree7aa1d4985553788872531b3ee5dbf3a416059b79
parent087d3d0583cf292146a7385746d1f5b53eeeaee6 (diff)
downloadpostgresql-02a5786df24b12c6379ef1b0375b70b8a9fb4925.tar.gz
postgresql-02a5786df24b12c6379ef1b0375b70b8a9fb4925.zip
Improve error reporting in opclasscmds.c
This commit improves error reporting introduced by 911e702077. It puts argument of errmsg() to the single line for easier grepping source for error text. Also it improves wording of errhint().
-rw-r--r--src/backend/commands/opclasscmds.c9
-rw-r--r--src/test/regress/expected/alter_generic.out2
2 files changed, 5 insertions, 6 deletions
diff --git a/src/backend/commands/opclasscmds.c b/src/backend/commands/opclasscmds.c
index f1026de7565..7322cbc154e 100644
--- a/src/backend/commands/opclasscmds.c
+++ b/src/backend/commands/opclasscmds.c
@@ -1156,16 +1156,14 @@ assignProcTypes(OpFamilyMember *member, Oid amoid, Oid typeoid,
(OidIsValid(member->righttype) && member->righttype != typeoid))
ereport(ERROR,
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
- errmsg("associated data types for opclass options "
- "parsing functions must match opclass input type")));
+ errmsg("associated data types for opclass options parsing functions must match opclass input type")));
}
else
{
if (member->lefttype != member->righttype)
ereport(ERROR,
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
- errmsg("left and right associated data types for "
- "opclass options parsing functions must match")));
+ errmsg("left and right associated data types for opclass options parsing functions must match")));
}
if (procform->prorettype != VOIDOID ||
@@ -1174,9 +1172,10 @@ assignProcTypes(OpFamilyMember *member, Oid amoid, Oid typeoid,
ereport(ERROR,
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
errmsg("invalid opclass options parsing function"),
- errhint("opclass options parsing function must have signature '%s'",
+ errhint("Valid signature of opclass options parsing function is '%s'.",
"(internal) RETURNS void")));
}
+
/*
* btree comparison procs must be 2-arg procs returning int4. btree
* sortsupport procs must take internal and return void. btree in_range
diff --git a/src/test/regress/expected/alter_generic.out b/src/test/regress/expected/alter_generic.out
index b2a451a83f3..1e50b69ea50 100644
--- a/src/test/regress/expected/alter_generic.out
+++ b/src/test/regress/expected/alter_generic.out
@@ -506,7 +506,7 @@ ALTER OPERATOR FAMILY alt_opf19 USING btree ADD FUNCTION 5 test_opclass_options_
ERROR: function test_opclass_options_func(internal, text[], boolean) does not exist
ALTER OPERATOR FAMILY alt_opf19 USING btree ADD FUNCTION 5 (int4) btint42cmp(int4, int2);
ERROR: invalid opclass options parsing function
-HINT: opclass options parsing function must have signature '(internal) RETURNS void'
+HINT: Valid signature of opclass options parsing function is '(internal) RETURNS void'.
ALTER OPERATOR FAMILY alt_opf19 USING btree ADD FUNCTION 5 (int4, int2) btint42cmp(int4, int2);
ERROR: left and right associated data types for opclass options parsing functions must match
ALTER OPERATOR FAMILY alt_opf19 USING btree ADD FUNCTION 5 (int4) test_opclass_options_func(internal); -- Ok