Обсуждение: 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