[ https://issues.apache.org/jira/browse/CASSANDRA-13358?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15956442#comment-15956442 ]
Hao Zhong commented on CASSANDRA-13358: --------------------------------------- I modified the code according to the Cassandra style. Although the original code has an if check, it can avoid only NPE, not InvalidRequestException. As a result, the patch is still necessary. > AlterViewStatement.checkAccess can throw exceptions > --------------------------------------------------- > > Key: CASSANDRA-13358 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13358 > Project: Cassandra > Issue Type: Bug > Components: CQL > Reporter: Hao Zhong > Assignee: Hao Zhong > Fix For: 2.1.18 > > Attachments: cassandra.patch > > > The AlterViewStatement.checkAccess method has code lines as follow: > {code:title=AlterViewStatement.java|borderStyle=solid} > if (baseTable != null) > state.hasColumnFamilyAccess(keyspace(), baseTable.name, > Permission.ALTER); > {code} > These lines can throw InvalidRequestException. Indeed, > DropTableStatement.checkAccess has a similar problem, and was fixed in > CASSANDRA-6687. The fixed code is as follow: > {code:title=DropTableStatement.java|borderStyle=solid} > try > { > state.hasColumnFamilyAccess(keyspace(), columnFamily(), > Permission.DROP); > } > catch (InvalidRequestException e) > { > if (!ifExists) > throw e; > } > {code} > Please fix the problem as CASSANDRA-6687 did. -- This message was sent by Atlassian JIRA (v6.3.15#6346)