Re: information_schema.columns changes needed for OLEDB - Mailing list pgsql-hackers

From Tom Lane
Subject Re: information_schema.columns changes needed for OLEDB
Date
Msg-id 24827.1244571608@sss.pgh.pa.us
Whole thread Raw
In response to Re: information_schema.columns changes needed for OLEDB  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Peter Eisentraut <peter_e@gmx.net> writes:
> diff --git a/src/backend/catalog/information_schema.sql b/src/backend/catalog/information_schema.sql
> index 9c5672f..cb0296a 100644
> --- a/src/backend/catalog/information_schema.sql
> +++ b/src/backend/catalog/information_schema.sql
> @@ -160,12 +160,12 @@ CREATE FUNCTION _pg_datetime_precision(typid oid, typmod int4) RETURNS integer
>      RETURNS NULL ON NULL INPUT
>      AS
>  $$SELECT
> -  CASE WHEN $2 = -1 /* default typmod */
> -       THEN null
> +  CASE WHEN $1 IN (1082) /* date */
> +           THEN 0
>         WHEN $1 IN (1083, 1114, 1184, 1266) /* time, timestamp, same + tz */
> -       THEN $2
> +           THEN CASE WHEN $2 = -1 THEN 6 ELSE $2 END
>         WHEN $1 IN (1186) /* interval */
> -       THEN $2 & 65535
> +           THEN CASE WHEN $2 = -1 THEN 6 ELSE $2 & 65535 END
>         ELSE null
>    END$$;

Just for the record, this is a perfect example of why -u format sucks.
How many people think they can look at this and know exactly what the
change does?

I'll be back to weigh in on the merits of the patch after I've converted
it to -c format so I can understand it.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: page is uninitialized --- fixing
Next
From: Gurjeet Singh
Date:
Subject: Re: Not quite a security hole in internal_in