fmgr_info_cxt_security() modifies variable?

Поиск
Список
Период
Сортировка
От Luis Vargas
Тема fmgr_info_cxt_security() modifies variable?
Дата
Msg-id Prayer.1.0.18.0710110147410.11366@hermes-2.csi.cam.ac.uk
обсуждение исходный текст
Список pgsql-general
Hi, I'm calling an arbitrary user-defined function from the backend.
Although I can do it via FunctionCallInvoke, I have a weird problem when
calling fmgr_info. The call results in a argument variable (eventType)
being cleared. A gdb hardware watch says that the variable is modified by
this line (185) in fmgr.c: finfo->fn_extra = NULL; Any ideas of what is
happening?

For simplicity, in the following snippet I have hardcoded foid to some
(PGPSQL) function id and removed the rest of the call-related statements.

static void execEventTypeFunc(char *eventType, Oid funcId)
{
    FmgrInfo *finfo;
    FunctionCallInfoData fcinfo;
    Datum           result;
    Oid foid = 17283;

    finfo = (FmgrInfo *) palloc0(sizeof(FmgrInfo));

    fmgr_info(foid, finfo);

    ...
}

Thanks,

Luis

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

Предыдущее
От: illusina
Дата:
Сообщение: Aggregate View and Conditions taking FOREVER
Следующее
От: Robert Treat
Дата:
Сообщение: Re: SLEEP in posgresql