Обсуждение: FATAL: invalid value for parameter "wal_sync_method": "open_datasync"

Поиск
Список
Период
Сортировка

FATAL: invalid value for parameter "wal_sync_method": "open_datasync"

От
Francesco Dalla Ca'
Дата:
O.S.:
SuSE SLES-8 (i386)
VERSION = 8.1

After some test with the "syncbench" posted on performance mailing-list
(http://archives.postgresql.org/pgsql-performance/2004-09/msg00080.php)
i have obtained that open() with O_DSYNC was the fastest sync method.
I want to test this for parameter "wal_sync_method" on a test workload
directly on Postgres and i have configured that on postgresql.conf file:

wal_sync_method = open_datasync

But at the server start:

 > pg_ctl -D /db10/postgres/data start
postmaster starting
 > FATAL:  invalid value for parameter "wal_sync_method": "open_datasync"

What's wrong?

Best regards.

Re: FATAL: invalid value for parameter "wal_sync_method":

От
Scott Marlowe
Дата:
On Thu, 2005-06-16 at 09:35, Francesco Dalla Ca' wrote:
> O.S.:
> SuSE SLES-8 (i386)
> VERSION = 8.1
>
> After some test with the "syncbench" posted on performance mailing-list
> (http://archives.postgresql.org/pgsql-performance/2004-09/msg00080.php)
> i have obtained that open() with O_DSYNC was the fastest sync method.
> I want to test this for parameter "wal_sync_method" on a test workload
> directly on Postgres and i have configured that on postgresql.conf file:
>
> wal_sync_method = open_datasync
>
> But at the server start:
>
>  > pg_ctl -D /db10/postgres/data start
> postmaster starting
>  > FATAL:  invalid value for parameter "wal_sync_method": "open_datasync"
>
> What's wrong?

Not all methods are supported on all platforms.  It appears this one
isn't supported on yours.

---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend


Re: FATAL: invalid value for parameter "wal_sync_method":

От
Francesco Dalla Ca'
Дата:
This mean that method isn't supported by postgres on my platform?
Must i give some extra options at build time?
(i use postgresql 8.0.2 sources)

The test "syncbench" that i run on this server with the "open(O_DSYNC)"
method, give me results without problems.

Thanks and best regards.


Scott Marlowe wrote:

>On Thu, 2005-06-16 at 09:35, Francesco Dalla Ca' wrote:
>
>
>>O.S.:
>>SuSE SLES-8 (i386)
>>VERSION = 8.1
>>
>>After some test with the "syncbench" posted on performance mailing-list
>>(http://archives.postgresql.org/pgsql-performance/2004-09/msg00080.php)
>>i have obtained that open() with O_DSYNC was the fastest sync method.
>>I want to test this for parameter "wal_sync_method" on a test workload
>>directly on Postgres and i have configured that on postgresql.conf file:
>>
>>wal_sync_method = open_datasync
>>
>>But at the server start:
>>
>> > pg_ctl -D /db10/postgres/data start
>>postmaster starting
>> > FATAL:  invalid value for parameter "wal_sync_method": "open_datasync"
>>
>>What's wrong?
>>
>>
>
>Not all methods are supported on all platforms.  It appears this one
>isn't supported on yours.
>
>
>

Re: FATAL: invalid value for parameter "wal_sync_method":

От
Bruce Momjian
Дата:
Francesco Dalla Ca' wrote:
> This mean that method isn't supported by postgres on my platform?
> Must i give some extra options at build time?
> (i use postgresql 8.0.2 sources)
>
> The test "syncbench" that i run on this server with the "open(O_DSYNC)"
> method, give me results without problems.

Here is our test code for 8.0.2:

    #if defined(O_SYNC)
    #define OPEN_SYNC_FLAG     O_SYNC
    #else
    #if defined(O_FSYNC)
    #define OPEN_SYNC_FLAG    O_FSYNC
    #endif
    #endif

    #if defined(O_DSYNC)
    #if defined(OPEN_SYNC_FLAG)
    #if O_DSYNC != OPEN_SYNC_FLAG
    #define OPEN_DATASYNC_FLAG    O_DSYNC
    #endif
    #else /* !defined(OPEN_SYNC_FLAG) */
    /* Win32 only has O_DSYNC */
    #define OPEN_DATASYNC_FLAG    O_DSYNC
    #endif
    #endif

Is your O_DSYNC the same #define value as O_SYNC or if that isn't
defined, O_FSYNC?  If so, you don't really have O_DSYNC as unique from
O_SYNC, and we will not support "open_datasync".

---------------------------------------------------------------------------

>
> Thanks and best regards.
>
>
> Scott Marlowe wrote:
>
> >On Thu, 2005-06-16 at 09:35, Francesco Dalla Ca' wrote:
> >
> >
> >>O.S.:
> >>SuSE SLES-8 (i386)
> >>VERSION = 8.1
> >>
> >>After some test with the "syncbench" posted on performance mailing-list
> >>(http://archives.postgresql.org/pgsql-performance/2004-09/msg00080.php)
> >>i have obtained that open() with O_DSYNC was the fastest sync method.
> >>I want to test this for parameter "wal_sync_method" on a test workload
> >>directly on Postgres and i have configured that on postgresql.conf file:
> >>
> >>wal_sync_method = open_datasync
> >>
> >>But at the server start:
> >>
> >> > pg_ctl -D /db10/postgres/data start
> >>postmaster starting
> >> > FATAL:  invalid value for parameter "wal_sync_method": "open_datasync"
> >>
> >>What's wrong?
> >>
> >>
> >
> >Not all methods are supported on all platforms.  It appears this one
> >isn't supported on yours.
> >
> >
> >
>
> ---------------------------(end of broadcast)---------------------------
> TIP 7: don't forget to increase your free space map settings
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Re: FATAL: invalid value for parameter "wal_sync_method":

От
Scott Marlowe
Дата:
On Thu, 2005-06-16 at 09:35, Francesco Dalla Ca' wrote:
> O.S.:
> SuSE SLES-8 (i386)
> VERSION = 8.1
>
> After some test with the "syncbench" posted on performance mailing-list
> (http://archives.postgresql.org/pgsql-performance/2004-09/msg00080.php)
> i have obtained that open() with O_DSYNC was the fastest sync method.
> I want to test this for parameter "wal_sync_method" on a test workload
> directly on Postgres and i have configured that on postgresql.conf file:
>
> wal_sync_method = open_datasync
>
> But at the server start:
>
>  > pg_ctl -D /db10/postgres/data start
> postmaster starting
>  > FATAL:  invalid value for parameter "wal_sync_method": "open_datasync"
>
> What's wrong?

Not all methods are supported on all platforms.  It appears this one
isn't supported on yours.

---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend