Fix compilation problem with assert checking enabled for recent xlog
location feature.
This commit is contained in:
parent
0fe931a3e0
commit
ac1a3dcf24
2 changed files with 11 additions and 9 deletions
|
@ -7,7 +7,7 @@
|
|||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $Header: /cvsroot/pgsql/src/backend/access/transam/xlog.c,v 1.99 2002/08/04 06:53:10 thomas Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/access/transam/xlog.c,v 1.100 2002/08/05 01:24:13 thomas Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
@ -389,7 +389,8 @@ static ControlFileData *ControlFile = NULL;
|
|||
|
||||
|
||||
/* File path names */
|
||||
static char XLogDir[MAXPGPATH] = "";
|
||||
char *XLogDir = NULL;
|
||||
|
||||
static char ControlFilePath[MAXPGPATH];
|
||||
|
||||
/*
|
||||
|
@ -2068,16 +2069,17 @@ ValidXLOGHeader(XLogPageHeader hdr, int emode, bool checkSUI)
|
|||
void
|
||||
SetXLogDir(char *path)
|
||||
{
|
||||
char *xsubdir = "/pg_xlog";
|
||||
|
||||
if (path != NULL)
|
||||
{
|
||||
if (strlen(path) >= MAXPGPATH)
|
||||
elog(FATAL, "XLOG path '%s' is too long"
|
||||
"; maximum length is %d characters", path, MAXPGPATH-1);
|
||||
XLogDir = malloc(strlen(path)+1);
|
||||
strcpy(XLogDir, path);
|
||||
}
|
||||
else
|
||||
{
|
||||
snprintf(XLogDir, MAXPGPATH, "%s/pg_xlog", DataDir);
|
||||
XLogDir = malloc(strlen(DataDir)+strlen(xsubdir)+1);
|
||||
snprintf(XLogDir, MAXPGPATH, "%s%s", DataDir, xsubdir);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2085,7 +2087,7 @@ void
|
|||
XLOGPathInit(void)
|
||||
{
|
||||
/* Init XLOG file paths */
|
||||
if (strlen(XLogDir) <= 0)
|
||||
if (XLogDir == NULL)
|
||||
SetXLogDir(NULL);
|
||||
snprintf(ControlFilePath, MAXPGPATH, "%s/global/pg_control", DataDir);
|
||||
}
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $Id: xlog.h,v 1.32 2002/08/04 06:26:38 thomas Exp $
|
||||
* $Id: xlog.h,v 1.33 2002/08/05 01:24:16 thomas Exp $
|
||||
*/
|
||||
#ifndef XLOG_H
|
||||
#define XLOG_H
|
||||
|
@ -176,7 +176,7 @@ typedef struct XLogRecData
|
|||
} XLogRecData;
|
||||
|
||||
/* XLOG directory name */
|
||||
extern char XLogDir[];
|
||||
extern char *XLogDir;
|
||||
|
||||
extern StartUpID ThisStartUpID; /* current SUI */
|
||||
extern bool InRecovery;
|
||||
|
|
Loading…
Reference in a new issue