Re: track_commit_timestamp and COMMIT PREPARED
От | Robert Haas |
---|---|
Тема | Re: track_commit_timestamp and COMMIT PREPARED |
Дата | |
Msg-id | CA+TgmoZSRKP3RhmoK870CzBZjKfysfSOHR7++4+P8tEjMJn9Sg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: track_commit_timestamp and COMMIT PREPARED (Fujii Masao <masao.fujii@gmail.com>) |
Ответы |
Re: track_commit_timestamp and COMMIT PREPARED
|
Список | pgsql-hackers |
On Fri, Sep 18, 2015 at 12:53 AM, Fujii Masao <masao.fujii@gmail.com> wrote: > On Sat, Sep 5, 2015 at 7:48 PM, Petr Jelinek <petr@2ndquadrant.com> wrote: >> On 2015-09-02 16:14, Fujii Masao wrote: >>> >>> On Wed, Aug 5, 2015 at 2:16 AM, Robert Haas <robertmhaas@gmail.com> wrote: >>>> >>>> On Mon, Aug 3, 2015 at 10:31 AM, Fujii Masao <masao.fujii@gmail.com> >>>> wrote: >>>>> >>>>> track_commit_timestamp tracks COMMIT PREPARED as expected in standby >>>>> server, >>>>> but not in master server. Is this intentional? It should track COMMIT >>>>> PREPARED >>>>> even in master? Otherwise, we cannot use commit_timestamp feature to >>>>> check >>>>> the replication lag properly while we use 2PC. >>>> >>>> >>>> That sounds like it must be a bug. I think you should add it to the >>>> open items list. >>> >>> >> >> Attached fixes this. It includes advancement of replication origin as well. >> I didn't feel like doing refactor of commit code this late in 9.5 cycle >> though, so I went with the code duplication + note in xact.c. > > Agreed. We can refactor the code later if needed. > > The patch looks good to me except the following minor points. > > * or not. Normal path through RecordTransactionCommit() will be related > * to a transaction commit XLog record, and so should pass "false" here. > > The above source comment of TransactionTreeSetCommitTsData() seems to > need to be updated. > > + * Note: if you change this functions you should also look at > + * RecordTransactionCommitPrepared in twophase.c. > > Typo: "this functions" should be "this function" > > + if (replorigin_sesssion_origin == InvalidRepOriginId || > > This is not the problem of the patch, but I started wondering what > "sesssion" in the variable name "replorigin_sesssion_origin" means. > Is it just a typo and it should be "session"? Or it's the abbreviation > of something? This should go in before beta. Is someone updating the patch? -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: