|From:||Simon Riggs <simon(at)2ndQuadrant(dot)com>|
|To:||Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>|
|Cc:||Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, Peter Eisentraut <peter_e(at)gmx(dot)net>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>|
|Subject:||Re: Enabling archive_mode without restart|
|Views:||Raw Message | Whole Thread | Download mbox | Resend email|
On Fri, 2008-10-31 at 13:14 -0400, Tom Lane wrote:
> Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com> writes:
> > archive_mode = on disables the optimization to skip WAL-logging when
> > loading into a new table that was created in the same transaction.
> ... and affects a whole bunch of other behaviors too, in processes all
> across the database that could not possibly adopt a new setting
> synchronously. That's exactly why it was made a postmaster-start option
> to begin with. Simon's given no argument at all why it would be safe to
> flip it on-the-fly.
First, you are right my initial sketch missed a couple of obvious
mechanisms. But those aren't correctness issues.
Flipping in mid-execution wasn't really what I was proposing. That would
clearly be a big problem. Even between statements could be a problem.
The number of places that test XLogArchivingActive() is fairly small and
infrequently executed, so it would be OK to check a shared memory value
at those points and retain the setting for the rest of the transaction.
Anyway, I think this is worth fixing before release but it clearly isn't
worth attempting to rush a patch in the next few hours. I don't think
we'll find anyone who is happy with making it a restart-required option.
Simon Riggs www.2ndQuadrant.com
PostgreSQL Training, Services and Support
|Next Message||Aidan Van Dyk||2008-10-31 19:11:48||Re: Decreasing WAL size effects|
|Previous Message||Emmanuel Cecchet||2008-10-31 18:42:00||Re: Fwd: [PATCHES] Auto Partitioning Patch - WIP version 1|