Re: Reporting the commit LSN at commit time - Mailing list pgsql-hackers

From Craig Ringer
Subject Re: Reporting the commit LSN at commit time
Date
Msg-id 53E6C1F2.2050801@2ndquadrant.com
Whole thread Raw
In response to Re: Reporting the commit LSN at commit time  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: Reporting the commit LSN at commit time
List pgsql-hackers
On 08/10/2014 12:54 AM, Andres Freund wrote:
> On 2014-08-07 21:02:54 -0400, Tom Lane wrote:
>> Craig Ringer <craig@2ndquadrant.com> writes:
>>> On 08/08/2014 03:54 AM, Tom Lane wrote:
>>>> FWIW, I think it's a seriously bad idea to expose LSNs in the protocol
>>>> at all.   What happens five years from now when we switch to some other
>>>> implementation that doesn't have LSNs?
>>
>>> Everyone who's relying on them already via pg_stat_replication, etc, breaks.
>>> They're _already_ exposed to users. That ship has sailed.
>>
>> They're exposed to replication tools, yeah, but embedding them in the
>> wire protocol would be moving the goalposts a long way past that.  As an
>> example of something that doubtless seemed like a good idea at the time,
>> consider the business about how an INSERT command completion tag includes
>> the OID of the inserted row.  We're stuck with that obsolete idea
>> *forever* because it's embedded in the protocol for all clients.
> 
> I don't think we really need to embed it at that level. And it doesn't
> have to be always on - only clients that ask for it need to get the
> answer. Something like COMMIT WITH (report_commit_lsn ON); or similar
> might do the trick?

Wouldn't that force client drivers - libpq, psqlODBC, PgJDBC, etc - to
all watch for explicit "COMMIT"s sent by the application and rewrite them?

Applications could also then request the commit option via a driver that
couldn't cope with it - which I think was one of Tom's concerns re using
a GUC, too.

-- Craig Ringer                   http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services



pgsql-hackers by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: B-Tree support function number 3 (strxfrm() optimization)
Next
From: Amit Kapila
Date:
Subject: Re: postgresql.auto.conf and reload