Re: [bugfix] commit timestamps ERROR on lookup of FrozenTransactionId
От | Alvaro Herrera |
---|---|
Тема | Re: [bugfix] commit timestamps ERROR on lookup of FrozenTransactionId |
Дата | |
Msg-id | 20161124133057.2phiorqa4h7ikxje@alvherre.pgsql обсуждение исходный текст |
Ответ на | Re: [bugfix] commit timestamps ERROR on lookup of FrozenTransactionId (Craig Ringer <craig@2ndquadrant.com>) |
Ответы |
Re: [bugfix] commit timestamps ERROR on lookup of FrozenTransactionId
|
Список | pgsql-hackers |
I considered the argument here for a bit and I think Craig is right -- FrozenXid eventually makes it to a tuple's xmin where it becomes a burden to the caller, making our interface bug-prone -- sure you can special-case it, but you don't until it first happens ... and it may not until you're deep into production. Even the code comment is confused: "error if the given Xid doesn't normally commit". But surely FrozenXid *does* commit in the sense that it appears in committed tuples' Xmin. We already have a good mechanism for replying to the query with "this value is too old for us to have its commit TS", which is a false return value. We should use that. I think not backpatching is worse, because then users have to be aware that they need to handle the FrozenXid case specially, but only on 9.5/9.6 ... I think the reason it took this long to pop up is because it has taken this long to get to replication systems on which this issue matters. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
В списке pgsql-hackers по дате отправления: