Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: Half filled xlogs


  • From: Simon Riggs <simon(at)2ndquadrant(dot)com>
  • To: Magnus Hagander <mha(at)sollentuna(dot)net>
  • Cc: pgsql-hackers-win32(at)postgresql(dot)org
  • Subject: Re: Half filled xlogs
  • Date: Sun, 20 Mar 2005 23:09:03 +0000
  • Message-id: <1111360143(dot)11750(dot)424(dot)camel(at)localhost(dot)localdomain>

On Sun, 2005-03-20 at 17:02 +0100, Magnus Hagander wrote:
> >I'm looking into copying partially filled xlogs with the Archiver
> >process, to allow a more rounded warm standby database option.
> >
> >My understanding is that on win32, when an xlog file is still being
> >written to by a backend it will be locked and unable to be copied away
> >by another process.
> 
> No, that shouldn't be a problem. 

OK, good. That makes it a lot simpler.

I'll post a design that explains that soon.

> We open all our files with
> FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE (see port/open.c). It
> should work fine as the other process that reads it also opens it with
> at least FILE_SHARE_READ.

...but its the implications that count!

> To verify, I started up a backend and did a begin transaction;create
> table foo(bar int);
> Then I copied the xlog file, and it copied without any errors. 
> 
> AFAIK, it shuold also contain the actual data, as long as it's been
> synced (which would be the same on unix, right?). (or if the file is
> opened with o_dsync). I haven't verified it myself, though.

I was hoping to verify by theory - but I'll go for it then we can test.

Best Regards, Simon Riggs




Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group