You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently when using CQL or gRPC APIs and sending batch statements, each statement in that batch is being authorized in StargateQueryHandler. Meaning if I have 100 insert statements that target same table, we would would do 100 authorizations. Depending on the authorization type this can represent significant overhead,
We can optimize this in a way that we collect set of authorizations needed for a batch statement. These should be distinguished by the needed authz scope (depending on the statement type) and target keyspace & table. Once we extract those, we only execute minimal amount of authorizations.
We can also use this ticket to actually create a StatementAuthorizer class and extract the logic from the query handler. Furthermore, we could see how to correctly abstract this so that it can be shared between all persistence modules.
The text was updated successfully, but these errors were encountered:
Currently when using CQL or gRPC APIs and sending batch statements, each statement in that batch is being authorized in StargateQueryHandler. Meaning if I have 100 insert statements that target same table, we would would do 100 authorizations. Depending on the authorization type this can represent significant overhead,
We can optimize this in a way that we collect set of authorizations needed for a batch statement. These should be distinguished by the needed authz scope (depending on the statement type) and target keyspace & table. Once we extract those, we only execute minimal amount of authorizations.
We can also use this ticket to actually create a
StatementAuthorizer
class and extract the logic from the query handler. Furthermore, we could see how to correctly abstract this so that it can be shared between all persistence modules.The text was updated successfully, but these errors were encountered: