Re: Missing break in RelationFindReplTupleSeq

Alvaro Herrera <alvherre@2ndquadrant.com>

From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Konstantin Knizhnik <k.knizhnik@postgrespro.ru>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2020-01-31T13:58:31Z
Lists: pgsql-hackers

Attachments

On 2020-Jan-31, Konstantin Knizhnik wrote:

> Eventually we find out that logical replication in the current version of
> Postgres works significantly slower on table with replica identity full than
> old pglogical implementation.
> 
> The comment to RelationFindReplTupleSeq says:
> 
>     Note that this stops on the first matching tuple.
> 
> But actually this function continue traversal until end of the table even if
> tuple was found.
> I wonder if break; should be added to the end of for loop.

Wow, you're right, and the "break" is missing there.  I propose it like
this.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Commits

  1. Add missing break out seqscan loop in logical replication