mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-11 19:20:40 +08:00
Improve internationalization of messages involving type names
Change the slightly different variations of the message function FOO must return type BAR to a single wording, removing the variability in type name so that they all create a single translation entry; since the type name is not to be translated, there's no point in it being part of the message anyway. Also, change them all to use the same quoting convention, namely that the function name is not to be quoted but the type name is. (I'm not quite sure why this is so, but it's the clear majority.) Some similar messages such as "encoding conversion function FOO must ..." are also changed.
This commit is contained in:
parent
559e7a0a6d
commit
59a2111b23
@ -85,8 +85,8 @@ CreateConversionCommand(CreateConversionStmt *stmt)
|
||||
if (get_func_rettype(funcoid) != VOIDOID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("encoding conversion function %s must return type \"void\"",
|
||||
NameListToString(func_name))));
|
||||
errmsg("encoding conversion function %s must return type \"%s\"",
|
||||
NameListToString(func_name), "void")));
|
||||
|
||||
/* Check we have EXECUTE rights for the function */
|
||||
aclresult = pg_proc_aclcheck(funcoid, GetUserId(), ACL_EXECUTE);
|
||||
|
@ -237,8 +237,8 @@ CreateEventTrigger(CreateEventTrigStmt *stmt)
|
||||
if (funcrettype != EVTTRIGGEROID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("function \"%s\" must return type \"event_trigger\"",
|
||||
NameListToString(stmt->funcname))));
|
||||
errmsg("function %s must return type \"%s\"",
|
||||
NameListToString(stmt->funcname), "event_trigger")));
|
||||
|
||||
/* Insert catalog entries. */
|
||||
return insert_event_trigger_tuple(stmt->trigname, stmt->eventname,
|
||||
|
@ -486,8 +486,8 @@ lookup_fdw_handler_func(DefElem *handler)
|
||||
if (get_func_rettype(handlerOid) != FDW_HANDLEROID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
|
||||
errmsg("function %s must return type \"fdw_handler\"",
|
||||
NameListToString((List *) handler->arg))));
|
||||
errmsg("function %s must return type \"%s\"",
|
||||
NameListToString((List *) handler->arg), "fdw_handler")));
|
||||
|
||||
return handlerOid;
|
||||
}
|
||||
|
@ -275,8 +275,8 @@ ValidateRestrictionEstimator(List *restrictionName)
|
||||
if (get_func_rettype(restrictionOid) != FLOAT8OID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("restriction estimator function %s must return type \"float8\"",
|
||||
NameListToString(restrictionName))));
|
||||
errmsg("restriction estimator function %s must return type \"%s\"",
|
||||
NameListToString(restrictionName), "float8")));
|
||||
|
||||
/* Require EXECUTE rights for the estimator */
|
||||
aclresult = pg_proc_aclcheck(restrictionOid, GetUserId(), ACL_EXECUTE);
|
||||
@ -321,8 +321,8 @@ ValidateJoinEstimator(List *joinName)
|
||||
if (get_func_rettype(joinOid) != FLOAT8OID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("join estimator function %s must return type \"float8\"",
|
||||
NameListToString(joinName))));
|
||||
errmsg("join estimator function %s must return type \"%s\"",
|
||||
NameListToString(joinName), "float8")));
|
||||
|
||||
/* Require EXECUTE rights for the estimator */
|
||||
aclresult = pg_proc_aclcheck(joinOid, GetUserId(), ACL_EXECUTE);
|
||||
|
@ -114,8 +114,8 @@ CreateProceduralLanguage(CreatePLangStmt *stmt)
|
||||
if (funcrettype != LANGUAGE_HANDLEROID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
|
||||
errmsg("function %s must return type \"language_handler\"",
|
||||
NameListToString(funcname))));
|
||||
errmsg("function %s must return type \"%s\"",
|
||||
NameListToString(funcname), "language_handler")));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -285,8 +285,8 @@ CreateProceduralLanguage(CreatePLangStmt *stmt)
|
||||
else
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
|
||||
errmsg("function %s must return type \"language_handler\"",
|
||||
NameListToString(stmt->plhandler))));
|
||||
errmsg("function %s must return type \"%s\"",
|
||||
NameListToString(stmt->plhandler), "language_handler")));
|
||||
}
|
||||
|
||||
/* validate the inline function */
|
||||
|
@ -438,8 +438,8 @@ CreateTrigger(CreateTrigStmt *stmt, const char *queryString,
|
||||
else
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("function %s must return type \"trigger\"",
|
||||
NameListToString(stmt->funcname))));
|
||||
errmsg("function %s must return type \"%s\"",
|
||||
NameListToString(stmt->funcname), "trigger")));
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -450,14 +450,14 @@ DefineType(List *names, List *parameters)
|
||||
{
|
||||
/* backwards-compatibility hack */
|
||||
ereport(WARNING,
|
||||
(errmsg("changing return type of function %s from \"opaque\" to %s",
|
||||
NameListToString(inputName), typeName)));
|
||||
(errmsg("changing return type of function %s from \"%s\" to \"%s\"",
|
||||
NameListToString(inputName), "opaque", typeName)));
|
||||
SetFunctionReturnType(inputOid, typoid);
|
||||
}
|
||||
else
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("type input function %s must return type %s",
|
||||
errmsg("type input function %s must return type \"%s\"",
|
||||
NameListToString(inputName), typeName)));
|
||||
}
|
||||
resulttype = get_func_rettype(outputOid);
|
||||
@ -467,15 +467,15 @@ DefineType(List *names, List *parameters)
|
||||
{
|
||||
/* backwards-compatibility hack */
|
||||
ereport(WARNING,
|
||||
(errmsg("changing return type of function %s from \"opaque\" to \"cstring\"",
|
||||
NameListToString(outputName))));
|
||||
(errmsg("changing return type of function %s from \"%s\" to \"%s\"",
|
||||
NameListToString(outputName), "opaque", "cstring")));
|
||||
SetFunctionReturnType(outputOid, CSTRINGOID);
|
||||
}
|
||||
else
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("type output function %s must return type \"cstring\"",
|
||||
NameListToString(outputName))));
|
||||
errmsg("type output function %s must return type \"%s\"",
|
||||
NameListToString(outputName), "cstring")));
|
||||
}
|
||||
if (receiveOid)
|
||||
{
|
||||
@ -483,7 +483,7 @@ DefineType(List *names, List *parameters)
|
||||
if (resulttype != typoid)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("type receive function %s must return type %s",
|
||||
errmsg("type receive function %s must return type \"%s\"",
|
||||
NameListToString(receiveName), typeName)));
|
||||
}
|
||||
if (sendOid)
|
||||
@ -492,8 +492,8 @@ DefineType(List *names, List *parameters)
|
||||
if (resulttype != BYTEAOID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("type send function %s must return type \"bytea\"",
|
||||
NameListToString(sendName))));
|
||||
errmsg("type send function %s must return type \"%s\"",
|
||||
NameListToString(sendName), "bytea")));
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1834,8 +1834,8 @@ findTypeTypmodinFunction(List *procname)
|
||||
if (get_func_rettype(procOid) != INT4OID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("typmod_in function %s must return type \"integer\"",
|
||||
NameListToString(procname))));
|
||||
errmsg("typmod_in function %s must return type \"%s\"",
|
||||
NameListToString(procname), "integer")));
|
||||
|
||||
return procOid;
|
||||
}
|
||||
@ -1861,8 +1861,8 @@ findTypeTypmodoutFunction(List *procname)
|
||||
if (get_func_rettype(procOid) != CSTRINGOID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("typmod_out function %s must return type \"cstring\"",
|
||||
NameListToString(procname))));
|
||||
errmsg("typmod_out function %s must return type \"%s\"",
|
||||
NameListToString(procname), "cstring")));
|
||||
|
||||
return procOid;
|
||||
}
|
||||
@ -1888,8 +1888,8 @@ findTypeAnalyzeFunction(List *procname, Oid typeOid)
|
||||
if (get_func_rettype(procOid) != BOOLOID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("type analyze function %s must return type \"boolean\"",
|
||||
NameListToString(procname))));
|
||||
errmsg("type analyze function %s must return type \"%s\"",
|
||||
NameListToString(procname), "boolean")));
|
||||
|
||||
return procOid;
|
||||
}
|
||||
@ -2007,8 +2007,9 @@ findRangeSubtypeDiffFunction(List *procname, Oid subtype)
|
||||
if (get_func_rettype(procOid) != FLOAT8OID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
|
||||
errmsg("range subtype diff function %s must return type double precision",
|
||||
func_signature_string(procname, 2, NIL, argList))));
|
||||
errmsg("range subtype diff function %s must return type \"%s\"",
|
||||
func_signature_string(procname, 2, NIL, argList),
|
||||
"double precision")));
|
||||
|
||||
if (func_volatile(procOid) != PROVOLATILE_IMMUTABLE)
|
||||
ereport(ERROR,
|
||||
|
@ -758,8 +758,8 @@ transformRangeTableSample(ParseState *pstate, RangeTableSample *rts)
|
||||
if (get_func_rettype(handlerOid) != TSM_HANDLEROID)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
|
||||
errmsg("function %s must return type \"tsm_handler\"",
|
||||
NameListToString(rts->method)),
|
||||
errmsg("function %s must return type \"%s\"",
|
||||
NameListToString(rts->method), "tsm_handler"),
|
||||
parser_errposition(pstate, rts->location)));
|
||||
|
||||
/* OK, run the handler to get TsmRoutine, for argument type info */
|
||||
|
Loading…
Reference in New Issue
Block a user