I think you need to test with 5 characters, not 3.
--
Tatsuo Ishii

> Ahemm,...
> 
> UNICODE DB:
> 
> create table t (a char(10));
> set client_encoding = iso88591;
> insert into t VALUES ('זרו');
> 
> select a, octet_length(a),length(a) from t;
>      a      | octet_length | length
> ------------+--------------+--------
>  זרו        |           13 |      3
> (1 row)
> 
> This is with 8.0.2.
> 
> Just FYI.
> 
> ... John
> 
> > -----Original Message-----
> > From: [EMAIL PROTECTED] 
> > [mailto:[EMAIL PROTECTED] On Behalf Of Tatsuo Ishii
> > Sent: Tuesday, May 24, 2005 8:52 AM
> > To: [EMAIL PROTECTED]
> > Cc: pgsql-patches@postgresql.org; pgsql-hackers@postgresql.org
> > Subject: Re: [PATCHES] character type value is not padded with spaces
> > 
> > Hackers,
> > 
> > The problem he found is not only existing in Japanese 
> > characters but also in any multibyte encodings including 
> > UTF-8. For me the patch looks good and I will commit it to 
> > 7.3, 7.4, 8.0 stables and current if there's no objection.
> > --
> > Tatsuo Ishii
> > 
> > > Character type value including multibyte characters is not 
> > padded with 
> > > spaces. It reproduces at 7.3.x, 7.4.x and 8.0.x.
> > > 
> > >    create table t (a char(10));
> > >    insert into t values ('XXXXX'); -- X is 2byte character.
> > > 
> > > I expect that 'XXXXX     ' is inserted. But 'XXXXX' is inserted.
> > > 
> > >    select a, octed_length(a) from t;
> > > 
> > >       a   | octet_length 
> > >    -------+--------------
> > >     XXXXX |           10
> > > 
> > > If padded with spaces, octet_length(a) is 15. This problem 
> > is caused 
> > > that string length is calculated by byte length(VARSIZE) in 
> > > exprTypmod().
> > > 
> > > I attache the patch for this problem.
> > > 
> > > Regards,
> > > 
> > > --
> > > Yoshiyuki Asaba
> > > [EMAIL PROTECTED]
> > 
> > ---------------------------(end of 
> > broadcast)---------------------------
> > TIP 2: you can get off all lists at once with the unregister command
> >     (send "unregister YourEmailAddressHere" to 
> > [EMAIL PROTECTED])
> > 
> > 
> 

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
      subscribe-nomail command to [EMAIL PROTECTED] so that your
      message can get through to the mailing list cleanly

Reply via email to