> > IMO the code is wrong. There should be a single block comment
> > saying something like "Remove the node from its containing list.
> > In the FOO case, the list corresponds to BAR and therefore we
> > delete it because BAZ. In the QUUX case the list is PLUGH and we
> > delete in because THUD." Then a single line dlist_delete(...)
> > follows.
> >
> > The current arrangement looks bizantine to me, for no reason. If we
> > think that one of the two branches might do something additional to
> > the list deletion, surely that will be in a separate stanza with
> > its own comment; and if we ever want to remove the list deletion
> > from one of the two cases (something that strikes me as unlikely)
> > then we will need to fix the comment, too.
>
> +1 to everything here except for the way byzantine is spelled.
>
+1 and yet another patch.
--
Best regards,
Aleksander Alekseev
http://eax.me/
diff --git a/src/backend/replication/logical/reorderbuffer.c b/src/backend/replication/logical/reorderbuffer.c
index 52c6986..360e6fd 100644
--- a/src/backend/replication/logical/reorderbuffer.c
+++ b/src/backend/replication/logical/reorderbuffer.c
@@ -1159,17 +1159,17 @@ ReorderBufferCleanupTXN(ReorderBuffer *rb, ReorderBufferTXN *txn)
txn->base_snapshot_lsn = InvalidXLogRecPtr;
}
- /* 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);
- }
+ /*
+ * Remove TXN from its containing list. Note that following line covers
+ * two cases.
+ *
+ * If TXN is a subxact we delete it from list of known subxacts. NB:
+ * nsubxacts count of parent becomes too high in this case.
+ *
+ * Otherwise we delete TXN from ordered list of toplevel TXNs.
+ *
+ */
+ dlist_delete(&txn->node);
/* now remove reference from buffer */
hash_search(rb->by_txn,
--
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers