|
7 | 7 | * Portions Copyright (c) 1996-2007, PostgreSQL Global Development Group |
8 | 8 | * Portions Copyright (c) 1994, Regents of the University of California |
9 | 9 | * |
10 | | - * $PostgreSQL: pgsql/src/backend/access/transam/xlog.c,v 1.264 2007/02/14 05:00:40 momjian Exp $ |
| 10 | + * $PostgreSQL: pgsql/src/backend/access/transam/xlog.c,v 1.265 2007/03/03 20:02:26 momjian Exp $ |
11 | 11 | * |
12 | 12 | *------------------------------------------------------------------------- |
13 | 13 | */ |
@@ -4039,7 +4039,6 @@ BootStrapXLOG(void) |
4039 | 4039 | /* Set up information for the initial checkpoint record */ |
4040 | 4040 | checkPoint.redo.xlogid = 0; |
4041 | 4041 | checkPoint.redo.xrecoff = SizeOfXLogLongPHD; |
4042 | | - checkPoint.undo = checkPoint.redo; |
4043 | 4042 | checkPoint.ThisTimeLineID = ThisTimeLineID; |
4044 | 4043 | checkPoint.nextXidEpoch = 0; |
4045 | 4044 | checkPoint.nextXid = FirstNormalTransactionId; |
@@ -4698,9 +4697,8 @@ StartupXLOG(void) |
4698 | 4697 | wasShutdown = (record->xl_info == XLOG_CHECKPOINT_SHUTDOWN); |
4699 | 4698 |
|
4700 | 4699 | ereport(LOG, |
4701 | | - (errmsg("redo record is at %X/%X; undo record is at %X/%X; shutdown %s", |
| 4700 | + (errmsg("redo record is at %X/%X; shutdown %s", |
4702 | 4701 | checkPoint.redo.xlogid, checkPoint.redo.xrecoff, |
4703 | | - checkPoint.undo.xlogid, checkPoint.undo.xrecoff, |
4704 | 4702 | wasShutdown ? "TRUE" : "FALSE"))); |
4705 | 4703 | ereport(LOG, |
4706 | 4704 | (errmsg("next transaction ID: %u/%u; next OID: %u", |
@@ -4730,20 +4728,17 @@ StartupXLOG(void) |
4730 | 4728 | if (XLByteLT(RecPtr, checkPoint.redo)) |
4731 | 4729 | ereport(PANIC, |
4732 | 4730 | (errmsg("invalid redo in checkpoint record"))); |
4733 | | - if (checkPoint.undo.xrecoff == 0) |
4734 | | - checkPoint.undo = RecPtr; |
4735 | 4731 |
|
4736 | 4732 | /* |
4737 | 4733 | * Check whether we need to force recovery from WAL. If it appears to |
4738 | 4734 | * have been a clean shutdown and we did not have a recovery.conf file, |
4739 | 4735 | * then assume no recovery needed. |
4740 | 4736 | */ |
4741 | | - if (XLByteLT(checkPoint.undo, RecPtr) || |
4742 | | - XLByteLT(checkPoint.redo, RecPtr)) |
| 4737 | + if (XLByteLT(checkPoint.redo, RecPtr)) |
4743 | 4738 | { |
4744 | 4739 | if (wasShutdown) |
4745 | 4740 | ereport(PANIC, |
4746 | | - (errmsg("invalid redo/undo record in shutdown checkpoint"))); |
| 4741 | + (errmsg("invalid redo record in shutdown checkpoint"))); |
4747 | 4742 | InRecovery = true; |
4748 | 4743 | } |
4749 | 4744 | else if (ControlFile->state != DB_SHUTDOWNED) |
@@ -5850,10 +5845,9 @@ xlog_desc(StringInfo buf, uint8 xl_info, char *rec) |
5850 | 5845 | { |
5851 | 5846 | CheckPoint *checkpoint = (CheckPoint *) rec; |
5852 | 5847 |
|
5853 | | - appendStringInfo(buf, "checkpoint: redo %X/%X; undo %X/%X; " |
| 5848 | + appendStringInfo(buf, "checkpoint: redo %X/%X; " |
5854 | 5849 | "tli %u; xid %u/%u; oid %u; multi %u; offset %u; %s", |
5855 | 5850 | checkpoint->redo.xlogid, checkpoint->redo.xrecoff, |
5856 | | - checkpoint->undo.xlogid, checkpoint->undo.xrecoff, |
5857 | 5851 | checkpoint->ThisTimeLineID, |
5858 | 5852 | checkpoint->nextXidEpoch, checkpoint->nextXid, |
5859 | 5853 | checkpoint->nextOid, |
|
0 commit comments