[ 
https://issues.apache.org/jira/browse/CASSANDRA-7556?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14581686#comment-14581686
 ] 

Sam Tunnicliffe commented on CASSANDRA-7556:
--------------------------------------------

[~snazy] It was intentional to not support GRANT/REVOKE on functions without 
arguments. When the permissions are checked in {{SelectStatement#checkAccess}}, 
the FunctionResource is derived from the actual Function object, so it always 
has argtypes. If you grant permissions on the function without arguments, then 
the resource in the permissions table won't match and the request will be 
rejected. 

Also, what does it mean to apply permissions without argtypes where the 
function is overloaded? Should such a GRANT that mean the role has permissions 
on *all* overloaded versions? What if we they REVOKE permissions on a specific 
overload? IMO keeping things explicit is simpler and simpler is better here.

> Update cqlsh for UDFs
> ---------------------
>
>                 Key: CASSANDRA-7556
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7556
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Tools
>            Reporter: Tyler Hobbs
>            Assignee: Robert Stupp
>              Labels: udf
>             Fix For: 2.2.x
>
>         Attachments: 7556-2.txt, 7556.txt
>
>
> Once CASSANDRA-7395 and CASSANDRA-7526 are complete, we'll want to add cqlsh 
> support for user defined functions.
> This will include:
> * Completion for {{CREATE FUNCTION}} and {{DROP FUNCTION}}
> * Tolerating (almost) arbitrary text inside function bodies
> * {{DESCRIBE TYPE}} support
> * Including types in {{DESCRIBE KEYSPACE}} output
> * Possibly {{GRANT}} completion for any new privileges



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to