|From:||Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>|
|Cc:||david(at)pgmasters(dot)net, hlinnaka(at)iki(dot)fi, alvherre(at)2ndquadrant(dot)com, simon(at)2ndquadrant(dot)com, tgl(at)sss(dot)pgh(dot)pa(dot)us, andres(at)anarazel(dot)de, masao(dot)fujii(at)gmail(dot)com, kleptog(at)svana(dot)org, pgsql-hackers(at)postgresql(dot)org|
|Subject:||Re: WAL logging problem in 9.4.3?|
|Views:||Raw Message | Whole Thread | Download mbox | Resend email|
At Thu, 29 Sep 2016 16:59:55 +0900, Michael Paquier <michael(dot)paquier(at)gmail(dot)com> wrote in <CAB7nPqT5x05tG7aut1yz+WJN76DqNz1Jzq46fSFtee4YbY0YcA(at)mail(dot)gmail(dot)com>
> On Mon, Sep 26, 2016 at 5:03 PM, Kyotaro HORIGUCHI
> <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp> wrote:
> > Hello, I return to this before my things:)
> > Though I haven't played with the patch yet..
> Be sure to run the test cases in the patch or base your tests on them then!
All items of 006_truncate_opt fail on ed0b228 and they are fixed
with the patch.
> > Though I don't know how it actually impacts the perfomance, it
> > seems to me that we can live with truncated_to and sync_above in
> > RelationData and BufferNeedsWAL(rel, buf) instead of
> > HeapNeedsWAL(rel, buf). Anyway up to one entry for one relation
> > seems to exist at once in the hash.
> TBH, I still think that the design of this patch as proposed is pretty
> cool and easy to follow.
It is clean from certain viewpoint but additional hash,
especially hash-searching on every HeapNeedsWAL seems to me to be
unacceptable. Do you see it accetable?
The attached patch is quiiiccck-and-dirty-hack of Michael's patch
just as a PoC of my proposal quoted above. This also passes the
006 test. The major changes are the following.
- Moved sync_above and truncted_to into RelationData.
- Cleaning up is done in AtEOXact_cleanup instead of explicit
calling to smgrDoPendingSyncs().
* BufferNeedsWAL (replace of HeapNeedsWAL) no longer requires
hash_search. It just refers to the additional members in the
X I feel that I have dropped one of the features of the origitnal
patch during the hack, but I don't recall it clearly now:(
X I haven't consider relfilenode replacement, which didn't matter
for the original patch. (but there's few places to consider).
What do you think about this?
NTT Open Source Software Center
|Next Message||郭 勇||2016-09-29 13:12:59||postgresql infinite loop|
|Previous Message||Etsuro Fujita||2016-09-29 12:51:58||Re: postgres_fdw : altering foreign table not invalidating prepare statement execution plan.|