From 448fee2e238ae4797e68d7d15b49f2fc52691547 Mon Sep 17 00:00:00 2001 From: Noah Misch Date: Fri, 12 Jul 2013 18:07:46 -0400 Subject: [PATCH] Make comments reflect that omission of SPI_gettypmod() is intentional. --- src/backend/executor/spi.c | 6 ++++++ src/pl/plpgsql/src/pl_exec.c | 3 --- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/backend/executor/spi.c b/src/backend/executor/spi.c index 2f9a94d01e..f30b2cd933 100644 --- a/src/backend/executor/spi.c +++ b/src/backend/executor/spi.c @@ -940,6 +940,12 @@ SPI_gettype(TupleDesc tupdesc, int fnumber) return result; } +/* + * Get the data type OID for a column. + * + * There's nothing similar for typmod and typcollation. The rare consumers + * thereof should inspect the TupleDesc directly. + */ Oid SPI_gettypeid(TupleDesc tupdesc, int fnumber) { diff --git a/src/pl/plpgsql/src/pl_exec.c b/src/pl/plpgsql/src/pl_exec.c index 57789fc365..5b142e3bee 100644 --- a/src/pl/plpgsql/src/pl_exec.c +++ b/src/pl/plpgsql/src/pl_exec.c @@ -4446,7 +4446,6 @@ exec_eval_datum(PLpgSQL_execstate *estate, errmsg("record \"%s\" has no field \"%s\"", rec->refname, recfield->fieldname))); *typeid = SPI_gettypeid(rec->tupdesc, fno); - /* XXX there's no SPI_gettypmod, for some reason */ if (fno > 0) *typetypmod = rec->tupdesc->attrs[fno - 1]->atttypmod; else @@ -4623,12 +4622,10 @@ exec_get_datum_type_info(PLpgSQL_execstate *estate, errmsg("record \"%s\" has no field \"%s\"", rec->refname, recfield->fieldname))); *typeid = SPI_gettypeid(rec->tupdesc, fno); - /* XXX there's no SPI_gettypmod, for some reason */ if (fno > 0) *typmod = rec->tupdesc->attrs[fno - 1]->atttypmod; else *typmod = -1; - /* XXX there's no SPI_getcollation either */ if (fno > 0) *collation = rec->tupdesc->attrs[fno - 1]->attcollation; else /* no system column types have collation */