Backend crashes (6.5.2 linux) - Mailing list pgsql-hackers

From Michael Simms
Subject Backend crashes (6.5.2 linux)
Date
Msg-id 199911010412.EAA02314@argh.demon.co.uk
Whole thread Raw
Responses Re: [HACKERS] Backend crashes (6.5.2 linux)  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Hi

I am seeing the backend crash on a table I am using for a
searchengine, and I cannot find any answers with the list archives.

Welcome to the POSTGRESQL interactive sql monitor: Please read the file COPYRIGHT for copyright terms of POSTGRESQL
[PostgreSQL 6.5.2 on i686-pc-linux-gnu, compiled by gcc egcs-2.91.66]
  type \? for help on slash commands  type \q to quit  type \g or terminate with semicolon to execute queryYou are
currentlyconnected to the database: search
 

search=> update search_url set stale=941424005 where lowerurl='http://criswell.bizland.com';
pqReadData() -- backend closed the channel unexpectedly.       This probably means the backend terminated abnormally
  before or while processing the request.
 
We have lost the connection to the backend, so further processing is impossible.  Terminating.

psql search
Welcome to the POSTGRESQL interactive sql monitor: Please read the file COPYRIGHT for copyright terms of POSTGRESQL
[PostgreSQL 6.5.2 on i686-pc-linux-gnu, compiled by gcc egcs-2.91.66]
  type \? for help on slash commands  type \q to quit  type \g or terminate with semicolon to execute queryYou are
currentlyconnected to the database: search
 

search=> select count(*) from search_url;   
count
-----
20334
(1 row)

The postmaster stderr says:

/usr/bin/postmaster: reaping dead processes...
/usr/bin/postmaster: CleanupProc: pid 9788 exited with status 0
FATAL 1:  my bits moved right off the end of the world!
/usr/bin/postmaster: reaping dead processes...
/usr/bin/postmaster: CleanupProc: pid 9792 exited with status 0

The postmaster stdout says:

StartTransactionCommand
ProcessQuery
proc_exit(0) [#0]
shmem_exit(0) [#0]
exit(0)
CommitTransactionCommand

The stdout IS moving by very quickly so I cant be sure this message matches up
with this error, but it certainly seems to (all the rest are
CommitTransactionCommand/StartTransactionCommand/ProcessQuery)

My biggest problem is that I am using the C libraries, and PQexec()
does not return, gdb shows it is sitting in a select() inside
#0  0xc91954e in __select ()
#1  0xc851428 in pgresStatus ()
#2  0xc84a9ea in PQgetResult ()
#3  0xc84ab77 in PQexec ()

and it hangs there forever (well, 10 minutes so far)

Now, the line I am doing an update on, I can select quite happily, and
it returns the value I expect.

Extra info:
#uname -a
Linux ewtoo.org 2.2.12 #2 SMP Fri Oct 1 21:50:14 BST 1999 i686 unknown

#free -k            total       used       free     shared    buffers     cached
Mem:        387476     381112       6364     761628      52904     166224
-/+ buffers/cache:     161984     225492
Swap:       526168      19816     506352

Anyone else seen this?
                    ~Michael


pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: [HACKERS] pg_dump, and strings
Next
From: Tom Lane
Date:
Subject: Re: [HACKERS] Backend crashes (6.5.2 linux)