Обсуждение: Server process crashes when using count(field).

Поиск
Список
Период
Сортировка

Server process crashes when using count(field).

От
KroK
Дата:
Hello.

Server process crashes when using count(<fieldname>), however it's ok when using count(*).

Look at this example :

netstat=> \d ruscan_current
                                  Table "public.ruscan_current"
      Column      |            Type             |                    Modifiers
------------------+-----------------------------+-------------------------------------------------
...
 sld_id           | integer                     | not null default nextval('ruscan_serial'::text)
...
Indexes: ruscan_current_pkey primary key btree (sld_id),
...

netstat=> select count(*) from ruscan_current ;
 count
--------
 194672
(1 row)

netstat=> select count(sld_id) from ruscan_current ;
server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.
The connection to the server was lost. Attempting reset: Failed.
!>

That's All !

And there are no log messages  with this configureation of logging :

server_min_messages = info
client_min_messages = info

There are only the following in logs :

Mar 29 13:20:19 frost postgres[14486]: [7] LOG:  server process (pid 15079) was terminated by signal 11
Mar 29 13:20:19 frost postgres[14486]: [8] LOG:  terminating any other active server processes
Mar 29 13:20:19 frost postgres[14486]: [9] LOG:  all server processes terminated; reinitializing shared memory and
semaphores
Mar 29 13:20:19 frost postgres[15278]: [10] FATAL:  The database system is starting up
Mar 29 13:20:19 frost postgres[15277]: [10] LOG:  database system was interrupted at 2003-03-29 13:11:23 MSK
Mar 29 13:20:19 frost postgres[15277]: [11] LOG:  checkpoint record is at 11/B8A53DA0
Mar 29 13:20:19 frost postgres[15277]: [12] LOG:  redo record is at 11/B8A53DA0; undo record is at 0/0; shutdown TRUE
Mar 29 13:20:19 frost postgres[15277]: [13] LOG:  next transaction id: 99502674; next oid: 4753379
Mar 29 13:20:19 frost postgres[15277]: [14] LOG:  database system was not properly shut down; automatic recovery in
progress
Mar 29 13:20:19 frost postgres[15277]: [15] LOG:  redo starts at 11/B8A53DE0
Mar 29 13:20:19 frost postgres[15277]: [16] LOG:  ReadRecord: record with zero length at 11/B8A9CB7C
Mar 29 13:20:19 frost postgres[15277]: [17] LOG:  redo done at 11/B8A9CB58
Mar 29 13:20:21 frost postgres[15277]: [18] LOG:  database system is ready


I'm Using PostgreSQL 7.3.2 on FreeBSD-4.7-RELEASE-p7

configure :
./configure '--prefix=/slave/pgsql_7.3.2' '--with-perl' '--enable-integer-datetimes' '--enable-recode'


Thanks.
Krok.

Re: Server process crashes when using count(field).

От
Stephan Szabo
Дата:
> netstat=> select count(*) from ruscan_current ;
>  count
> --------
>  194672
> (1 row)
>
> netstat=> select count(sld_id) from ruscan_current ;
> server closed the connection unexpectedly
>         This probably means the server terminated abnormally
>         before or while processing the request.
> The connection to the server was lost. Attempting reset: Failed.
> !>
>
> That's All !
>
> And there are no log messages  with this configureation of logging :
>
> server_min_messages = info
> client_min_messages = info
>
> There are only the following in logs :
>
> Mar 29 13:20:19 frost postgres[14486]: [7] LOG:  server process (pid 15079) was terminated by signal 11

Unless your ulimits are set up to disallow core files, this should have
generated a core file in the data directory for the database you were
connected to.  If you have one, please post a backtrace.  If not, set the
ulimits to allow core, restart the server and see if you can get it to
crash again with a core.

Re: Server process crashes when using count(field).

От
Tom Lane
Дата:
KroK <krok@void.ru> writes:
> Server process crashes when using count(<fieldname>), however it's ok when using count(*).

I'm wondering about corrupted data ... but without a stack trace from
the core dump, it's hard to tell.

            regards, tom lane