Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq

Поиск
Список
Период
Сортировка
От Amit kapila
Тема Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq
Дата
Msg-id 6C0B27F7206C9E4CA54AE035729E9C38420CF2E0@szxeml558-mbs.china.huawei.com
обсуждение исходный текст
Ответ на Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq  (Heikki Linnakangas <hlinnakangas@vmware.com>)
Ответы Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq  (Phil Sorber <phil@omniti.com>)
Список pgsql-hackers
On Tuesday, February 12, 2013 2:49 AM Heikki Linnakangas wrote:
On 04.02.2013 17:32, Alvaro Herrera wrote:
> Phil Sorber wrote:
>> On Mon, Feb 4, 2013 at 10:16 AM, Alvaro Herrera
>> <alvherre@2ndquadrant.com>  wrote:
>>> Phil Sorber wrote:
>>>> On Mon, Feb 4, 2013 at 9:13 AM, Alvaro Herrera<alvherre@2ndquadrant.com>  wrote:
>>>

> I think this patch would simplift the patch to pass a connection string
> to pg_basebackup and pg_receivexlog:
> http://www.postgresql.org/message-id/005501cdfa45$6b0eec80$412cc580$@kommi@huawei.com.
> I note that pg_dumpall also has a similar issue as pg_basebackup and
> pg_receivexlog; there's no way to pass a connection string to it either.

I have looked into both patches and my analysis is as below:

In pg_basebackup patch, we have connection string and list of keywords (individual options specified by user),
in the current available patch it has combined connection string and list of keywords as connection string
and called PQconnectdb() which takes connection string as input.

Now the patch of Phil Sober provides 2 new API's PQconninfoParseParams(), and PQconninfodefaultsMerge(),
using these API's I can think of below way for patch "pass a connection string to pg_basebackup, ..."

1. Call existing function PQconinfoParse() with connection string input by user and get PQconninfoOption.

2. Now use the existing keywords (individual options specified by user) and extract the keywords from
PQconninfoOptionstructure and call new API PQconninfoParseParams() which will return PQconninfoOption.  The
PQconninfoOptionstructure returned in this step will contain all keywords 

3. Call PQconninfodefaultsMerge() to merge any default values if exist. Not sure if this step is required?

4. Extract individual keywords from PQconninfoOption structure and call PQconnectdbParams.


Is this inline with what you have in mind or you have thought of some other simpler way of using new API's?

With Regards,
Amit Kapila.



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

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: PATCH: Split stats file per database WAS: autovacuum stress-testing our system
Следующее
От: Pavel Stehule
Дата:
Сообщение: plpgsql_check_function - implementation