|From:||Bruce Momjian <bruce(at)momjian(dot)us>|
|To:||konstantin knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru>|
|Cc:||Greg Stark <stark(at)mit(dot)edu>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>|
|Subject:||Re: AS OF queries|
|Views:||Raw Message | Whole Thread | Download mbox | Resend email|
On Sat, Dec 23, 2017 at 11:53:19PM +0300, konstantin knizhnik wrote:
> On Dec 23, 2017, at 2:08 AM, Greg Stark wrote:
> > On 20 December 2017 at 12:45, Konstantin Knizhnik
> > <k(dot)knizhnik(at)postgrespro(dot)ru> wrote:
> >> It seems to me that it will be not so difficult to implement them in
> >> Postgres - we already have versions of tuples.
> >> Looks like we only need to do three things:
> >> 1. Disable autovacuum (autovacuum = off)
> > "The Wheel of Time turns, and Ages come and pass, leaving memories
> > that become legend. Legend fades to myth, and even myth is long
> > forgotten when the Age that gave it birth comes again"
> > I think you'll find it a lot harder to get this to work than just
> > disabling autovacuum. Notably HOT updates can get cleaned up (and even
> > non-HOT updates can now leave tombstone dead line pointers iirc) even
> > if vacuum hasn't run.
> Yeh, I suspected that just disabling autovacuum was not enough.
> I heard (but do no know too much) about microvacuum and hot updates.
> This is why I was a little bit surprised when me test didn't show lost of updated versions.
> May be it is because of vacuum_defer_cleanup_age.
Well vacuum and single-page pruning do 3 things:
1. remove expired updated rows
2. remove deleted row
3. remove rows from aborted transactions
While time travel doesn't want #1 and #2, it probably wants #3.
+ As you are, so once was I. As I am, so you will be. +
+ Ancient Roman grave inscription +
|Next Message||Michael Paquier||2018-01-26 00:56:52||Re: [HACKERS] GnuTLS support|
|Previous Message||Vik Fearing||2018-01-26 00:44:12||Re: PATCH: psql tab completion for SELECT|