vacuum crash

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема vacuum crash
Дата
Msg-id 199810080002.UAA15184@candle.pha.pa.us
обсуждение исходный текст
Список pgsql-hackers
Here is a modified version of the vacuum crash I am studying.

Interesting is that if I do a 'vacuum getting' instead of 'select * from
getting;vacuum;', I see a different error message.  Rather than a crash
due to an Assert(), psql shows:

    NOTICE:  AbortTransaction and not in in-progress state
    NOTICE:  AbortTransaction and not in in-progress state

and the postmaster log file shows:

    ERROR:  cannot write block -1 of  [] blind
    AbortCurrentTransaction
    NOTICE:  AbortTransaction and not in in-progress state

This can be debugged by commenting out the psql command at the end,
running the script, and then running a backend from gdb and doing
'vacuum getting'.

This looks like it may be easier to track down.  Vadim, any chance you
can bail me out here, again.

--
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

#!/bin/sh

DBNAME=ptest

destroydb $DBNAME
createdb $DBNAME
psql -e $DBNAME <<EOF
create table header
(
    host    text    not null,
    port    int    not null,
    path    text    not null,
    file    text    not null,
    extra    text    not null,
    name    text    not null,
    value    text    not null
);
create index header_url_idx on header (host, port, path, file, extra);
create unique index header_uniq_idx on header (host, port, path, file, extra, name);

create table reference
(
    f_url    text    not null,
    t_url    text    not null
);
create index reference_from_idx on reference (f_url);
create index reference_to_idx on reference (t_url);
create unique index reference_uniq_idx on reference (f_url, t_url);

create table extension
(
    ext    text    not null,
    note    text
);
create unique index extension_ext_idx on extension (ext);

create table getting
(
    host    text    not null,
    port    int    not null,
    ip    text    not null,
    when    datetime    not null
);
--create unique index getting_ip_idx on getting (ip);
EOF
#psql -c "delete from getting; vacuum;" $DBNAME
    psql -c "vacuum getting;" $DBNAME
#    psql -c "select * from getting; vacuum;" $DBNAME
#psql -c "delete from getting;" $DBNAME
#psql -c "select * from getting;" $DBNAME
#psql -c "vacuum;" $DBNAME
#psql -c "vacuum; vacuum;" $DBNAME



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Peter T Mount
Дата:
Сообщение: Missing file from JDBC Driver
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: [HACKERS] Dumping of views -- done!