From: | Andres Freund <andres(at)2ndquadrant(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Serge Negodyuck <petr(at)petrovich(dot)kiev(dot)ua>, pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #8673: Could not open file "pg_multixact/members/xxxx" on slave during hot_standby |
Date: | 2014-06-06 17:16:56 |
Message-ID: | 20140606171656.GF10482@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs pgsql-hackers |
On 2014-06-06 13:04:29 -0400, Tom Lane wrote:
> Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> writes:
> > After some simplification I think it should be clearer. Thanks Andres
> > for commenting offlist.
>
> I find this not only unreadable but a bit scary:
>
> ! if (offset + MAX_MEMBERS_IN_LAST_MEMBERS_PAGE < offset)
>
> I'm worried whether some compilers might not decide that that's a
> can't-happen situation, and optimize the test away entirely.
offset is a (via typedefs) uint32 and unsigned overflow is defined in
the C standard, so that shouldn't be a allowed optimization. Don't we
already have a fair amount of similar tests around? Around TransactionId
wraparound for exzmple:
xidWrapLimit = oldest_datfrozenxid + (MaxTransactionId >> 1);
if (xidWrapLimit < FirstNormalTransactionId)
xidWrapLimit += FirstNormalTransactionId;
and similar things.
Greetings,
Andres Freund
--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2014-06-06 18:08:26 | Re: BUG #8673: Could not open file "pg_multixact/members/xxxx" on slave during hot_standby |
Previous Message | Tom Lane | 2014-06-06 17:04:29 | Re: BUG #8673: Could not open file "pg_multixact/members/xxxx" on slave during hot_standby |
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2014-06-06 17:18:24 | Re: Re: popen and pclose redefinitions causing many warning in Windows build |
Previous Message | Fujii Masao | 2014-06-06 17:14:09 | Re: pg_receivexlog add synchronous mode |