Beta4 postgres.exe crash "...terminated by signal 5"

Started by John Kennedyover 21 years ago6 messagesbugs
Jump to latest
#1John Kennedy
jmkennedyie@hotmail.com

Greetings.
I am very new to PostgreSQL so apologies in advance if this bug report is a
waste of time for some reason.

Summary:
I have been experimenting with 8.0 Beta4 on Windows XP and the attached SQL
resulted in a crash of the database (not the postmaster as far as I can
tell). My code creates a function, then another function to test it. Then
the test function is executed. During the execution of the test function the
process crashes.

Version:
PostgreSQL 8.0.0beta4 on i686-pc-mingw32, compiled by GCC gcc.exe (GCC)
3.3.1 (mingw special 20030804-1)
OS: Windows XP SP1

Recreating the problem:
Create a database and run the attached script against it using psql.

Observed Outcome:
postgres.exe crashes. See log file extract below.

Expected Outcome:
Either the tests should run to completion or an exception should be raised
(in the likely event that my syntax or logic is flawed).

FYI I have implemented my logic in a new way, so I don't need a fix, but
thought I'd pass on the details all the same.

Best Regards,
- John.

pg_log Extract
=========

2004-11-16 08:58:41 NOTICE: 00000: PASS: / did not raise an exception

2004-11-16 08:58:41 LOCATION: exec_stmt_raise, pl_exec.c:1968

2004-11-16 08:58:41 NOTICE: 00000: PASS: /topdir did not raise an exception

2004-11-16 08:58:41 LOCATION: exec_stmt_raise, pl_exec.c:1968

2004-11-16 08:58:41 NOTICE: 00000: PASS: /topdir/subdir did not raise an
exception

2004-11-16 08:58:41 LOCATION: exec_stmt_raise, pl_exec.c:1968

2004-11-16 08:58:41 NOTICE: 00000: PASS: /topdir/subdir/subsubdir did not
raise an exception

2004-11-16 08:58:41 LOCATION: exec_stmt_raise, pl_exec.c:1968

2004-11-16 08:58:41 NOTICE: 00000: FAIL: should have been identified as an
invalid path

2004-11-16 08:58:41 LOCATION: exec_stmt_raise, pl_exec.c:1968

2004-11-16 08:58:41 NOTICE: 00000: PASS: // did raise an exception

2004-11-16 08:58:41 LOCATION: exec_stmt_raise, pl_exec.c:1968

2004-11-16 08:58:47 LOG: 00000: server process (PID 3652) was terminated by
signal 5

2004-11-16 08:58:47 LOCATION: LogChildExit, postmaster.c:2282

2004-11-16 08:58:47 LOG: 00000: terminating any other active server
processes

2004-11-16 08:58:47 LOCATION: HandleChildCrash, postmaster.c:2175

2004-11-16 08:58:47 LOG: 00000: all server processes terminated;
reinitializing

2004-11-16 08:58:47 LOCATION: reaper, postmaster.c:2074

2004-11-16 08:58:47 LOG: 00000: database system was interrupted at
2004-11-15 17:43:17 GMT Standard Time

2004-11-16 08:58:47 LOCATION: StartupXLOG, xlog.c:4026

2004-11-16 08:58:47 LOG: 00000: checkpoint record is at 0/4EA3158

2004-11-16 08:58:47 LOCATION: StartupXLOG, xlog.c:4095

2004-11-16 08:58:47 LOG: 00000: redo record is at 0/4EA3158; undo record is
at 0/0; shutdown FALSE

2004-11-16 08:58:47 LOCATION: StartupXLOG, xlog.c:4123

2004-11-16 08:58:47 LOG: 00000: next transaction ID: 26681; next OID:
135172

2004-11-16 08:58:47 LOCATION: StartupXLOG, xlog.c:4126

2004-11-16 08:58:47 LOG: 00000: database system was not properly shut down;
automatic recovery in progress

2004-11-16 08:58:47 LOCATION: StartupXLOG, xlog.c:4182

2004-11-16 08:58:47 LOG: 00000: redo starts at 0/4EA3198

2004-11-16 08:58:47 LOCATION: StartupXLOG, xlog.c:4219

2004-11-16 08:58:47 WARNING: 01000: could not remove database directory
"C:/Program Files/PostgreSQL/8.0.0-beta4/data/base/128288"

2004-11-16 08:58:47 LOCATION: dbase_redo, dbcommands.c:1214

2004-11-16 08:58:48 LOG: 00000: record with zero length at 0/4EB9F38

2004-11-16 08:58:48 LOCATION: ReadRecord, xlog.c:2459

2004-11-16 08:58:48 LOG: 00000: redo done at 0/4EB9F08

2004-11-16 08:58:48 LOCATION: StartupXLOG, xlog.c:4277

2004-11-16 08:58:49 LOG: 00000: database system is ready

2004-11-16 08:58:49 LOCATION: StartupXLOG, xlog.c:4489

_________________________________________________________________
Don't just search. Find. Check out the new MSN Search!
http://search.msn.com/

Attachments:

recreate_crash.sqltext/plain; format=flowed; name=recreate_crash.sqlDownload
#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: John Kennedy (#1)
Re: Beta4 postgres.exe crash "...terminated by signal 5"

"John Kennedy" <jmkennedyie@hotmail.com> writes:

I am very new to PostgreSQL so apologies in advance if this bug report is a
waste of time for some reason.

Not at all. Looks like you've found a mistake in where variables of
pass-by-reference datatypes get stored. Thanks for the report!

regards, tom lane

#3Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#2)
Re: Beta4 postgres.exe crash "...terminated by signal 5"

Tom Lane wrote:

"John Kennedy" <jmkennedyie@hotmail.com> writes:

I am very new to PostgreSQL so apologies in advance if this bug report is a
waste of time for some reason.

Not at all. Looks like you've found a mistake in where variables of
pass-by-reference datatypes get stored. Thanks for the report!

Tom, I assume this was fixed. CVS is down now so I can't check.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Bruce Momjian (#3)
Re: Beta4 postgres.exe crash "...terminated by signal 5"

Bruce Momjian <pgman@candle.pha.pa.us> writes:

Tom Lane wrote:

"John Kennedy" <jmkennedyie@hotmail.com> writes:

I am very new to PostgreSQL so apologies in advance if this bug report is a
waste of time for some reason.

Not at all. Looks like you've found a mistake in where variables of
pass-by-reference datatypes get stored. Thanks for the report!

Tom, I assume this was fixed.

Yes.

CVS is down now so I can't check.

Works for me ...

regards, tom lane

#5John Kennedy
jmkennedyie@hotmail.com
In reply to: Tom Lane (#4)
Re: Beta4 postgres.exe crash "...terminated by signal 5"

Hi again.
Was incommunicado for a while...but just to close, FYI I have verified the
bug is fixed in both Beta 5 and RC1.

Another bug I spotted in Beta4 (variables in functions having their values
changing for no apparent reason) has also been fixed in beta 5. You fixed it
before I had time to report it: impressive!

It seems to me you have developed a fantastic platform: I wish you every
success with the release.
- John.

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Bruce Momjian <pgman@candle.pha.pa.us>
CC: John Kennedy <jmkennedyie@hotmail.com>, pgsql-bugs@postgresql.org
Subject: Re: [BUGS] Beta4 postgres.exe crash "...terminated by signal 5"
Date: Wed, 01 Dec 2004 17:01:17 -0500

Bruce Momjian <pgman@candle.pha.pa.us> writes:

Tom Lane wrote:

"John Kennedy" <jmkennedyie@hotmail.com> writes:

I am very new to PostgreSQL so apologies in advance if this bug report

is a

waste of time for some reason.

Not at all. Looks like you've found a mistake in where variables of
pass-by-reference datatypes get stored. Thanks for the report!

Tom, I assume this was fixed.

Yes.

CVS is down now so I can't check.

Works for me ...

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

_________________________________________________________________
Don't just search. Find. Check out the new MSN Search!
http://search.msn.click-url.com/go/onm00200636ave/direct/01/

#6Tom Lane
tgl@sss.pgh.pa.us
In reply to: John Kennedy (#5)
Re: Beta4 postgres.exe crash "...terminated by signal 5"

"John Kennedy" <jmkennedyie@hotmail.com> writes:

Was incommunicado for a while...but just to close, FYI I have verified the
bug is fixed in both Beta 5 and RC1.

Another bug I spotted in Beta4 (variables in functions having their values
changing for no apparent reason) has also been fixed in beta 5.

Probably the same bug, actually --- the basic problem was storage
allocated to variables getting recycled for other purposes ...

regards, tom lane