mirror of
https://github.com/postgres/postgres.git
synced 2025-04-29 13:56:47 +03:00
Temporary patch to try to debug why event trigger patch broke Windows.
Apologies for the ugliness.
This commit is contained in:
parent
ae55d9fbe3
commit
0a248208a0
@ -285,6 +285,7 @@ do_compile(FunctionCallInfo fcinfo,
|
||||
int *in_arg_varnos = NULL;
|
||||
PLpgSQL_variable **out_arg_variables;
|
||||
MemoryContext func_cxt;
|
||||
PLpgSQL_trigtype fn_is_trigger;
|
||||
|
||||
/*
|
||||
* Setup the scanner input and error info. We assume that this function
|
||||
@ -352,11 +353,12 @@ do_compile(FunctionCallInfo fcinfo,
|
||||
function->resolve_option = plpgsql_variable_conflict;
|
||||
|
||||
if (is_dml_trigger)
|
||||
function->fn_is_trigger = PLPGSQL_DML_TRIGGER;
|
||||
fn_is_trigger = PLPGSQL_DML_TRIGGER;
|
||||
else if (is_event_trigger)
|
||||
function->fn_is_trigger = PLPGSQL_EVENT_TRIGGER;
|
||||
fn_is_trigger = PLPGSQL_EVENT_TRIGGER;
|
||||
else
|
||||
function->fn_is_trigger = PLPGSQL_NOT_TRIGGER;
|
||||
fn_is_trigger = PLPGSQL_NOT_TRIGGER;
|
||||
function->fn_is_trigger = fn_is_trigger;
|
||||
|
||||
/*
|
||||
* Initialize the compiler, particularly the namespace stack. The
|
||||
@ -374,6 +376,7 @@ do_compile(FunctionCallInfo fcinfo,
|
||||
sizeof(PLpgSQL_datum *) * datums_alloc);
|
||||
datums_last = 0;
|
||||
|
||||
Assert(fn_is_trigger == function->fn_is_trigger);
|
||||
switch (function->fn_is_trigger)
|
||||
{
|
||||
case PLPGSQL_NOT_TRIGGER:
|
||||
@ -537,9 +540,13 @@ do_compile(FunctionCallInfo fcinfo,
|
||||
rettypeid == RECORDOID)
|
||||
/* okay */ ;
|
||||
else if (rettypeid == TRIGGEROID || rettypeid == EVTTRIGGEROID)
|
||||
{
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
|
||||
errmsg("trigger functions can only be called as triggers")));
|
||||
errmsg("trigger functions can only be called as triggers"),
|
||||
errhint("CALLED_AS_TRIGGER=%d CALLED_AS_EVENT_TRIGGER=%d",
|
||||
CALLED_AS_TRIGGER(fcinfo), CALLED_AS_EVENT_TRIGGER(fcinfo))));
|
||||
}
|
||||
else
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
|
||||
|
Loading…
x
Reference in New Issue
Block a user