User login error

Posted by Community Admin on 04-Aug-2018 22:37

User login error

All Replies

Posted by Community Admin on 03-Feb-2015 00:00

We have a site set up to allow Active Directory users to log in via Sitefinity's Ldap Membership Provider API. Generally, this has been working as expected -- however, we are now having an issue with one particular user generating the following error when trying to log in:

[InvalidOperationException: Query execution found more than one element.]
   Telerik.OpenAccess.Query.ExpressionExecution.PerformQuerySingle(ExpressionCutter cutter, MethodCallExpression mce, ChainedContext piece, QueryOptions options) +2316
   Telerik.OpenAccess.Query.Piece`1.ExecuteSingle(Expression expression) +397
[TargetInvocationException: Exception has been thrown by the target of an invocation.]
   System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeType typeOwner) +0
   System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +640
   System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +38
   System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +35
   Telerik.Sitefinity.Data.Linq.OpenAccess.OpenAccessQueryProvider`2.Execute(Expression expression) +188
   Telerik.Sitefinity.Data.Linq.OpenAccess.OpenAccessQueryProvider`2.System.Linq.IQueryProvider.Execute(Expression expression) +26
   System.Linq.Queryable.SingleOrDefault(IQueryable`1 source) +378
   Telerik.Sitefinity.Data.ContentLinks.ContentLinksManager.GetContentLink(Guid parentItemId, Type parentItemType, String propertyName) +86
   Telerik.Sitefinity.Model.ContentLinks.ContentLinksPropertyDescriptor.GetValue(Object component) +240
   Telerik.Sitefinity.Security.UserManager.GetCachedUserProfile(Guid userId) +1002
   Telerik.Sitefinity.Services.SitefinityContextBase.get_BackendCulture() +332
   Telerik.Sitefinity.Localization.Resource.GetString(ResourceDataProvider provider, String classId, ResourceProperty property, CultureInfo culture, Boolean falback) +125
   Telerik.Sitefinity.Localization.GlobalResourceProvider.GetObject(String resourceKey, CultureInfo culture) +184
   System.Web.Compilation.ResourceExpressionBuilder.GetResourceObject(IResourceProvider resourceProvider, String resourceKey, CultureInfo culture, Type objType, String propName) +31
   ASP.loopwidgets_logincustomtemplate_ascx.__BuildControlUserName() +318
   ASP.loopwidgets_logincustomtemplate_ascx.__BuildControlloginWidgetPanel() +180
   ASP.loopwidgets_logincustomtemplate_ascx.__BuildControlTree(loopwidgets_logincustomtemplate_ascx __ctrl) +274
   Telerik.Sitefinity.Web.UI.ControlUtilities.LoadControl(String virtualPath, Page page) +563
   Telerik.Sitefinity.Web.UI.VirtualPathTemplate.InstantiateIn(Control container, PlaceHoldersCollection placeHolders) +160
   Telerik.Sitefinity.Web.UI.SimpleView.CreateContainer(ITemplate template) +54
   Telerik.Sitefinity.Web.UI.SimpleView.get_Container() +60
   Telerik.Sitefinity.Web.UI.SimpleView.CreateChildControls() +62
   System.Web.UI.Control.EnsureChildControls() +182
   System.Web.UI.Control.PreRenderRecursiveInternal() +73
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Control.PreRenderRecursiveInternal() +240
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3914

In general, I understand that the issue is that more than one item is being returned in a query that expects only one element, and that it seems to be associated with the UserName control in the login template. But I'm not sure how to go about debugging this. The odd thing about this -- aside from the fact that it affects only this one particular user -- is that it only appears on the servers in our load balanced production environment. Our development and qa environments, which query the same ldap provider, do not have this issue. This leads me to think that there is some issue in the production version of the Sitefinity database, but I'm not sure where to look to debug this. Any suggestions would be appreciated!

Posted by Community Admin on 06-Feb-2015 00:00

Hi Joseph,

As you mentioned, the issue seems related to the production database, most probably some of the profiles.

You can try to restore the database from production to your local project and try to debug it by query the users and their profiles and check it will return more than one record.

I hope this information helps.

Svetoslav Manchev

Do you want to have your say in the Sitefinity development roadmap? Do you want to know when a feature you requested is added or when a bug fixed? Explore the Telerik Sitefinity CMS Ideas&Feedback Portal and vote to affect the priority of the items

This thread is closed