Help with finding checkpoint code

Started by Bruce Momjianover 23 years ago4 messages
#1Bruce Momjian
pgman@candle.pha.pa.us

I am trying to find when WAL log files are rotated. The message is:

2002-02-11 21:18:13 DEBUG: recycled transaction log file 0000000000000005

and it is printed in MoveOfflineLogs(), and MoveOfflineLogs() is only
called by CreateCheckPoint(), but I can't see where CreateCheckPoint()
is called in normal operation. I see it called by CHECKPOINT, and on
startup and shutdown, and from bootstrap, but where is it called during
normal backend operation.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
#2Alvaro Herrera
alvherre@atentus.com
In reply to: Bruce Momjian (#1)
Re: Help with finding checkpoint code

En Sat, 31 Aug 2002 23:27:08 -0400 (EDT)
Bruce Momjian <pgman@candle.pha.pa.us> escribi�:

I am trying to find when WAL log files are rotated. The message is:

2002-02-11 21:18:13 DEBUG: recycled transaction log file 0000000000000005

and it is printed in MoveOfflineLogs(), and MoveOfflineLogs() is only
called by CreateCheckPoint(), but I can't see where CreateCheckPoint()
is called in normal operation. I see it called by CHECKPOINT, and on
startup and shutdown, and from bootstrap, but where is it called during
normal backend operation.

I see it on TruncateCLOG(), src/backend/access/transam/clog.c; that is
called by vacuum code. Also on CheckPoinDataBase(), macro in
src/backend/postmaster/postmaster.c (this is called on a periodic basis
AFAIU)

HTH

--
Alvaro Herrera (<alvherre[a]atentus.com>)
One man's impedance mismatch is another man's layer of abstraction.
(Lincoln Yeoh)

#3J. R. Nield
jrnield@usol.com
In reply to: Bruce Momjian (#1)
Re: Help with finding checkpoint code

It is called by a special child process of the postmaster after a
signal. Search for PMSIGNAL_DO_CHECKPOINT in xlog.c and in postmaster.c.
The checkpoint process gets started out of sigusr1_handler().

On Sat, 2002-08-31 at 23:27, Bruce Momjian wrote:

I am trying to find when WAL log files are rotated. The message is:

2002-02-11 21:18:13 DEBUG: recycled transaction log file 0000000000000005

and it is printed in MoveOfflineLogs(), and MoveOfflineLogs() is only
called by CreateCheckPoint(), but I can't see where CreateCheckPoint()
is called in normal operation. I see it called by CHECKPOINT, and on
startup and shutdown, and from bootstrap, but where is it called during
normal backend operation.

-- 
Bruce Momjian                        |  http://candle.pha.pa.us
pgman@candle.pha.pa.us               |  (610) 359-1001
+  If your life is a hard drive,     |  13 Roberts Road
+  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

--
J. R. Nield
jrnield@usol.com

#4Bruce Momjian
pgman@candle.pha.pa.us
In reply to: J. R. Nield (#3)
Re: Help with finding checkpoint code

Thanks, got it.

---------------------------------------------------------------------------

J. R. Nield wrote:

It is called by a special child process of the postmaster after a
signal. Search for PMSIGNAL_DO_CHECKPOINT in xlog.c and in postmaster.c.
The checkpoint process gets started out of sigusr1_handler().

On Sat, 2002-08-31 at 23:27, Bruce Momjian wrote:

I am trying to find when WAL log files are rotated. The message is:

2002-02-11 21:18:13 DEBUG: recycled transaction log file 0000000000000005

and it is printed in MoveOfflineLogs(), and MoveOfflineLogs() is only
called by CreateCheckPoint(), but I can't see where CreateCheckPoint()
is called in normal operation. I see it called by CHECKPOINT, and on
startup and shutdown, and from bootstrap, but where is it called during
normal backend operation.

-- 
Bruce Momjian                        |  http://candle.pha.pa.us
pgman@candle.pha.pa.us               |  (610) 359-1001
+  If your life is a hard drive,     |  13 Roberts Road
+  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

--
J. R. Nield
jrnield@usol.com

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073