WAL: postmaster won't start

Started by Tatsuo Ishiiabout 25 years ago5 messages
#1Tatsuo Ishii
t-ishii@sra.co.jp

It seems postmaster won't restart under WAL. What I have done so far
was creating some tables and inserting fairly large amount of tuples
(100000 tuples) using pgbench.

Here is the test sequence:

pg_ctl -w stop
rm -fr /usr/local/pgsql/data
initdb
pg_ctl -w start
createdb test
./pgbench -i test
pg_ctl -w -m i stop
pg_ctl -w start

and postmaster does not return from automatic recovering job. Here are
last 2 lines from log:

Nov 1 12:38:46 srapc968-yotsuya postgres[14769]: [7] DEBUG: The DataBase system was not properly shut down ^IAutomatic recovery is in progress...
Nov 1 12:38:46 srapc968-yotsuya postgres[14769]: [8] DEBUG: Redo starts at (0, 287536)

It seems that the recovery process is waiting for acquiring a lock.
Here is the backtrace from the process:

(gdb) where
#0 0x2ac4acae in __select () from /lib/libc.so.6
#1 0x2ac9f0ac in ?? ()
#2 0x80ea18c in LockBuffer (buffer=37, mode=2) at xlog_bufmgr.c:1995
#3 0x8082feb in XLogReadBuffer (extend=0, reln=0x82e92c8, blkno=1)
at xlogutils.c:215
#4 0x80781e4 in btree_xlog_delete (redo=1, lsn={xlogid = 0,
xrecoff = 23741124}, record=0x82980dc) at nbtree.c:1013
#5 0x80790fe in btree_redo (lsn={xlogid = 0, xrecoff = 23741124},
record=0x82980dc) at nbtree.c:1450
#6 0x80825b2 in StartupXLOG () at xlog.c:1452
#7 0x80850cd in BootstrapMain (argc=6, argv=0x7fffeffc) at bootstrap.c:349
#8 0x80e047a in SSDataBase (startup=1 '\001') at postmaster.c:2187
#9 0x80deb1a in PostmasterMain (argc=1, argv=0x7ffff694) at postmaster.c:667
#10 0x80c3646 in main (argc=1, argv=0x7ffff694) at main.c:112

Please let me know if you need more info.
--
Tatsuo Ishii

#2Mikheev, Vadim
vmikheev@SECTORBASE.COM
In reply to: Tatsuo Ishii (#1)
RE: WAL: postmaster won't start

Did you turn XLOG_DEBUG off?
With XLOG_DEBUG on there should be lines in log like

REDO @ 0/434100; LSN 0/434252: .........

before control would reach btree_redo...

Ok, anyway btree_xlog_delete is fixed. Thanks, Tatsuo!
And please try again -:)

Vadim

Show quoted text

It seems postmaster won't restart under WAL. What I have done so far
was creating some tables and inserting fairly large amount of tuples
(100000 tuples) using pgbench.

Here is the test sequence:

pg_ctl -w stop
rm -fr /usr/local/pgsql/data
initdb
pg_ctl -w start
createdb test
./pgbench -i test
pg_ctl -w -m i stop
pg_ctl -w start

and postmaster does not return from automatic recovering job. Here are
last 2 lines from log:

Nov 1 12:38:46 srapc968-yotsuya postgres[14769]: [7] DEBUG:
The DataBase system was not properly shut down ^IAutomatic
recovery is in progress...
Nov 1 12:38:46 srapc968-yotsuya postgres[14769]: [8] DEBUG:
Redo starts at (0, 287536)

It seems that the recovery process is waiting for acquiring a lock.
Here is the backtrace from the process:

(gdb) where
#0 0x2ac4acae in __select () from /lib/libc.so.6
#1 0x2ac9f0ac in ?? ()
#2 0x80ea18c in LockBuffer (buffer=37, mode=2) at xlog_bufmgr.c:1995
#3 0x8082feb in XLogReadBuffer (extend=0, reln=0x82e92c8, blkno=1)
at xlogutils.c:215
#4 0x80781e4 in btree_xlog_delete (redo=1, lsn={xlogid = 0,
xrecoff = 23741124}, record=0x82980dc) at nbtree.c:1013
#5 0x80790fe in btree_redo (lsn={xlogid = 0, xrecoff = 23741124},
record=0x82980dc) at nbtree.c:1450
#6 0x80825b2 in StartupXLOG () at xlog.c:1452
#7 0x80850cd in BootstrapMain (argc=6, argv=0x7fffeffc) at
bootstrap.c:349
#8 0x80e047a in SSDataBase (startup=1 '\001') at postmaster.c:2187
#9 0x80deb1a in PostmasterMain (argc=1, argv=0x7ffff694) at
postmaster.c:667
#10 0x80c3646 in main (argc=1, argv=0x7ffff694) at main.c:112

Please let me know if you need more info.
--
Tatsuo Ishii

#3Mikheev, Vadim
vmikheev@SECTORBASE.COM
In reply to: Mikheev, Vadim (#2)
RE: WAL: postmaster won't start

Did you turn XLOG_DEBUG off?
With XLOG_DEBUG on there should be lines in log like

REDO @ 0/434100; LSN 0/434252: .........

before control would reach btree_redo...

No. I just started up postmaster with -S (logs are forwarded to syslog
in my settings).

Oh. XLOG_DEBUG calls write(2,) - too big output for syslog I think.

Vadim

#4Tatsuo Ishii
t-ishii@sra.co.jp
In reply to: Mikheev, Vadim (#2)
RE: WAL: postmaster won't start

Did you turn XLOG_DEBUG off?
With XLOG_DEBUG on there should be lines in log like

REDO @ 0/434100; LSN 0/434252: .........

before control would reach btree_redo...

No. I just started up postmaster with -S (logs are forwarded to syslog
in my settings).

Ok, anyway btree_xlog_delete is fixed. Thanks, Tatsuo!
And please try again -:)

Thanks. I will try again.
--
Tatsuo Ishii

#5Tatsuo Ishii
t-ishii@sra.co.jp
In reply to: Mikheev, Vadim (#3)
RE: WAL: postmaster won't start

No. I just started up postmaster with -S (logs are forwarded to syslog
in my settings).

Oh. XLOG_DEBUG calls write(2,) - too big output for syslog I think.

I see. Next time I will turn off -S so that I could send you
XLOG_DEBUG outputs...
--
Tatsuo Ishii