From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | Andres Freund <andres(at)2ndquadrant(dot)com> |
Cc: | "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: removing volatile qualifiers from lwlock.c |
Date: | 2014-09-19 17:58:17 |
Message-ID: | CA+TgmoYmrmhOwZVBqpq9YLKKExRks4EOk_aFjP1UvgD7EE_fDw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, Sep 17, 2014 at 7:45 AM, Andres Freund <andres(at)2ndquadrant(dot)com> wrote:
> I just tried this on my normal x86 workstation. I applied your lwlock
> patch and ontop I removed most volatiles (there's a couple still
> required) from xlog.c. Works for 100 seconds. Then I reverted the above
> commits. Breaks within seconds:
> master:
> LOG: request to flush past end of generated WAL; request 2/E5EC3DE0, currpos 2/E5EC1E60
> standby:
> LOG: record with incorrect prev-link 4/684C3108 at 4/684C3108
> and similar.
>
> So at least for x86 the compiler barriers are obviously required and
> seemingly working.
Oh, that's great. In that case I think I should go ahead and apply
that patch in the hopes of turning up any systems where the barriers
aren't working properly yet. Although it would be nice to know
whether it breaks with *only* the lwlock.c patch.
> I've attached the very quickly written xlog.c de-volatizing patch.
I don't have time to go through this in detail, but I don't object to
you applying it if you're confident you've done it carefully enough.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Gierth | 2014-09-19 18:04:11 | Re: Final Patch for GROUPING SETS |
Previous Message | Michael Paquier | 2014-09-19 17:57:44 | Re: CreateEventTrigStmt copy fix |