Thread

Commits

  1. Use pg_pwrite() in pg_test_fsync.

  1. Use pg_pwrite() in pg_test_fsync

    Thomas Munro <thomas.munro@gmail.com> — 2021-01-09T20:21:59Z

    Hi,
    
    Since pg_test_fsync is supposed to simulate some aspects of
    PostgreSQL's wal_sync_method settings, I think it should be updated to
    use the same system calls (which changed in v12).  That's mostly on
    principle, though in practice, on one system I've managed to see a
    small measurable difference.
    
    I left the fsync-after-closing and non-sync'd tests using write(),
    because they weren't using lseek().  The latter case is arguably a bit
    odd because it's not overwriting pre-allocated blocks, unlike the
    earlier tests.
    
  2. Re: Use pg_pwrite() in pg_test_fsync

    Thomas Munro <thomas.munro@gmail.com> — 2021-01-24T00:50:08Z

    On Sun, Jan 10, 2021 at 9:21 AM Thomas Munro <thomas.munro@gmail.com> wrote:
    > I left the fsync-after-closing and non-sync'd tests using write(),
    > because they weren't using lseek().  The latter case is arguably a bit
    > odd because it's not overwriting pre-allocated blocks, unlike the
    > earlier tests.
    
    On closer inspection, the weird thing about that final test is that
    it's opening and closing the file every time.  That doesn't seem to
    make any sense.  Perhaps it's a copy and paste error from the previous
    test?  In v2 I changed it to pg_pwrite(), and moved the open and close
    calls out of the loop.
    
  3. Re: Use pg_pwrite() in pg_test_fsync

    Thomas Munro <thomas.munro@gmail.com> — 2021-02-15T02:24:25Z

    On Sun, Jan 24, 2021 at 1:50 PM Thomas Munro <thomas.munro@gmail.com> wrote:
    > On Sun, Jan 10, 2021 at 9:21 AM Thomas Munro <thomas.munro@gmail.com> wrote:
    > > I left the fsync-after-closing and non-sync'd tests using write(),
    > > because they weren't using lseek().  The latter case is arguably a bit
    > > odd because it's not overwriting pre-allocated blocks, unlike the
    > > earlier tests.
    >
    > On closer inspection, the weird thing about that final test is that
    > it's opening and closing the file every time.  That doesn't seem to
    > make any sense.  Perhaps it's a copy and paste error from the previous
    > test?  In v2 I changed it to pg_pwrite(), and moved the open and close
    > calls out of the loop.
    
    Pushed.