when I make grant usage on language 'plpgsql' to my user, I get this
error:

ERROR:  language "plpgsql" is not trusted, if I must trust my language, I won't need the grant usage of
language to my user, will I?
Yes, I miswrote that sentence. The language must be trusted for any non-superuser to ever use it. Just because the language is trusted, though, should not automatically allow users access to it without a GRANT. The fact that they do not need GRANTing, though, is either a bug or a documentation error.

So

BTW, if my user is already the owner of schema, is really need the grant
all on schema to my user?
You're correct. I was allowing for <desireduser> to not be the schema owner

thanks,
Pedro Salazar.

On Mon, 2003-04-07 at 13:53, John Gunther wrote:
  
 From psql <databasename> -U<databaseowner>, issue:
    GRANT USAGE ON LANGUAGE plpgsql to <desireduser>;
You may also need (to allow creation of the function)
    GRANT ALL ON SCHEMA <schemaname> TO <desireduser>;

This will grant <desireduser> the usage of plpgsql even if it is untrusted.