From: | darcy(at)druid(dot)net (D'Arcy J(dot)M(dot) Cain) |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | hackers(at)PostgreSQL(dot)org |
Subject: | Re: Changes to functions and triggers |
Date: | 2000-06-20 19:33:33 |
Message-ID: | m134Tm9-000AY5C@druid.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Thus spake Tom Lane
> darcy(at)druid(dot)net (D'Arcy J.M. Cain) writes:
> > OK, so I went back to basically what I had before.
>
> > CREATE FUNCTION make_date()
> > RETURNS opaque
> > AS '/usr/pgsql/modules/make_date.so'
> > LANGUAGE 'c';
>
> > CREATE TRIGGER make_dates
> > BEFORE INSERT OR UPDATE ON bgroup
> > FOR EACH ROW
> > EXECUTE PROCEDURE make_date (edate, aniv, emon, eyear);
>
> > INSERT INTO bgroup (bname, client_id, actypid, aniv, emon, eyear, pmon, pyear)
> > VALUES ('guest', 1000, 1, 1, 1, 2000, 1, 2000);
>
> Looks OK to me.
>
> > And here is what I get.
> > ERROR: fmgr_info: function 24224: cache lookup failed
>
> You sure you didn't fall into the same old trap of you-must-create-
> the-trigger-after-the-function? If you drop and recreate the function,
> it has a new OID, so you have to drop and recreate the trigger because
> it links to the function by OID.
Positive. I dropped both then did the above in the order shown.
--
D'Arcy J.M. Cain <darcy(at){druid|vex}.net> | Democracy is three wolves
http://www.druid.net/darcy/ | and a sheep voting on
+1 416 425 1212 (DoD#0082) (eNTP) | what's for dinner.
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2000-06-20 19:42:15 | Re: Changes to functions and triggers |
Previous Message | Bruce Momjian | 2000-06-20 18:03:58 | Re: Re: PostgreSQL aggregate function documentation |