[
https://issues.apache.org/jira/browse/CASSANDRA-8850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14349067#comment-14349067
]
Sam Tunnicliffe commented on CASSANDRA-8850:
--------------------------------------------
Right, and this is the approach that I've taken. Where it's messy is when we
have a statement like {{GRANT <PERMISSION> ON <RESOURCE> TO <ROLE>}}
If {{<RESOURCE>}} is a Role, then we should enforce that {{ROLE}} is a literal.
But if {{<RESOURCE>}} is a data resource, we'll need to accept {{<ROLE>}} as
either an identifier or a literal so we don't break compatibility (as
previously, it would have represented a user). For now, I'm doing this by
duplication in the grammar itself. This complexity will increase as we add
further resource types (CASSANDRA-7557), but not significantly.
It isn't really a big deal, it just makes the grammar & tests slightly more
complicated though probably not enough to be a problem. If we're prepared to
actually deprecate and remove the user concept in some future version, all the
better. Is there precedent for removing syntax from CQL3?
> clean up options syntax for create/alter role
> ----------------------------------------------
>
> Key: CASSANDRA-8850
> URL: https://issues.apache.org/jira/browse/CASSANDRA-8850
> Project: Cassandra
> Issue Type: Improvement
> Reporter: Sam Tunnicliffe
> Assignee: Sam Tunnicliffe
> Priority: Minor
> Fix For: 3.0
>
> Attachments: 8850-v2.txt, 8850.txt
>
>
> {{CREATE/ALTER ROLE}} syntax would be improved by using {{WITH}} and {{AND}}
> in a way more consistent with other statements.
> e.g. {{CREATE ROLE foo WITH LOGIN AND SUPERUSER AND PASSWORD 'password'}}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)