Is there anyway from within a plpgsql function that you can get the name of the function? Or even the OID of the function?
I know there are some \"special\" variab
For triggers use TG_NAME to get the name of the trigger (not the trigger function) fired.
You also have current_query()
to get the top level query executed by the application, the root cause for your function's execution. It won't show you any intermediate functions.
Otherwise, not really AFAIK and I did go looking for it a while ago when I wanted to print a "current function stack" for debugging. Others may know more.
UPDATE: In Pg 9.4 and above you can also use PG_CONTEXT
to the call stack, but not just the current function name.