Обсуждение: PATCH: FB#15614: Use CALL for callable statements
Hi Dave,
Please find the patch for the same.
This is valid for both trunk and REL-1_10 patch.
--
Thanks & Regards,
Ashesh Vashi
EntepriseDB INDIA: www.enterprisedb.com
Вложения
Thanks - patch applied. On Thu, May 27, 2010 at 10:22 AM, Ashesh Vashi <ashesh.vashi@enterprisedb.com> wrote: > Hi Dave, > > Please find the patch for the same. > This is valid for both trunk and REL-1_10 patch. > > -- > Thanks & Regards, > Ashesh Vashi > > EntepriseDB INDIA: www.enterprisedb.com -- Dave Page EnterpriseDB UK: http://www.enterprisedb.com The Enterprise Postgres Company
Le 27/05/2010 11:32, Dave Page a écrit : > Thanks - patch applied. > > On Thu, May 27, 2010 at 10:22 AM, Ashesh Vashi > <ashesh.vashi@enterprisedb.com> wrote: >> Hi Dave, >> >> Please find the patch for the same. >> This is valid for both trunk and REL-1_10 patch. >> Are we sure that the dlgDirectDbg::invokeTargetCallable() method is only called when connected to an EDB server? I didn't work a lot with the debugger frontend source code, but it seems to me that this function can be called even with vanilla PostgreSQL servers, especially on Windows (see dlgDirectDbg::invokeTarget() method). Am I wrong? -- Guillaume http://www.postgresql.fr http://dalibo.com
On Thu, May 27, 2010 at 11:20 AM, Guillaume Lelarge
<guillaume@lelarge.info> wrote:
> Le 27/05/2010 11:32, Dave Page a écrit :
>> Thanks - patch applied.
>>
>> On Thu, May 27, 2010 at 10:22 AM, Ashesh Vashi
>> <ashesh.vashi@enterprisedb.com> wrote:
>>> Hi Dave,
>>>
>>> Please find the patch for the same.
>>> This is valid for both trunk and REL-1_10 patch.
>>>
>
> Are we sure that the dlgDirectDbg::invokeTargetCallable() method is only
> called when connected to an EDB server? I didn't work a lot with the
> debugger frontend source code, but it seems to me that this function can
> be called even with vanilla PostgreSQL servers, especially on Windows
> (see dlgDirectDbg::invokeTarget() method). Am I wrong?
Hopefully :-)
m_targetInfo->getIsFunction() should return false for anything other
than an EDB-SPL stored procedure:
#ifdef __WXMSW__
if (!m_targetInfo->getIsFunction() &&
PQiGetOutResult &&
PQiPrepareOut &&
PQiSendQueryPreparedOut)
invokeTargetCallable();
else
#else
#ifdef EDB_LIBPQ
if (!m_targetInfo->getIsFunction())
invokeTargetCallable();
else
#endif
#endif
--
Dave Page
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise Postgres Company
Le 27/05/2010 12:49, Dave Page a écrit : > On Thu, May 27, 2010 at 11:20 AM, Guillaume Lelarge > <guillaume@lelarge.info> wrote: >> Le 27/05/2010 11:32, Dave Page a écrit : >>> Thanks - patch applied. >>> >>> On Thu, May 27, 2010 at 10:22 AM, Ashesh Vashi >>> <ashesh.vashi@enterprisedb.com> wrote: >>>> Hi Dave, >>>> >>>> Please find the patch for the same. >>>> This is valid for both trunk and REL-1_10 patch. >>>> >> >> Are we sure that the dlgDirectDbg::invokeTargetCallable() method is only >> called when connected to an EDB server? I didn't work a lot with the >> debugger frontend source code, but it seems to me that this function can >> be called even with vanilla PostgreSQL servers, especially on Windows >> (see dlgDirectDbg::invokeTarget() method). Am I wrong? > > Hopefully :-) > > m_targetInfo->getIsFunction() should return false for anything other > than an EDB-SPL stored procedure: > > #ifdef __WXMSW__ > if (!m_targetInfo->getIsFunction() && > PQiGetOutResult && > PQiPrepareOut && > PQiSendQueryPreparedOut) > invokeTargetCallable(); > else > #else > #ifdef EDB_LIBPQ > if (!m_targetInfo->getIsFunction()) > invokeTargetCallable(); > else > #endif > #endif > Oh OK, I didn't notice the getIsFunction() call. -- Guillaume http://www.postgresql.fr http://dalibo.com