[ https://issues.apache.org/jira/browse/GEODE-6989?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Juan José Ramos Cassella updated GEODE-6989: -------------------------------------------- Description: We already [cache|https://github.com/apache/geode/blob/rel/v1.9.0/geode-core/src/main/java/org/apache/geode/cache/query/internal/CompiledOperation.java#L267-L285] created instances of {{MethodDispatch}} to avoid creating them for every query. Modify the {{MethodDispatch}} class to remember whether the method was allowed by a previous invocation, preventing further calls to the respective {{authorizer}} if it was. We also [cache|https://github.com/apache/geode/blob/rel/v1.9.0/geode-core/src/main/java/org/apache/geode/cache/query/internal/AttributeDescriptor.java#L148-L170] within the {{AttributeDescriptor}} class the member already read by reflection for a particular attribute to avoid doing it again and again in every query. Modify the {{AttributeDescriptor}} class to remember whether the accessor method was allowed by a previous invocation, preventing further calls to the respective {{authorizer}} if it was. was: We already [cache|https://github.com/apache/geode/blob/develop/geode-core/src/main/java/org/apache/geode/cache/query/internal/CompiledOperation.java#L267-L285] created instances of {{MethodDispatch}} to avoid creating them for every query. Modify the {{MethodDispatch}} class to remember whether the method was allowed by a previous invocation, preventing further calls to the respective {{authorizer}} if it was. We also [cache|https://github.com/apache/geode/blob/develop/geode-core/src/main/java/org/apache/geode/cache/query/internal/AttributeDescriptor.java#L148-L170] within the {{AttributeDescriptor}} class the member already read by reflection for a particular attribute to avoid doing it again and again in every query. Modify the {{AttributeDescriptor}} class to remember whether the accessor method was allowed by a previous invocation, preventing further calls to the respective {{authorizer}} if it was. > Cache Method Invocation Authorization > ------------------------------------- > > Key: GEODE-6989 > URL: https://issues.apache.org/jira/browse/GEODE-6989 > Project: Geode > Issue Type: New Feature > Components: querying > Reporter: Juan José Ramos Cassella > Priority: Major > > We already > [cache|https://github.com/apache/geode/blob/rel/v1.9.0/geode-core/src/main/java/org/apache/geode/cache/query/internal/CompiledOperation.java#L267-L285] > created instances of {{MethodDispatch}} to avoid creating them for every > query. Modify the {{MethodDispatch}} class to remember whether the method was > allowed by a previous invocation, preventing further calls to the respective > {{authorizer}} if it was. > We also > [cache|https://github.com/apache/geode/blob/rel/v1.9.0/geode-core/src/main/java/org/apache/geode/cache/query/internal/AttributeDescriptor.java#L148-L170] > within the {{AttributeDescriptor}} class the member already read by > reflection for a particular attribute to avoid doing it again and again in > every query. Modify the {{AttributeDescriptor}} class to remember whether the > accessor method was allowed by a previous invocation, preventing further > calls to the respective {{authorizer}} if it was. -- This message was sent by Atlassian JIRA (v7.6.14#76016)