Re: Keeping separate WAL segments for each database - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Keeping separate WAL segments for each database
Date
Msg-id 22475.1277950912@sss.pgh.pa.us
Whole thread Raw
In response to Re: Keeping separate WAL segments for each database  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: Keeping separate WAL segments for each database
Re: Keeping separate WAL segments for each database
List pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> You need to make sure not only that you replay commit records in
> order, but also that, for example, you don't replay an
> XLOG_HEAP2_CLEAN record too early.

Hm, good point.  That probably means that you *do* need fencepost
records, and furthermore that you might need an interlock to ensure that
you get the fencepost in early enough on the other stream.  Ugh ---
there goes your concurrency.

What about having a single WAL stream for all commit records (thereby
avoiding any possible xact-serialization funnies) and other WAL records
divided up among multiple streams in some fashion or other?  A commit
record would bear minimum-LSN pointers for all the streams that its
transaction had written to.  Things like HEAP_CLEAN records would bear
minimum-LSN pointers for the commit stream.  Workable?
        regards, tom lane


pgsql-hackers by date:

Previous
From: Joe Conway
Date:
Subject: Re: Keeping separate WAL segments for each database
Next
From: Peter Eisentraut
Date:
Subject: Re: server authentication over Unix-domain sockets