On Tue, Apr 5, 2016 at 1:03 AM, Aleksander Alekseev <a.aleks...@postgrespro.ru> wrote: > There is weird peace of code in reorderbuffer.c: > > ``` > /* delete from list of known subxacts */ > if (txn->is_known_as_subxact) > { > /* NB: nsubxacts count of parent will be too high now */ > dlist_delete(&txn->node); > } > /* delete from LSN ordered list of toplevel TXNs */ > else > { > dlist_delete(&txn->node); > } > ``` > > As you see `if` an `else` branches are exactly the same. I wonder > whether this is a bug or code just requires a bit of cleaning. In the > latter case here is a patch. > > According to `git log` both branches were introduced in one commit > b89e1510. I added author and committer of this code to CC since they > have much better understanding of it than I do.
I recall discussing this code with Andres, and I think that he has mentioned me this is intentional, because should things be changed for a reason or another in the future, we want to keep in mind that a list of TXIDs and a list of sub-TXIDs should be handled differently. -- Michael -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers