Re: WAL file internals and why a 64 bit will not work on a 32 bit

From: Richard Huxton <dev(at)archonet(dot)com>
To: Dhaval Shah <dhaval(dot)shah(dot)m(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: WAL file internals and why a 64 bit will not work on a 32 bit
Date: 2007-05-10 07:14:45
Message-ID: 4642C665.3000709@archonet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Dhaval Shah wrote:
> I do know that WAL files taken from a 64 bit OS will not work on a 32
> bit OS. However I have to prepare a technical answer to this.
>
> That is, questions like - why a WAL file from 64 bit will not work in
> 32 bit. Also does the WAL file differ for same architecture but
> different kind of partitions?

The WAL files track on-disk changes. That is, they represent the bytes
changed in individual blocks. So - both machines will need to have
*identical* on-disk formats for the WAL transfer to work.

It can be something as small as a configuration option chosen when
compiling PostgreSQL. For example - you can change between
floating-point and integer date-times at ./configure time and if you use
different settings on two identical machines then the WAL files will be
incompatible.

The obvious incompatibility I'd expect in a 32 to 64-bit changeover
would be alignment of data fields to 32 or 64-bit boundaries. I've not
checked, but I'd be surprised if there wasn't some difference there.

--
Richard Huxton
Archonet Ltd

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Dawid Kuroczko 2007-05-10 07:16:21 Re: Dangers of fsync = off
Previous Message Hannes Dorbath 2007-05-10 07:08:53 Re: In theory question