diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2022-12-10 18:26:43 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2022-12-10 18:26:43 -0500 |
commit | d02ef65bce6575e10ac0b4e7b8552ff67687c944 (patch) | |
tree | 3a993d5826fea7932e4d127ddd9168327b495a72 /contrib/btree_gist/btree_gist.c | |
parent | e730718072bdc8379f3d099c64455c20d6a6d1ad (diff) | |
download | postgresql-d02ef65bce6575e10ac0b4e7b8552ff67687c944.tar.gz postgresql-d02ef65bce6575e10ac0b4e7b8552ff67687c944.zip |
Standardize error reports in unimplemented I/O functions.
We chose a specific wording of the not-implemented errors for
pseudotype I/O functions and other cases where there's little
value in implementing input and/or output. gtsvectorin never
got that memo though, nor did most of contrib. Make these all
fall in line, mostly because I'm a neatnik but also to remove
unnecessary translatable strings.
gbtreekey_in needs a bit of extra love since it supports
multiple SQL types. Sadly, gbtreekey_out doesn't have the
ability to do that, but I think it's unreachable anyway.
Noted while surveying datatype input functions to see what we
have left to fix.
Diffstat (limited to 'contrib/btree_gist/btree_gist.c')
-rw-r--r-- | contrib/btree_gist/btree_gist.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/contrib/btree_gist/btree_gist.c b/contrib/btree_gist/btree_gist.c index e1dc253c96e..92520aedae1 100644 --- a/contrib/btree_gist/btree_gist.c +++ b/contrib/btree_gist/btree_gist.c @@ -3,7 +3,7 @@ */ #include "postgres.h" -#include "btree_gist.h" +#include "utils/builtins.h" PG_MODULE_MAGIC; @@ -19,22 +19,26 @@ PG_FUNCTION_INFO_V1(gbtreekey_out); Datum gbtreekey_in(PG_FUNCTION_ARGS) { + Oid typioparam = PG_GETARG_OID(1); + ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), - errmsg("<datatype>key_in() not implemented"))); + errmsg("cannot accept a value of type %s", + format_type_extended(typioparam, -1, + FORMAT_TYPE_ALLOW_INVALID)))); - PG_RETURN_POINTER(NULL); + PG_RETURN_VOID(); /* keep compiler quiet */ } -#include "btree_utils_var.h" -#include "utils/builtins.h" Datum gbtreekey_out(PG_FUNCTION_ARGS) { + /* Sadly, we do not receive any indication of the specific type */ ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), - errmsg("<datatype>key_out() not implemented"))); - PG_RETURN_POINTER(NULL); + errmsg("cannot display a value of type %s", "gbtreekey?"))); + + PG_RETURN_VOID(); /* keep compiler quiet */ } |