Fujii Masao wrote:
> *** a/src/backend/replication/walsender.c
> --- b/src/backend/replication/walsender.c
> ***************
> *** 661,666 **** XLogSend(StringInfo outMsg)
> --- 661,673 ----
>   
>               sentPtr = endptr;
>   
> +             if (sentPtr.xrecoff >= XLogFileSize)
> +             {
> +                     /* crossing a logid boundary */
> +                     sentPtr.xlogid += 1;
> +                     sentPtr.xrecoff = 0;
> +             }
> + 
>               /*
>                * Read the log directly into the output buffer to prevent
>                * extra memcpy calls.
> 

Before that, endptr is advanced using XLByteAdvance() macro, which does
handle xlogid boundaries. Is XLByteAdvance() broken?

-- 
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to