Re: [pgadmin-support] Missing defaults for function arguments

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Ashesh Vashi <ashesh(dot)vashi(at)enterprisedb(dot)com>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>, pgadmin-support(at)postgresql(dot)org, Michal Kozusznik <kozusznik(dot)michal(at)ifortuna(dot)cz>
Subject: Re: [pgadmin-support] Missing defaults for function arguments
Date: 2012-06-11 16:37:00
Message-ID: CA+OCxowR5haac709PeVn_Hj4Hjf3i0+momYqja37hYqD2hM9JA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers pgadmin-support

On Mon, Jun 11, 2012 at 5:32 PM, Ashesh Vashi
<ashesh(dot)vashi(at)enterprisedb(dot)com> wrote:
> On Mon, Jun 11, 2012 at 6:30 PM, Dave Page <dpage(at)pgadmin(dot)org> wrote:
>>
>>
>>
>> On Sun, Jun 10, 2012 at 6:57 PM, Ashesh Vashi
>> <ashesh(dot)vashi(at)enterprisedb(dot)com> wrote:
>>>
>>> Hi Dave/Guillaume,
>>>
>>> Please find the attached patch to resolve this issue.
>>> In the following commit - the file was modified and we were not able to
>>> spot the issue earlier.
>>> a265fb2977253fce436e276320d337425639384c
>>>
>>> It can be applied to both branches - REL-1_14_0_PATCHES & master.
>>>
>>
>> I'm not sure I see how this will work. From what I can see of the patch,
>> it'll use the column name proargdefvals for PPAS 8.3+ and proargdefaults for
>> PG. However;
>>
>> - PPAS 8.3 uses proargdefvals
>> - PPAS 9.0 uses proargdefaults (I don't have 8.4 to hand, but I assume it
>> took the new PG naming)
>> - PostgreSQL uses proargdefaults.
>>
>> So, shouldn't the code be something more like:
>>
>> wxString defCol;
>>
>> if (EdbMinimumVersion(8, 3))
>> {
>>     defCol = wxT("'proargdefvals'");
>> }
>>
>> if (BackendMinimumVersion(8, 4))
>> {
>>     defCol = wxT("'proargdefaults'");
>> }
>>
>> Please check PPAS 8.4, and update the patch accordingly (assuming you
>> agree with my comments).
>
> Only PPAS 8.3 uses, 'proargdefvals' for default arguments.
> PG 8.4+ uses 'proargdefaults' for it and PPAS 8.4+adopted it from PG 8.4.
>
> As per your suggestion, if we set the string for defCol only for particular
> version of database server.
> The variable - defCol will be empty for PG < 8.4 (not PPAS).
> And, the query following the variable assignment will result in to an error
> all the time for those servers.

OK, I didn't look at the function any further. In that case, what
about something like:

wxString defCol = wxT("'proargdefaults'");

if (EdbMinimumVersion(8, 3) && !EdbMinimumVersion(8, 4))
{
defCol = wxT("'proargdefvals'");
}

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Ashesh Vashi 2012-06-11 16:43:07 Re: [pgadmin-support] Missing defaults for function arguments
Previous Message Ashesh Vashi 2012-06-11 16:32:53 Re: [pgadmin-support] Missing defaults for function arguments

Browse pgadmin-support by date

  From Date Subject
Next Message Ashesh Vashi 2012-06-11 16:43:07 Re: [pgadmin-support] Missing defaults for function arguments
Previous Message Ashesh Vashi 2012-06-11 16:32:53 Re: [pgadmin-support] Missing defaults for function arguments