Re: potential bug in trigger with boolean params

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-hackers(at)postgresql(dot)org
Cc: Andreas Joseph Krogh <andreak(at)officenet(dot)no>
Subject: Re: potential bug in trigger with boolean params
Date: 2011-05-11 09:29:07
Message-ID: 201105111129.08449.andres@anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wednesday, May 11, 2011 11:21:34 AM Andres Freund wrote:
> On Wednesday, May 11, 2011 11:01:56 AM Andreas Joseph Krogh wrote:
> > På onsdag 11. mai 2011 kl 10:56:19 skrev <tv(at)fuzzy(dot)cz>:
> > > > CREATE TRIGGER trig_x_bool BEFORE INSERT ON x FOR EACH ROW EXECUTE
> > > > PROCEDURE
> > > > trigger_x(true);
> > >
> > > The docs clearly state what the valid values are and the literal 'true'
> > > is not one of them (TRUE is). See this:
> > >
> > > http://www.postgresql.org/docs/9.0/interactive/datatype-boolean.html
> >
> > What are you trying to accomplish? "CREATE OR REPLACE FUNCTION
> > trigger_x()" does not declare any formal-parameters, so calling it with
> > arguments doesn't make sense. I'm surprised creating the other triggers
> > didn't produce an error stating "No function defined with the name
> > trigger_ix and the given argument-type".
>
> Read the docs. Parameters for triggers are not passed as normal function
> parameters. Thats why you access them via via TG_ARGV in plpgsql.
>
> The grammar accepts only a very limited amount of parameters there:
Err....

TriggerFuncArg:
Iconst
{
char buf[64];
snprintf(buf, sizeof(buf), "%d", $1);
$$ = makeString(pstrdup(buf));
}
| FCONST { $$ = makeString($1); }
| Sconst { $$ = makeString($1); }
| BCONST { $$ = makeString($1); }
| XCONST { $$ = makeString($1); }
| ColId { $$ = makeString($1); }

That is integers, floating point, strings, bitstrings, hexstrings and column references (???).

How that exact list came to exist I do not know.

Andres

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andreas Joseph Krogh 2011-05-11 09:29:30 Re: potential bug in trigger with boolean params
Previous Message Heikki Linnakangas 2011-05-11 09:27:02 Re: time-delayed standbys