Re: recovering a control file from a shutdown database.... - Mailing list pgsql-general

From Joe Conway
Subject Re: recovering a control file from a shutdown database....
Date
Msg-id 032101c1367b$d10ecd10$0705a8c0@jecw2k1
Whole thread Raw
In response to recovering a control file from a shutdown database....  (Jerry Asher <jerry@theashergroup.com>)
List pgsql-general
> When the postmaster starts up, it tells me that:
>
>      database was initialized with BLCKSZ 16384,
>      but the backend was compiled with BLCKSZ 8192.
>      looks like you need an initdb.
>

It sounds from that error message like your 7.1.2 version of PostgreSQL was
modified and compiled from source. The default BLCKSZ is 8192, which is what
your 7.1.3 version is using. I think you need to modify the BLCKSZ for 7.1.3
to match that of your database, and recompile, if you want to avoid losing
it.

See <postgres source tree>/src/include/config.h for the section that looks
like the following:
--------------------------------------------------------------
/*
 * Size of a disk block --- this also limits the size of a tuple.
 * You can set it bigger if you need bigger tuples (although TOAST
 * should reduce the need to have large tuples, since fields can now
 * be spread across multiple tuples).
 *
 * The maximum possible value of BLCKSZ is currently 2^15 (32768).
 * This is determined by the 15-bit widths of the lp_off and lp_len
 * fields in ItemIdData (see include/storage/itemid.h).
 *
 * CAUTION: changing BLCKSZ requires an initdb.
 */
#define BLCKSZ 8192
--------------------------------------------------------------

and change
#define BLCKSZ 8192
to
#define BLCKSZ 16384

Then recompile.

Hope this helps,

-- Joe



pgsql-general by date:

Previous
From: John Clark Naldoza y Lopez
Date:
Subject: Re: jdbc driver with BigDecimal patch
Next
From: Tomas Berndtsson
Date:
Subject: connection failed in threaded application