Performance Issues #4

Open
OdeToCode opened this Issue Oct 4, 2012 · 4 comments

Comments

Projects
None yet
3 participants
Owner

OdeToCode commented Oct 4, 2012

  1. FlexRoleProvider::DeleteRole uses _roleStore.GetUsersInRole(roleName).Any().
    Will be painful when the number of users in the system is large.
  2. FlexRoleProvider::IsUserInRoll uses GetUsersInRole(roleName).Any(...) - same potential problem.

@ghost ghost assigned OdeToCode Oct 4, 2012

Maybe the Future() feature of https://github.com/loresoft/EntityFramework.Extended will help on the EF side.

Owner

OdeToCode commented Oct 8, 2012

Thanks - I will take a look.

Contributor

ejsmith commented Oct 12, 2012

I don't think it makes sense to put the ICollection Users property on the IFlexRole interface because in a document world it makes much more sense to store the roles that a user belongs to in the user document. If we remove that property from IFlexRole and just use the GetRolesForUser call to get a list of roles for a specific user, it will be up to the store on how to persist role membership.

I am kind of thinking that it would be better to just merge IFlexUserStore and IFlexRoleStore into a single IFlexMembershipStore and let the provider make the decisions on how it stores things.

Thoughts?

Owner

OdeToCode commented Oct 15, 2012

Eric: Yes, I think that idea has some merit. Will try to investigate this week.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment