On Wed, Sep 8, 2010 at 8:43 PM, Robert Haas <robertmhaas@gmail.com> wrote:
> I still don't see why it matters whether you wait before or after
> releasing locks. As soon as the transaction is marked committed in
> CLOG, other transactions can potentially see its effects.
AFAIR, even if CLOG has been updated, until the transaction is marked
as no longer running in PGPROC, probably other transactions cannot
see its effects. But, if it's not true, I'd make the transaction wait
for replication before CLOG update.
> And in any event, there is ALWAYS a window of
> time during which the client doesn't know the transaction has
> committed but other transactions can potentially see its effects.
Yep. The problem here is that synchronous replication is likely to
make the window very big.
Regards,
--
Fujii Masao
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center