Current cvs source regression: create_function_1.out

Started by Fernando Nasserabout 24 years ago7 messageshackers
Jump to latest
#1Fernando Nasser
fnasser@redhat.com

I am building/testing the current cvs sources on a Red Hat Linux 7.2
machine and today I am seeing several failures (it was OK yesterday).
The test that actually crashes the backend is create_function_1.out.

BTW, whoever changed the "type %s is not yet defined" from NOTICE
to WARNING forgot to update expected/create_function_1.out as well.

Here is the data in case someone know what of the changes made
yesterday broke this:

*** ./expected/create_function_1.out    Wed Mar  6 18:53:13 2002
--- ./results/create_function_1.out     Thu Mar  7 07:50:43 2002
***************
*** 5,36 ****
     RETURNS widget
     AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
     LANGUAGE 'c';
! NOTICE:  ProcedureCreate: type widget is not yet defined
! CREATE FUNCTION widget_out(opaque)
!    RETURNS opaque
!    AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
!    LANGUAGE 'c';
(...)
--- 5,12 ----
     RETURNS widget
     AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
     LANGUAGE 'c';
! WARNING:  ProcedureCreate: type widget is not yet defined
! server closed the connection unexpectedly
!       This probably means the server terminated abnormally
!       before or while processing the request.

(gdb) bt
#0 0x08068406 in ComputeDataSize (tupleDesc=0x8211358,
value=0xbfffd0e0,
nulls=0xbfffd0c0 ' ' <repeats 22 times>, "\024\b\004\a")
at
/home/fnasser/DEVO/pgsql/pgsql/src/backend/access/common/heaptuple.c:52
#1 0x08068baa in heap_formtuple (tupleDescriptor=0x8211358,
value=0xbfffd0e0,
nulls=0xbfffd0c0 ' ' <repeats 22 times>, "\024\b\004\a")
at
/home/fnasser/DEVO/pgsql/pgsql/src/backend/access/common/heaptuple.c:604
#2 0x08092610 in TypeShellMakeWithOpenRelation (pg_type_desc=0x8211248,
typeName=0x8236eb8 "widget")
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_type.c:194
#3 0x08092696 in TypeShellMake (typeName=0x8236eb8 "widget")
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_type.c:248
#4 0x08091a7c in ProcedureCreate (procedureName=0x8236e48 "widget_in",
replace=0 '\000', returnsSet=0 '\000', returnTypeName=0x8236eb8
"widget",
languageObjectId=13, prosrc=0x81884a2 "-",
probin=0x8236ef8
"/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so",
trusted=1 '\001', canCache=0 '\000', isStrict=0 '\000',
byte_pct=100, perbyte_cpu=0, percall_cpu=0, outin_ratio=100,
argList=0x8236ea0)
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_proc.c:171
#5 0x080aea79 in CreateFunction (stmt=0x8236fc8)
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/commands/define.c:276
#6 0x0810b270 in pg_exec_query_string (
query_string=0x8236cb8 "CREATE FUNCTION widget_in(opaque)\n
RETURNS widget\n AS
'/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so'\n
LANGUAGE 'c';", dest=Remote, parse_context=0x8206e98)
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/tcop/postgres.c:768
(...)

(gdb) up 4
#4 0x08091a7c in ProcedureCreate (procedureName=0x8236e48 "widget_in",
replace=0 '\000', returnsSet=0 '\000', returnTypeName=0x8236eb8
"widget",
languageObjectId=13, prosrc=0x81884a2 "-",
probin=0x8236ef8
"/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so",
trusted=1 '\001', canCache=0 '\000', isStrict=0 '\000',
byte_pct=100, perbyte_cpu=0, percall_cpu=0, outin_ratio=100,
argList=0x8236ea0)
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_proc.c:171
171 typeObjectId = TypeShellMake(returnTypeName);
(gdb) list
166
167 if (!OidIsValid(typeObjectId))
168 {
169 elog(WARNING, "ProcedureCreate: type %s is not yet defined",
170 returnTypeName);
171 typeObjectId = TypeShellMake(returnTypeName);
172 if (!OidIsValid(typeObjectId))
173 elog(ERROR, "could not create type %s",
174 returnTypeName);
175 }
(gdb)

--
Fernando Nasser
Red Hat Canada Ltd. E-Mail: fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario M4P 2C9

#2Rod Taylor
rbt@rbt.ca
In reply to: Fernando Nasser (#1)
Re: Current cvs source regression: create_function_1.out

I found and am working on fixing the problem.

Shell types aren't being created properly by
TypeShellMakeWithOpenRelation()
--
Rod Taylor

This message represents the official view of the voices in my head

----- Original Message -----
From: "Fernando Nasser" <fnasser@redhat.com>
To: <pgsql-hackers@postgresql.org>
Sent: Thursday, March 07, 2002 10:24 AM
Subject: [HACKERS] Current cvs source regression:
create_function_1.out

I am building/testing the current cvs sources on a Red Hat Linux 7.2
machine and today I am seeing several failures (it was OK

yesterday).

The test that actually crashes the backend is create_function_1.out.

BTW, whoever changed the "type %s is not yet defined" from NOTICE
to WARNING forgot to update expected/create_function_1.out as well.

Here is the data in case someone know what of the changes made
yesterday broke this:

*** ./expected/create_function_1.out    Wed Mar  6 18:53:13 2002
--- ./results/create_function_1.out     Thu Mar  7 07:50:43 2002
***************
*** 5,36 ****
RETURNS widget
AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
LANGUAGE 'c';
! NOTICE:  ProcedureCreate: type widget is not yet defined
! CREATE FUNCTION widget_out(opaque)
!    RETURNS opaque
!    AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
!    LANGUAGE 'c';
(...)
--- 5,12 ----
RETURNS widget
AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
LANGUAGE 'c';
! WARNING:  ProcedureCreate: type widget is not yet defined
! server closed the connection unexpectedly
!       This probably means the server terminated abnormally
!       before or while processing the request.

(gdb) bt
#0 0x08068406 in ComputeDataSize (tupleDesc=0x8211358,
value=0xbfffd0e0,
nulls=0xbfffd0c0 ' ' <repeats 22 times>, "\024\b\004\a")
at

/home/fnasser/DEVO/pgsql/pgsql/src/backend/access/common/heaptuple.c:5
2

#1 0x08068baa in heap_formtuple (tupleDescriptor=0x8211358,
value=0xbfffd0e0,
nulls=0xbfffd0c0 ' ' <repeats 22 times>, "\024\b\004\a")
at

/home/fnasser/DEVO/pgsql/pgsql/src/backend/access/common/heaptuple.c:6
04

#2 0x08092610 in TypeShellMakeWithOpenRelation

(pg_type_desc=0x8211248,

typeName=0x8236eb8 "widget")
at

/home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_type.c:194

#3 0x08092696 in TypeShellMake (typeName=0x8236eb8 "widget")
at

/home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_type.c:248

#4 0x08091a7c in ProcedureCreate (procedureName=0x8236e48

"widget_in",

replace=0 '\000', returnsSet=0 '\000', returnTypeName=0x8236eb8
"widget",
languageObjectId=13, prosrc=0x81884a2 "-",
probin=0x8236ef8

"/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so",

trusted=1 '\001', canCache=0 '\000', isStrict=0 '\000',
byte_pct=100, perbyte_cpu=0, percall_cpu=0, outin_ratio=100,
argList=0x8236ea0)
at

/home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_proc.c:171

#5 0x080aea79 in CreateFunction (stmt=0x8236fc8)
at

/home/fnasser/DEVO/pgsql/pgsql/src/backend/commands/define.c:276

#6 0x0810b270 in pg_exec_query_string (
query_string=0x8236cb8 "CREATE FUNCTION widget_in(opaque)\n
RETURNS widget\n AS

'/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so'\
n

LANGUAGE 'c';", dest=Remote, parse_context=0x8206e98)
at

/home/fnasser/DEVO/pgsql/pgsql/src/backend/tcop/postgres.c:768

(...)

(gdb) up 4
#4 0x08091a7c in ProcedureCreate (procedureName=0x8236e48

"widget_in",

replace=0 '\000', returnsSet=0 '\000', returnTypeName=0x8236eb8
"widget",
languageObjectId=13, prosrc=0x81884a2 "-",
probin=0x8236ef8

"/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so",

trusted=1 '\001', canCache=0 '\000', isStrict=0 '\000',
byte_pct=100, perbyte_cpu=0, percall_cpu=0, outin_ratio=100,
argList=0x8236ea0)
at

/home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_proc.c:171

171 typeObjectId = TypeShellMake(returnTypeName);
(gdb) list
166
167 if (!OidIsValid(typeObjectId))
168 {
169 elog(WARNING, "ProcedureCreate: type %s is not yet defined",
170 returnTypeName);
171 typeObjectId = TypeShellMake(returnTypeName);
172 if (!OidIsValid(typeObjectId))
173 elog(ERROR, "could not create type %s",
174 returnTypeName);
175 }
(gdb)

--
Fernando Nasser
Red Hat Canada Ltd. E-Mail: fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario M4P 2C9

---------------------------(end of

broadcast)---------------------------

Show quoted text

TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly

#3Bruce Momjian
bruce@momjian.us
In reply to: Fernando Nasser (#1)
Re: Current cvs source regression: create_function_1.out

Do a CVS update. I backed out the failing patch this morning.

---------------------------------------------------------------------------

Fernando Nasser wrote:

I am building/testing the current cvs sources on a Red Hat Linux 7.2
machine and today I am seeing several failures (it was OK yesterday).
The test that actually crashes the backend is create_function_1.out.

BTW, whoever changed the "type %s is not yet defined" from NOTICE
to WARNING forgot to update expected/create_function_1.out as well.

Here is the data in case someone know what of the changes made
yesterday broke this:

*** ./expected/create_function_1.out    Wed Mar  6 18:53:13 2002
--- ./results/create_function_1.out     Thu Mar  7 07:50:43 2002
***************
*** 5,36 ****
RETURNS widget
AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
LANGUAGE 'c';
! NOTICE:  ProcedureCreate: type widget is not yet defined
! CREATE FUNCTION widget_out(opaque)
!    RETURNS opaque
!    AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
!    LANGUAGE 'c';
(...)
--- 5,12 ----
RETURNS widget
AS '/home/fnasser/BUILD/pgsql/src/test/regress/regress.so'
LANGUAGE 'c';
! WARNING:  ProcedureCreate: type widget is not yet defined
! server closed the connection unexpectedly
!       This probably means the server terminated abnormally
!       before or while processing the request.

(gdb) bt
#0 0x08068406 in ComputeDataSize (tupleDesc=0x8211358,
value=0xbfffd0e0,
nulls=0xbfffd0c0 ' ' <repeats 22 times>, "\024\b\004\a")
at
/home/fnasser/DEVO/pgsql/pgsql/src/backend/access/common/heaptuple.c:52
#1 0x08068baa in heap_formtuple (tupleDescriptor=0x8211358,
value=0xbfffd0e0,
nulls=0xbfffd0c0 ' ' <repeats 22 times>, "\024\b\004\a")
at
/home/fnasser/DEVO/pgsql/pgsql/src/backend/access/common/heaptuple.c:604
#2 0x08092610 in TypeShellMakeWithOpenRelation (pg_type_desc=0x8211248,
typeName=0x8236eb8 "widget")
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_type.c:194
#3 0x08092696 in TypeShellMake (typeName=0x8236eb8 "widget")
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_type.c:248
#4 0x08091a7c in ProcedureCreate (procedureName=0x8236e48 "widget_in",
replace=0 '\000', returnsSet=0 '\000', returnTypeName=0x8236eb8
"widget",
languageObjectId=13, prosrc=0x81884a2 "-",
probin=0x8236ef8
"/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so",
trusted=1 '\001', canCache=0 '\000', isStrict=0 '\000',
byte_pct=100, perbyte_cpu=0, percall_cpu=0, outin_ratio=100,
argList=0x8236ea0)
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_proc.c:171
#5 0x080aea79 in CreateFunction (stmt=0x8236fc8)
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/commands/define.c:276
#6 0x0810b270 in pg_exec_query_string (
query_string=0x8236cb8 "CREATE FUNCTION widget_in(opaque)\n
RETURNS widget\n AS
'/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so'\n
LANGUAGE 'c';", dest=Remote, parse_context=0x8206e98)
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/tcop/postgres.c:768
(...)

(gdb) up 4
#4 0x08091a7c in ProcedureCreate (procedureName=0x8236e48 "widget_in",
replace=0 '\000', returnsSet=0 '\000', returnTypeName=0x8236eb8
"widget",
languageObjectId=13, prosrc=0x81884a2 "-",
probin=0x8236ef8
"/home/fnasser/BUILD/pgsql-pgorg-nocheck/src/test/regress/regress.so",
trusted=1 '\001', canCache=0 '\000', isStrict=0 '\000',
byte_pct=100, perbyte_cpu=0, percall_cpu=0, outin_ratio=100,
argList=0x8236ea0)
at /home/fnasser/DEVO/pgsql/pgsql/src/backend/catalog/pg_proc.c:171
171 typeObjectId = TypeShellMake(returnTypeName);
(gdb) list
166
167 if (!OidIsValid(typeObjectId))
168 {
169 elog(WARNING, "ProcedureCreate: type %s is not yet defined",
170 returnTypeName);
171 typeObjectId = TypeShellMake(returnTypeName);
172 if (!OidIsValid(typeObjectId))
173 elog(ERROR, "could not create type %s",
174 returnTypeName);
175 }
(gdb)

--
Fernando Nasser
Red Hat Canada Ltd. E-Mail: fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario M4P 2C9

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly

-- 
  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
#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Fernando Nasser (#1)
Re: Current cvs source regression: create_function_1.out

Fernando Nasser <fnasser@redhat.com> writes:

The test that actually crashes the backend is create_function_1.out.

That is the DOMAIN patch's fault (I believe the proximate cause was
that TypeShellMake wasn't taught about the new pg_type layout).

Bruce says he's backed out the patch, although the mail servers are
sufficiently behind that I've not seen the committers-list notice yet.

BTW, whoever changed the "type %s is not yet defined" from NOTICE
to WARNING forgot to update expected/create_function_1.out as well.

Bruce, you forgot the regress/output/ files again.

regards, tom lane

#5Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#4)
Re: Current cvs source regression: create_function_1.out

Tom Lane wrote:

Fernando Nasser <fnasser@redhat.com> writes:

The test that actually crashes the backend is create_function_1.out.

That is the DOMAIN patch's fault (I believe the proximate cause was
that TypeShellMake wasn't taught about the new pg_type layout).

Bruce says he's backed out the patch, although the mail servers are
sufficiently behind that I've not seen the committers-list notice yet.

Yep, just ran regression on current CVS and all is fine.

BTW, whoever changed the "type %s is not yet defined" from NOTICE
to WARNING forgot to update expected/create_function_1.out as well.

Bruce, you forgot the regress/output/ files again.

Done and committed.

-- 
  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
#6Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#4)
Re: Current cvs source regression: create_function_1.out

Tom Lane wrote:

Fernando Nasser <fnasser@redhat.com> writes:

The test that actually crashes the backend is create_function_1.out.

That is the DOMAIN patch's fault (I believe the proximate cause was
that TypeShellMake wasn't taught about the new pg_type layout).

Bruce says he's backed out the patch, although the mail servers are
sufficiently behind that I've not seen the committers-list notice yet.

BTW, whoever changed the "type %s is not yet defined" from NOTICE
to WARNING forgot to update expected/create_function_1.out as well.

Bruce, you forgot the regress/output/ files again.

Actually, I have not fixed it yet. It is related to elog tags. Working
on it now.

-- 
  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
#7Bruce Momjian
bruce@momjian.us
In reply to: Bruce Momjian (#6)
Re: Current cvs source regression: create_function_1.out

Bruce Momjian wrote:

Tom Lane wrote:

Fernando Nasser <fnasser@redhat.com> writes:

The test that actually crashes the backend is create_function_1.out.

That is the DOMAIN patch's fault (I believe the proximate cause was
that TypeShellMake wasn't taught about the new pg_type layout).

Bruce says he's backed out the patch, although the mail servers are
sufficiently behind that I've not seen the committers-list notice yet.

BTW, whoever changed the "type %s is not yet defined" from NOTICE
to WARNING forgot to update expected/create_function_1.out as well.

Bruce, you forgot the regress/output/ files again.

Actually, I have not fixed it yet. It is related to elog tags. Working
on it now.

OK, fixed now and committed. It was the /output directory that I had
missed.

-- 
  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