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

Sylvain Lebresne commented on CASSANDRA-7557:
---------------------------------------------

bq.  The only alternative I could come up with was to defer execution of 
terminal functions depending on the configured {{IAuthorizer}}

Alternatively, we could defer execution of functions to statement execution 
unconditionally. I mean, executing functions at preparation time when all terms 
are terminal is just a minor optimization that was done because it was easy to 
do, but in practice, it's unlikely terribly useful: for non-prepared statement, 
doing execution at preparation or execution doesn't matter at all, and for 
prepared statement, not only having function calls with only terminal terms is 
probably not that common, but if you really care about optimizing the call, 
it's easy enough to compute the function client side before preparation.
So honestly, if that minor optimization become a pain to preserve, and it does 
seem so with this (I would even argue that doing permission checking at 
preparation time is always a bad idea because if the permission is revoked 
after preparation, a user would expect further execution to be rejected), I 
submit that we should just get rid of it and simplify the code accordingly.

> User permissions for UDFs
> -------------------------
>
>                 Key: CASSANDRA-7557
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7557
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: Tyler Hobbs
>            Assignee: Sam Tunnicliffe
>              Labels: client-impacting, cql, udf
>             Fix For: 3.0
>
>
> We probably want some new permissions for user defined functions.  Most 
> RDBMSes split function permissions roughly into {{EXECUTE}} and 
> {{CREATE}}/{{ALTER}}/{{DROP}} permissions.



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

Reply via email to