Re: [SQL] PostgreSQL server terminated by signal 11

From: "Daniel Caune" <daniel(dot)caune(at)ubisoft(dot)com>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: <pgsql-admin(at)postgresql(dot)org>, <pgsql-sql(at)postgresql(dot)org>
Subject: Re: [SQL] PostgreSQL server terminated by signal 11
Date: 2006-07-27 23:00:27
Message-ID: 1E293D3FF63A3740B10AD5AAD88535D202B64F64@UBIMAIL1.ubisoft.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin pgsql-sql

> -----Message d'origine-----
> De : Tom Lane [mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us]
> Envoyé : jeudi, juillet 27, 2006 16:06
> À : Daniel Caune
> Cc : pgsql-sql(at)postgresql(dot)org
> Objet : Re: [SQL] PostgreSQL server terminated by signal 11
>
> "Daniel Caune" <daniel(dot)caune(at)ubisoft(dot)com> writes:
> > My PostgreSQL server running on a Linux machine is terminated by signal
> > 11 whenever I try to create some indexes on a table, which contains
> > quite a lot of data.
>
> Judging from your examples it's got something to do with the partial
> index WHERE clause. What PG version is this exactly? If you leave out
> different parts of the WHERE, does it still crash? Does the crash
> happen immediately after you give the command, or does it run for
> awhile? It might be worth getting a stack trace from the failure
> (best way is to attach to the running backend with gdb, provoke the
> crash, and do "bt" --- search for "gdb" in the archives if you need
> details).
>
> regards, tom lane

Quite a long time I didn't use gdb! :-) Anyway I proceed as described hereafter; correct me if I was wrong.

> ps -eaf | grep postgres

postgres 2792 2789 0 21:50 pts/2 00:00:00 su postgres
postgres 2793 2792 0 21:50 pts/2 00:00:00 bash
postgres 2902 1 7 22:17 ? 00:01:10 postgres: dbo agora [local] idle
postgres 2952 1 2 22:32 ? 00:00:00 /usr/lib/postgresql/8.1/bin/postmaster -D /var/lib/postgresql/8.1/main -c unix_socket_directory=/var/run/postgresql -c config_file=/etc/postgresql/8.1/main/postgresql.conf -c hba_file=/etc/postgresql/8.1/main/pg_hba.conf -c ident_file=/etc/postgresql/8.1/main/pg_ident.conf
postgres 2954 2952 0 22:32 ? 00:00:00 postgres: writer process
postgres 2955 2952 0 22:32 ? 00:00:00 postgres: stats buffer process
postgres 2956 2955 0 22:32 ? 00:00:00 postgres: stats collector process

I connected to the postgres server using psql and I retrieved the backend pid by executing the statement "SELECT pg_backend_pid();"

I started gdb under the UNIX account postgres and I attached the backend process providing the pid returned by the statement.

I run the command responsible for creating the index and I entered "continue" in gdb for executing the command. After a while, the server crashes:

Program received signal SIGSEGV, Segmentation fault.
0x08079e2a in slot_attisnull ()
(gdb)
Continuing.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.

I can't do "bt" since the program no longer exists. How can I provide more information, stack trace, and so on?

--
Daniel

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Jeff Frost 2006-07-27 23:13:50 Re: Re: [ADMIN] Postgres won´t restart after s
Previous Message adey 2006-07-27 21:32:05 Re: VACUUM ANALYZE suddenly taking forever

Browse pgsql-sql by date

  From Date Subject
Next Message Tom Lane 2006-07-27 23:26:06 Re: [SQL] PostgreSQL server terminated by signal 11
Previous Message Daniel Caune 2006-07-27 21:12:17 Re: PostgreSQL server terminated by signal 11