From: | Mohammed Ajil <ajilm(at)student(dot)ethz(dot)ch> |
---|---|
To: | Jim Nasby <Jim(dot)Nasby(at)BlueTreble(dot)com>, <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Getting the function definition from oid in before firing the function |
Date: | 2016-01-06 07:29:50 |
Message-ID: | 568CC26E.6000409@student.ethz.ch |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi,
Thanks for your answer!
I know that this is not the only language for triggers, but the
algorithm I have to implement only supports these triggers.
I have looked at the audit trigger, but that is not quite what I am
trying to achieve. I have implemented the stack push and pop for the
initial commands at another location, what I am trying to do now is keep
track of what triggers are fired, since they recursively can fire more
triggers.
What is an executor hook?
Regards,
Mohammed
On 01/06/2016 03:20 AM, Jim Nasby wrote:
> On 1/5/16 8:13 AM, Mohammed Ajil wrote:
>> Now my problem consists of two steps:
>> - First I need to decide if the algorithm supports the trigger type
>> (only of LANGUAGE PLPGSQL).
>
> plpgsql is NOT the only language that supports triggers.
>
>> - Second I need to get the SQL command that the function will execute.
>>
>> What I tried was the following:
>> In the file trigger.c I have found the location where the function is
>> called.
>
> I think triggers is the wrong way to approach this; it's full of holes
> (not the least of which is triggers don't fire on SELECT). You'd be much
> better off with an executor hook.
>
> Have you looked at https://github.com/2ndQuadrant/pgaudit?
--
--------------------------------------------
Mohammed Ajil
Bsc CS D-INFK
ajilm(at)student(dot)ethz(dot)ch
From | Date | Subject | |
---|---|---|---|
Next Message | Pavel Stehule | 2016-01-06 07:36:57 | Re: Code of Conduct: Is it time? |
Previous Message | Oleg Bartunov | 2016-01-06 07:08:24 | Re: Code of Conduct: Is it time? |