Re: Incorrect fsync handling in pg_basebackup's tar_finish

2018-06-25 Thread Michael Paquier
On Mon, Jun 25, 2018 at 07:21:27PM +0530, Kuntal Ghosh wrote: > I've also verified the same. The patch looks good to me. Thanks for confirming. I have pushed the fix down to 10. -- Michael signature.asc Description: PGP signature

Re: Incorrect fsync handling in pg_basebackup's tar_finish

2018-06-25 Thread Kuntal Ghosh
On Mon, Jun 25, 2018 at 6:47 PM, Michael Paquier wrote: > Yes, there is a second one. I just looked at walmethods.c and I did not > spot any other issues. What do you think about the updated version > attached? > -- I've also verified the same. The patch looks good to me. -- Thanks & Regards,

Re: Incorrect fsync handling in pg_basebackup's tar_finish

2018-06-25 Thread Michael Paquier
On Mon, Jun 25, 2018 at 05:48:54PM +0530, Kuntal Ghosh wrote: > In the same note, in tar_close(), we fsync on close. We're not > checking the status of fsync there. Should we introduce the same check > there as well? Yes, there is a second one. I just looked at walmethods.c and I did not spot any

Re: Incorrect fsync handling in pg_basebackup's tar_finish

2018-06-25 Thread Kuntal Ghosh
On Mon, Jun 25, 2018 at 2:27 PM, Magnus Hagander wrote: > > > On Mon, Jun 25, 2018 at 4:43 AM, Michael Paquier > wrote: >> >> Hi all, >> >> I was just looking at the code of pg_basebackup, and noticed that we >> don't actually check if the two last empty blocks of any tar file >> produced are cor

Re: Incorrect fsync handling in pg_basebackup's tar_finish

2018-06-25 Thread Magnus Hagander
On Mon, Jun 25, 2018 at 4:43 AM, Michael Paquier wrote: > Hi all, > > I was just looking at the code of pg_basebackup, and noticed that we > don't actually check if the two last empty blocks of any tar file > produced are correctly fsync'd or not: > @@ -957,7 +957,10 @@ tar_finish(void) > > /* s

Incorrect fsync handling in pg_basebackup's tar_finish

2018-06-24 Thread Michael Paquier
Hi all, I was just looking at the code of pg_basebackup, and noticed that we don't actually check if the two last empty blocks of any tar file produced are correctly fsync'd or not: @@ -957,7 +957,10 @@ tar_finish(void) /* sync the empty blocks as well, since they're after the last file */ if (