/*
* Await state transition to "on" in all backends. When done we know that
- * data data checksums are both written and verified in all backends.
+ * data checksums are both written and verified in all backends.
*/
WaitForProcSignalBarrier(barrier);
}
SpinLockAcquire(&XLogCtl->info_lck);
/* If data checksums are already disabled there is nothing to do */
- if (XLogCtl->data_checksum_version == 0)
+ if (XLogCtl->data_checksum_version == PG_DATA_CHECKSUM_OFF)
{
SpinLockRelease(&XLogCtl->info_lck);
return;
XLogChecksums(PG_DATA_CHECKSUM_OFF);
SpinLockAcquire(&XLogCtl->info_lck);
- XLogCtl->data_checksum_version = 0;
+ XLogCtl->data_checksum_version = PG_DATA_CHECKSUM_OFF;
SpinLockRelease(&XLogCtl->info_lck);
barrier = EmitProcSignalBarrier(PROCSIGNAL_BARRIER_CHECKSUM_OFF);
XLogChecksums(PG_DATA_CHECKSUM_OFF);
SpinLockAcquire(&XLogCtl->info_lck);
- XLogCtl->data_checksum_version = 0;
+ XLogCtl->data_checksum_version = PG_DATA_CHECKSUM_OFF;
SetLocalDataChecksumState(XLogCtl->data_checksum_version);
SpinLockRelease(&XLogCtl->info_lck);
XLogChecksums(PG_DATA_CHECKSUM_OFF);
SpinLockAcquire(&XLogCtl->info_lck);
- XLogCtl->data_checksum_version = 0;
+ XLogCtl->data_checksum_version = PG_DATA_CHECKSUM_OFF;
SetLocalDataChecksumState(XLogCtl->data_checksum_version);
SpinLockRelease(&XLogCtl->info_lck);
}
pg_getopt_ctx optctx;
int flag;
char *userDoption = NULL;
- uint32 bootstrap_data_checksum_version = 0; /* No checksum */
+ uint32 bootstrap_data_checksum_version = PG_DATA_CHECKSUM_OFF;
yyscan_t scanner;
Assert(!IsUnderPostmaster);
mode == PG_MODE_CHECK)
pg_fatal("data checksums are not enabled in cluster");
- if (ControlFile->data_checksum_version == 0 &&
+ if (ControlFile->data_checksum_version == PG_DATA_CHECKSUM_OFF &&
mode == PG_MODE_DISABLE)
pg_fatal("data checksums are already disabled in cluster");
if (mode == PG_MODE_ENABLE || mode == PG_MODE_DISABLE)
{
ControlFile->data_checksum_version =
- (mode == PG_MODE_ENABLE) ? PG_DATA_CHECKSUM_VERSION : 0;
+ (mode == PG_MODE_ENABLE) ? PG_DATA_CHECKSUM_VERSION : PG_DATA_CHECKSUM_OFF;
if (do_sync)
{
{
int i;
uint64 system_identifier = 0; /* placate compiler */
- uint32 data_checksum_version = 0; /* placate compiler */
+ uint32 data_checksum_version = PG_DATA_CHECKSUM_OFF; /* placate compiler */
bool data_checksum_mismatch = false;
/* Try to read each control file in turn, last to first. */
*/
if (i == n_backups - 1)
data_checksum_version = control_file->data_checksum_version;
- else if (data_checksum_version != 0 &&
+ else if (data_checksum_version != PG_DATA_CHECKSUM_OFF &&
data_checksum_version != control_file->data_checksum_version)
data_checksum_mismatch = true;
/* Only in <= 9.2 */
if (GET_MAJOR_VERSION(cluster->major_version) <= 902)
{
- cluster->controldata.data_checksum_version = 0;
+ cluster->controldata.data_checksum_version = PG_DATA_CHECKSUM_OFF;
got_data_checksum_version = true;
}
* We might eventually allow upgrades from checksum to no-checksum
* clusters.
*/
- if (oldctrl->data_checksum_version == 0 &&
- newctrl->data_checksum_version != 0)
+ if (oldctrl->data_checksum_version == PG_DATA_CHECKSUM_OFF &&
+ newctrl->data_checksum_version != PG_DATA_CHECKSUM_OFF)
pg_fatal("old cluster does not use data checksums but the new one does");
- else if (oldctrl->data_checksum_version != 0 &&
- newctrl->data_checksum_version == 0)
+ else if (oldctrl->data_checksum_version != PG_DATA_CHECKSUM_OFF &&
+ newctrl->data_checksum_version == PG_DATA_CHECKSUM_OFF)
pg_fatal("old cluster uses data checksums but the new one does not");
else if (oldctrl->data_checksum_version != newctrl->data_checksum_version)
pg_fatal("old and new cluster pg_controldata checksum versions do not match");
break;
/* Set new checksum for visibility map page, if enabled */
- if (new_cluster.controldata.data_checksum_version != 0)
+ if (new_cluster.controldata.data_checksum_version != PG_DATA_CHECKSUM_OFF)
((PageHeader) new_vmbuf.data)->pd_checksum =
pg_checksum_page(new_vmbuf.data, new_blkno);