Re: 8.3 .4 + Vista + MingW + initdb = ACCESS_DENIED

Поиск
Список
Период
Сортировка
От Andrew Dunstan
Тема Re: 8.3 .4 + Vista + MingW + initdb = ACCESS_DENIED
Дата
Msg-id 48F61F2C.7030306@dunslane.net
обсуждение исходный текст
Ответ на Re: 8.3 .4 + Vista + MingW + initdb = ACCESS_DENIED  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-hackers

Alvaro Herrera wrote:
> Andrew Dunstan wrote:
>
>   
>> I have verified that it does indeed work. Underneath the hood it uses  
>> the native call LockFileEx() see win32io.c in Perl source. I suggest we  
>> should switch from this flaky use of Global namespace to having the  
>> postmaster acquire an explicit lock on a file in the datadir.
>>     
>
> Does it work for all backends to grab a lock, so that if they continue
> to live after postmaster has died, then the new postmaster cannot start?
>
> I guess the postmaster could try-acquire an exclusive lock and all other
> processes would acquire a shared lock.
>   

I think we'd need to have the postmaster grab an exclusive lock to start 
with, to make sure nothing else has the lock, then swap to a shared lock 
before any backends are created. That might leave a tiny window on 
postmaster start, but I think it would be good enough.

cheers

andrew


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: 8.3 .4 + Vista + MingW + initdb = ACCESS_DENIED
Следующее
От: Andrew Dunstan
Дата:
Сообщение: Re: 8.3 .4 + Vista + MingW + initdb = ACCESS_DENIED