From: | Marko Tiikkaja <marko(at)joh(dot)to> |
---|---|
To: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
Cc: | PostgreSQL mailing lists <pgsql-bugs(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Subject: | Re: BUG #14830: Missed NOTIFications, PostgreSQL 9.1.24 |
Date: | 2017-10-10 12:39:49 |
Message-ID: | CAL9smLAQOMNzREjJy-M8kpqGOGYdub3wD1uPb38xeHHRN=TTZA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
So I managed to accidentally kill and/or restart both servers while trying
to install debug symbols, but I'm doing a new run now and I noticed
something interesting: the listening backend's RecentXmin doesn't seem to
ever go forward. By my reading of this code, that would mean trouble for
this piece of code in TransactionIdIsInProgress:
if (TransactionIdPrecedes(xid, RecentXmin))
return false;
Is this not an obvious bug? async.c would think the transaction is not
running, and did not commit -> throw away the notification. That would
also explain why it takes days for this to happen (since we need to run
through enough xids to wrap around).
.m
From | Date | Subject | |
---|---|---|---|
Next Message | Petr Jelinek | 2017-10-10 13:25:14 | Re: 10.0: Logical replication doesn't execute BEFORE UPDATE OF <columns> trigger |
Previous Message | Giovanni Pisante | Danysoft | 2017-10-10 11:22:56 | Re: please quote POSTGRESQL |