From: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
---|---|
To: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com> |
Cc: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: pg_basebackup, pg_receivexlog and data durability (was: silent data loss with ext4 / all current versions) |
Date: | 2016-09-29 21:43:42 |
Message-ID: | CAB7nPqSENY_aPF21z-kg8_of=BZ2kFTj9+p+EsNJLzT=OMzxdQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, Sep 30, 2016 at 1:31 AM, Jeff Janes <jeff(dot)janes(at)gmail(dot)com> wrote:
> On Thu, Sep 29, 2016 at 8:33 AM, Peter Eisentraut
> <peter(dot)eisentraut(at)2ndquadrant(dot)com> wrote:
>>
>> On 9/26/16 10:34 PM, Michael Paquier wrote:
>> > I thought that as long as the error string is shown to the user, it
>> > does not matter much if errno is still saved or not. All the callers
>> > of durable_rename() on frontends don't check for strerrno(errno)
>> > afterwards. Do you think it matters? Changing that back is trivial.
>> > Sorry for not mentioning directly in the thread that I modified that
>> > when dropping the last patch set.
>>
>> Actually, I think the equivalent backend code only does this to save the
>> errno across the close call because the elog call comes after the close.
>> So it's OK to not do that in the frontend.
>>
>> With that in mind, I have committed the v3 series now.
Thanks!
> I'm getting compiler warnings:
>
> file_utils.c: In function 'fsync_pgdata':
> file_utils.c:86: warning: passing argument 2 of 'walkdir' from incompatible
> pointer type
> file_utils.c:36: note: expected 'int (*)(const char *, bool, const char *)'
> but argument is of type 'void (*)(const char *, bool, const char *)'
> file_utils.c:88: warning: passing argument 2 of 'walkdir' from incompatible
> pointer type
> file_utils.c:36: note: expected 'int (*)(const char *, bool, const char *)'
> but argument is of type 'void (*)(const char *, bool, const char *)'
> file_utils.c:89: warning: passing argument 2 of 'walkdir' from incompatible
> pointer type
> file_utils.c:36: note: expected 'int (*)(const char *, bool, const char *)'
> but argument is of type 'void (*)(const char *, bool, const char *)'
Oops. Are you using gcc to see that? I compiled with clang and on
Windows without noticing it.
--
Michael
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2016-09-29 21:48:30 | Re: [GENERAL] pg_upgrade from 9.5 to 9.6 fails with "invalid argument" |
Previous Message | Alvaro Herrera | 2016-09-29 21:40:15 | Re: [HACKERS] pg_upgrade from 9.5 to 9.6 fails with "invalid argument" |