Commit 02a5786d authored by Alexander Korotkov's avatar Alexander Korotkov

Improve error reporting in opclasscmds.c

This commit improves error reporting introduced by 911e7020.  It puts
argument of errmsg() to the single line for easier grepping source for error
text.  Also it improves wording of errhint().
parent 087d3d05
......@@ -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
......
......@@ -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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment