From 6f6567812e4651403eff7c945449be134848e9a5 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Mon, 19 Nov 2001 18:21:10 +0000 Subject: [PATCH] Make text octet_length() return non-compressed length to be consistent with other data types, per disucssion. Encoding issue still open. --- src/backend/utils/adt/varlena.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/src/backend/utils/adt/varlena.c b/src/backend/utils/adt/varlena.c index d2e7b7d518..08aa24def4 100644 --- a/src/backend/utils/adt/varlena.c +++ b/src/backend/utils/adt/varlena.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/adt/varlena.c,v 1.76 2001/11/19 09:05:02 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/adt/varlena.c,v 1.77 2001/11/19 18:21:10 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -256,20 +256,13 @@ textlen(PG_FUNCTION_ARGS) * textoctetlen - * returns the physical length of a text* * (which is less than the VARSIZE of the text*) - * - * XXX is it actually appropriate to return the compressed length - * when the value is compressed? It's not at all clear to me that - * this is what SQL92 has in mind ... */ Datum textoctetlen(PG_FUNCTION_ARGS) { - struct varattrib *t = (struct varattrib *) PG_GETARG_RAW_VARLENA_P(0); + text *arg = PG_GETARG_VARCHAR_P(0); - if (!VARATT_IS_EXTERNAL(t)) - PG_RETURN_INT32(VARATT_SIZE(t) - VARHDRSZ); - - PG_RETURN_INT32(t->va_content.va_external.va_extsize); + PG_RETURN_INT32(VARSIZE(arg) - VARHDRSZ); } /*