postgres segfaulting on pg_restore - Mailing list pgsql-general

From Chris Curvey
Subject postgres segfaulting on pg_restore
Date
Msg-id BANLkTi=pLx4mAiRkT5HqxALJMZD_xhb88g@mail.gmail.com
Whole thread Raw
Responses Re: postgres segfaulting on pg_restore
List pgsql-general
Thank goodness I'm still in development!  I'm trying to use pg_restore with a dump created with pg_dump.  But it keeps failing with segmentation or general protection faults.  My restore command is:

$ sudo -u postgres pg_restore -d mydatabase -j8 mydatabase.dmp

I've now tried five times, and gotten five failures. (I've tries setting --jobs to smaller values, including not specifying anything at all.)  Here's the postgres error log from the last failure:

2011-04-04 23:07:00 EDT LOG:  server process (PID 7632) was terminated by signal 11: Segmentation fault
2011-04-04 23:07:00 EDT LOG:  terminating any other active server processes
2011-04-04 23:07:00 EDT WARNING:  terminating connection because of crash of another server process
2011-04-04 23:07:00 EDT DETAIL:  The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
2011-04-04 23:07:00 EDT HINT:  In a moment you should be able to reconnect to the database and repeat your command.
2011-04-04 23:07:00 EDT WARNING:  terminating connection because of crash of another server process
2011-04-04 23:07:00 EDT DETAIL:  The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
2011-04-04 23:07:00 EDT HINT:  In a moment you should be able to reconnect to the database and repeat your command.
2011-04-04 23:07:00 EDT CONTEXT:  COPY transactions, line 10629187
2011-04-04 23:07:00 EDT WARNING:  terminating connection because of crash of another server process
2011-04-04 23:07:00 EDT DETAIL:  The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
2011-04-04 23:07:00 EDT HINT:  In a moment you should be able to reconnect to the database and repeat your command.
2011-04-04 23:07:00 EDT WARNING:  terminating connection because of crash of another server process
2011-04-04 23:07:00 EDT DETAIL:  The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
2011-04-04 23:07:00 EDT HINT:  In a moment you should be able to reconnect to the database and repeat your command.
2011-04-04 23:07:00 EDT FATAL:  the database system is in recovery mode
2011-04-04 23:07:00 EDT LOG:  all server processes terminated; reinitializing
2011-04-04 23:07:00 EDT LOG:  database system was interrupted; last known up at 2011-04-04 23:06:25 EDT
2011-04-04 23:07:00 EDT LOG:  database system was not properly shut down; automatic recovery in progress
2011-04-04 23:07:00 EDT LOG:  consistent recovery state reached at 19/6E524410
2011-04-04 23:07:00 EDT LOG:  redo starts at 19/6E175B68
2011-04-04 23:07:00 EDT LOG:  unexpected pageaddr 18/425D6000 in log file 25, segment 110, offset 6119424
2011-04-04 23:07:00 EDT LOG:  redo done at 19/6E5D5F90
2011-04-04 23:07:00 EDT LOG:  last completed transaction was at log time 2011-04-04 23:06:16.684615-04
2011-04-04 23:07:01 EDT LOG:  database system is ready to accept connections
2011-04-04 23:07:01 EDT LOG:  autovacuum launcher started

And in /var/log/messages, I have the following (last line is for this crash, previous lines for previous crashes):

Apr  4 21:27:27 mu kernel: [ 1964.787667] do_general_protection: 24 callbacks suppressed
Apr  4 21:27:27 mu kernel: [ 1964.787671] postgres[3439] general protection ip:7f8372c8d2f7 sp:7fff61b72b38 error:0 in postgres[7f8372973000+4a8000]
Apr  4 21:32:21 mu kernel: [ 2258.266116] postgres[4307]: segfault at 30 ip 00007f8372c8d2fb sp 00007fff61b72bd8 error 4 in postgres[7f8372973000+4a8000]
Apr  4 21:47:27 mu kernel: [ 3164.740812] postgres[5040]: segfault at 40 ip 00007f8372c8d2fb sp 00007fff61b72b38 error 4 in postgres[7f8372973000+4a8000]
Apr  4 22:03:12 mu kernel: [ 4108.987420] postgres[5077]: segfault at 40 ip 00007f8372c8d2fb sp 00007fff61b72978 error 4 in postgres[7f8372973000+4a8000]
Apr  4 22:56:13 mu kernel: [ 7288.639099] postgres[5308] general protection ip:7f8372c8d2f7 sp:7fff61b72748 error:0 in postgres[7f8372973000+4a8000]
Apr  4 23:07:00 mu kernel: [ 7935.670820] postgres[7632]: segfault at 7365 ip 00007f8372c8c94e sp 00007fff61b72ad0 error 4 in postgres[7f8372973000+4a8000]

This is on Ubuntu 10.10 server, 64-bit on Intel.  I'm running Postgres 9.0.3, 64-bit from the ppa repository.

What can I do to help the developers find the root cause of this?  I'm happy to run a debug version, or find a corefile, or whatever I can, but I might need some guidance, as I'm pretty new to postgres.

-Chris


--
Ignoring that little voice in my head since 1966!

pgsql-general by date:

Previous
From: Gordon Shannon
Date:
Subject: could not access status of transaction 1118722281
Next
From: Craig Ringer
Date:
Subject: Re: postgres segfaulting on pg_restore