Relative path specified for data_directory is not working as expected

Поиск
Список
Период
Сортировка
От Eduard-Cristian Stefan
Тема Relative path specified for data_directory is not working as expected
Дата
Msg-id 4E0356FE.3010207@gmail.com
обсуждение исходный текст
Ответы Re: Relative path specified for data_directory is not working as expected  (Reid Thompson <Reid.Thompson@ateb.com>)
Список pgsql-general
I have PostgreSQL 9.0.4-1 running as a service on Windows XP Home Edition,
with the command line of the service being:

     D:\me\usr\PostgreSQL\bin/pg_ctl.exe runservice -N "pgsql" -D "d:/me/etc/PostgreSQL"

In the postgresql.conf file I have the following settings:

     data_directory = '../../data/PostgreSQL'
     external_pid_file = '../../var/run/PostgreSQL.pid'
     log_directory = '../../var/log/PostgreSQL'

In this configuration the PostgreSQL service fails to start with the message:

     FATAL:  data directory "C:/WINDOWS/system32/../../data/PostgreSQL" does not exist

If using an absolute path for data_directory like this:

   data_directory = 'd:/me/data/PostgreSQL'

then the service starts ok, with the curent directory of pg_ctl.exe
being C:\WINDOWS\system32\, while the pid file and the logs
are set to the desired location.

I can confirm this behavior by running postgres.exe from the console,
and for relative paths the data_directory is relative to the current folder
from where postgres.exe is launched, and both external_pid_file and log_directory
are relative to the directory specified with the -D option of the command line.

For the record, there is no PGDATA environment variable defined.

Have a nice day,
   Eduard

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

Предыдущее
От: hernan gonzalez
Дата:
Сообщение: to_timestamp() and timestamp without time zone
Следующее
От: Reid Thompson
Дата:
Сообщение: Re: Relative path specified for data_directory is not working as expected