Re: length coerce for bpchar is broken since 7.0

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Tatsuo Ishii <t-ishii(at)sra(dot)co(dot)jp>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: length coerce for bpchar is broken since 7.0
Date: 2001-01-20 02:41:29
Message-ID: 200101200241.VAA24305@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Can someone comment on the status of this?

> It seems the length coerce for bpchar is broken since 7.0.
> In 6.5 when a string is inserted, bpchar() is called to properly clip
> the string. However in 7.0 (and probably current) bpchar() is not
> called anymore.
>
> coerce_type_typmod() calls exprTypmod(). exprTypmod() returns VARSIZE
> of the bpchar data only if the data type is bpchar (if the data type
> is varchar, exprTypmod just returns -1 and the parser add a function
> node to call varchar(). so there is no problem for varchar). If
> VARSIZE returned from exprTypmod() and atttypmod passed to
> coerce_type_typmod() is equal, the function node to call bpchar()
> would not be added.
>
> I'm not sure if this was an intended efect of the change. Anyway we
> have to do the length coerce for bpchar somewhere and I'm thinking now
> is doing in bpcharin(). This would also solve the problem in copy in a
> mail I have posted.
>
> Comments?
> --
> Tatsuo Ishii
>

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2001-01-20 03:06:56 Rules and SELECT
Previous Message Brett W. McCoy 2001-01-20 01:32:41 Re: re-instalation