Re: Passing current_database to BackgroundWorkerInitializeConnection

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: Passing current_database to BackgroundWorkerInitializeConnection
Дата
Msg-id 20180402192730.jw5qeolgecvyldwr@alap3.anarazel.de
обсуждение исходный текст
Ответ на Re: Passing current_database to BackgroundWorkerInitializeConnection  (Jeremy Finzel <finzelj@gmail.com>)
Ответы Re: Passing current_database to BackgroundWorkerInitializeConnection  (Jeremy Finzel <finzelj@gmail.com>)
Список pgsql-hackers
Hi,

On 2018-04-02 14:24:53 -0500, Jeremy Finzel wrote:
> Thank you, this makes sense.  However, how can this be done since I can
> only pass one argument to bgw_main?  Is there any way to do this without
> having to store the value in shared memory?

No (I mean you can store it in the filesystem or such as well, but
...). Pretty fundamentally sharing data between concurrently running
processes needs a medium to share the data over. The bgw infrastructure
allocates just enough so you can put an index to it into
shmem. Allocating more would be wasteful and/or not enough for some
users.

Greetings,

Andres Freund


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

Предыдущее
От: Jeremy Finzel
Дата:
Сообщение: Re: Passing current_database to BackgroundWorkerInitializeConnection
Следующее
От: Andres Freund
Дата:
Сообщение: Re: PostgreSQL's handling of fsync() errors is unsafe and risks data loss at least on XFS