Re: WAL recycling, Linux 2.4.18

Поиск
Список
Период
Сортировка
От Doug Fields
Тема Re: WAL recycling, Linux 2.4.18
Дата
Msg-id 5.1.0.14.2.20020708153345.02e5c600@pop.pexicom.com
обсуждение исходный текст
Ответ на WAL recycling, ext3, Linux 2.4.18  (Doug Fields <dfields-pg-general@pexicom.com>)
Ответы Re: WAL recycling, Linux 2.4.18  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
At 03:26 PM 7/8/2002, Tom Lane wrote:
>Doug Fields <dfields-pg-general@pexicom.com> writes:
> > (gdb) where
> > #0  0x4028299d in fdatasync () from /lib/libc.so.6
> > #1  0x081049ae in pg_fdatasync (fd=53) at fd.c:233
> > #2  0x08088276 in issue_xlog_fsync () at xlog.c:3367
>
>Hmm.  That leads to a different line of thought about where the problem
>is.  Does the problem go away if you turn off fsync, or select a
>wal_sync_method other than fdatasync?  (See postgresql.conf; not sure
>if you need a postmaster restart or just SIGHUP to change these.)

Interestingly enough, I was just testing that (the fsync off part).

FSYNC=OFF results:

I just turned fsync=off and completely restarted the postmaster (always
figure that's the safest thing to do).

What a difference. My checkpoints are just as long - they still take quite
a bit of time to process and do a lot of "blocks out" on the vmstat - but
queries now longer block waiting for them to finish.

Now, of course, the question becomes, with FSYNC=ON still enabled, which
WAL_SYNC_METHOD works best. As you note, fdatasync is the default. Let me
play some more...

FSYNC=ON results:

WAL_SYNC_METHOD settings:

FDATASYNC - problem exists (the original problem)

OPEN_SYNC - problem persists (same problem; things pile up behind a checkpoint)

OPEN_DATASYNC - gives runtime error: FATAL 1:  invalid value for option
'WAL_SYNC_METHOD': 'OPEN_DATASYNC' and refuses to start

FSYNCA - gives runtime error: FATAL 1:  invalid value for option
'WAL_SYNC_METHOD': 'FSYNCA'
and refuses to start

These last two are obviously not compiled into the backend by default on
Debian. Of note, in the fdatasync() man page:        Currently (Linux 2.2)
fdatasync is equivalent to fsync.

Additional thoughts?

Thanks,

Doug





В списке pgsql-general по дате отправления:

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: Null in the where-clause
Следующее
От: David Busby
Дата:
Сообщение: Creating a Function with C that returns bytea