Problem granting access to a PlPython function - Mailing list pgsql-general

From Mariano Mara
Subject Problem granting access to a PlPython function
Date
Msg-id 1257708754-sup-7248@kafka
Whole thread Raw
Responses Re: Problem granting access to a PlPython function  (Sam Mason <sam@samason.me.uk>)
List pgsql-general
Hi,
I have this plpython function that I need to execute with a non
superuser. I logged in the postgres account, create it and grant execute
rights to the target user.
However I cannot execute it with this user: I'm getting a "function ...
does not exist" error and after poking it for a few hours without luck,
it seems this problem is too much for a n00b like me.
Can anyone offer a hint how to make it work?
Following is a full example of what I'm doing:


# su - postgres
-bash-3.2$ psql -f hours_pgsql_function.sql
CREATE FUNCTION
-bash-3.2$ psql
Welcome to psql 8.3.8, the PostgreSQL interactive terminal.

postgres=# select hours_between(localtimestamp, localtimestamp,
cast('Argentina' as character varying));
 hours_between
---------------
             0
(1 row)

postgres=# grant execute on function hours_between (timestamp without
time zone, timestamp without time zone, character varying) to otrs;
GRANT
postgres=# \q
-bash-3.2$ psql -d otrs -U otrs
Welcome to psql 8.3.8, the PostgreSQL interactive terminal.

otrs=> select hours_between(localtimestamp, localtimestamp,
cast('Argentina' as character varying));
ERROR:  function hours_between(timestamp without time zone, timestamp
without time zone, character varying) does not exist
LINE 1: select hours_between(localtimestamp, localtimestamp, cast('A...
               ^
HINT:  No function matches the given name and argument types. You might
need to add explicit type casts.
otrs=>

TIA,
Mariano.


pgsql-general by date:

Previous
From: Sam Mason
Date:
Subject: Re: Problem to use remote cygwin server using ssh and native psql 8.3.5
Next
From: Sam Mason
Date:
Subject: Re: Problem granting access to a PlPython function