Using PasswordAuthenticator and CassandraAuthorizer:
bin/cqlsh -u cassandra -p cassandra
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.0.14-SNAPSHOT | CQL spec 3.4.0 | Native protocol v4]
Use HELP for help.
cassandra@cqlsh> create role super with superuser = true and password = 'p' and login = true;
cassandra@cqlsh> login super;
super@cqlsh> list roles;
'Row' object has no attribute 'values'
When we initialize the Shell, we configure certain settings on the session object such as
self.session.default_timeout = request_timeout
self.session.row_factory = ordered_dict_factory
self.session.default_consistency_level = cassandra.ConsistencyLevel.ONE
However, once we perform a LOGIN cmd, which calls do_login(..), we create a new cluster/session object but actually never set those settings on the new session.
It isn't failing on 3.x.
As a workaround, it is possible to logout and log back in and things work correctly.