Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq
От | Phil Sorber |
---|---|
Тема | Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq |
Дата | |
Msg-id | CADAkt-gdXL=-Ey0Hyi01OrnR8QSnidTFihhrXK_A01AwV4K9Fg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq (Amit kapila <amit.kapila@huawei.com>) |
Ответы |
Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq
|
Список | pgsql-hackers |
On Sun, Feb 17, 2013 at 1:35 AM, Amit kapila <amit.kapila@huawei.com> wrote: > 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 > PQconninfoOption structure and call new API PQconninfoParseParams() which will return PQconninfoOption. > The PQconninfoOption structure 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. I think what would be nice is an additional connect function that took PQconninfoOption as a parameter. Or at least something that can convert from PQconninfoOption to a connection string or keyword/value arrays.
В списке pgsql-hackers по дате отправления: