Thread: Re: [HACKERS] to_char() dumps core

Re: [HACKERS] to_char() dumps core

From
Karel Zak
Date:
On Fri, 20 Oct 2000, Karel Zak wrote:

>
> On Fri, 20 Oct 2000, Tatsuo Ishii wrote:
>
> > In 7.0.2
> >
> >    select to_char(sum(n),'999') from t1;
> >
> > causes backend dump a core if n is a float/numeric ...data type AND if
> > sum(n) returns NULL. This seems due to a bad null pointer handling for
> > aruguments of pass-by-reference data types.  I think just a simple
> > null pointer checking at very top of each function (for example
> > float4_to_char()) would solve the problem.  Comments?
>
>  In the 7.1devel it's correct, but here it's bug, IMHO it bear on changes
> in the 7.1's fmgr, because code is same in both versions for this. On Monday,
> I try fix it for 7.0.3

 Not, monday .. just now :-)

 The patch is attached... Bruce, it's again to 7.0.3!

 Thanks for bug report

            Karel


test=# create table t1 (f4 float4, f8 float8, n numeric, i4 int4, i8 int8);
CREATE
test=# select to_char(sum(f4), '9'), to_char(sum(f8), '9'), to_char(sum(n),
'9'), to_char(sum(i4), '9'), to_char(sum(i8), '9') from t1;
 to_char | to_char | to_char | to_char | to_char
---------+---------+---------+---------+---------
         |         |         |         |
(1 row)



Attachment

Re: Re: [HACKERS] to_char() dumps core

From
Bruce Momjian
Date:
> > > causes backend dump a core if n is a float/numeric ...data type AND if
> > > sum(n) returns NULL. This seems due to a bad null pointer handling for
> > > aruguments of pass-by-reference data types.  I think just a simple
> > > null pointer checking at very top of each function (for example
> > > float4_to_char()) would solve the problem.  Comments?
> >
> >  In the 7.1devel it's correct, but here it's bug, IMHO it bear on changes
> > in the 7.1's fmgr, because code is same in both versions for this. On Monday,
> > I try fix it for 7.0.3
>
>  Not, monday .. just now :-)
>
>  The patch is attached... Bruce, it's again to 7.0.3!

Got it.  You don't have to hit me over head all the time (just most of
the time).  :-)

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

Re: Re: [HACKERS] to_char() dumps core

From
Karel Zak
Date:
 */

On Fri, 20 Oct 2000, Bruce Momjian wrote:
> >
> >  The patch is attached... Bruce, it's again to 7.0.3!
>
> Got it.  You don't have to hit me over head all the time (just most of
> the time).  :-)

 Oh no, I want pull up your head from 7.1 cycle only :-)

 Thanks
     Karel


Re: Re: [HACKERS] to_char() dumps core

From
Tatsuo Ishii
Date:
> >  In the 7.1devel it's correct, but here it's bug, IMHO it bear on changes
> > in the 7.1's fmgr, because code is same in both versions for this. On Monday,
> > I try fix it for 7.0.3
>
>  Not, monday .. just now :-)
>
>  The patch is attached... Bruce, it's again to 7.0.3!
>
>  Thanks for bug report
>
>             Karel

Thank for your qucik fix!
--
Tatsuo Ishii

Re: Re: [HACKERS] to_char() dumps core

From
Tom Lane
Date:
Karel Zak <zakkr@zf.jcu.cz> writes:
>> In the 7.1devel it's correct, but here it's bug, IMHO it bear on changes
>> in the 7.1's fmgr, because code is same in both versions for this. On Monday,
>> I try fix it for 7.0.3

Applied to REL7_0_PATCHES branch (only).  Thanks.

            regards, tom lane