Re: BUG #5777: Server crash with function out params returned as record

Lists: pgsql-bugs
From: "Nate Carson" <nate1001(at)gmail(dot)com>
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #5777: Server crash with function out params returned as record
Date: 2010-12-01 02:46:07
Message-ID: 201012010246.oB12k79I015617@wwwmaster.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs


The following bug has been logged online:

Bug reference: 5777
Logged by: Nate Carson
Email address: nate1001(at)gmail(dot)com
PostgreSQL version: 9.0.1
Operating system: windows 7
Description: Server crash with function out params returned as record
Details:

create or replace function test(out integer, out numeric)
as $$
select (1, 2.1)
$$
language sql;

test=# select * from test();
server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
The connection to the server was lost. Attempting reset: Failed.
!>

LOG: server process (PID 3336) was terminated by exception 0xC0000005
HINT: See C include file "ntstatus.h" for a description of the hexadecimal
value.
LOG: terminating any other active server processes

When I chanage the function body to:
select 1, 2.1
it works as expected.

test=# select version();
PostgreSQL 9.0.1 on i686-pc-mingw32, compiled by GCC gcc.exe (GCC) 4.5.0,
32-bit


From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Nate Carson" <nate1001(at)gmail(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #5777: Server crash with function out params returned as record
Date: 2010-12-01 03:36:43
Message-ID: 12729.1291174603@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs

"Nate Carson" <nate1001(at)gmail(dot)com> writes:
> create or replace function test(out integer, out numeric)
> as $$
> select (1, 2.1)
> $$
> language sql;

> test=# select * from test();
> server closed the connection unexpectedly

Huh ... seems that's been broken since 8.1. Surprising nobody noticed
before. Thanks for the report!

regards, tom lane