Hi,

I would be appreciative if you could help with below questions.

I have two question on Modify keyword with respect to Cassandra(No SQL 
database).
1) Whenever we grant MODIFY permissions to Cassandra users, for example:
GRANT MODIFY ON table1 TO User1;

Then all four: Insert, Update, Delete and Truncate permissions are granted 
automatically.
But out of the four I do not want to give Truncate permission because I do not 
want a user to mistakenly truncate a table.
I tried giving individual permissions of Insert ,Update and delete but this way 
it does not work. Only the Modify keyword works. Is there a way I can grant 
only Insert, Update and Delete to users in Cassandra.

2) I also have another question regarding Modify. Why is it mandatory to give 
MODIFY permission explicitly to a Cassandra Materialized View even when related 
table already has MODIFY permission?
Whenever a table in Cassandra is modified (data updated/deleted/inserted), the 
related materialized View(MV) is updated automatically. Why is it necessary to 
give explicit MODIFY permission to MV (Materialized Views) as well in order to 
execute a Insert/Update/Delete on the related table? Further-more the 
contradictory thing here is that a Modify command (Insert/Update/delete) cannot 
be executed altogether on MVs. So below CQL will fail even if the user has 
Modify access on MV - "delete from materializedView1 where id =10"
Another issue is that whenever a new MV is created on the same table, then the 
table Modify will go for a toss, if Modify is not given/missed on the New MV.
Thanks
Chandan

Reply via email to