SQL session problem
We have session state enabled for SharePoint and use InfoPath with sesion enabled. Some of the web applications have custom forms authentication.
It is working most of the time, but some users report that they get an error when accessing the default page of the site when they came from another site that also uses forms authentication. The error they get is "Object reference is not set to an instance
of an object.".
On the Application Event Log I get the following error:
Log Name: Application
Source: ASP.NET 2.0.50727.0
Date: 5/27/2010 10:43:28 AM
Event ID: 1309
Task Category: Web Event
Level: Warning
Keywords: Classic
User: N/A
Computer:
server name
Description:
Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 5/27/2010 10:43:28 AM
Event time (UTC): 5/27/2010 3:43:28 PM
Event ID: 3c4b8be90a2248e09dba10181f995e82
Event sequence: 990
Event occurrence: 2
Event detail code: 0
Application information:
Application domain: /LM/W3SVC/646330741/ROOT-1-129194465094188750
Trust level: WSS_Minimal
Application Virtual Path: /
Application Path: e:\inetpub\wwwroot\wss\VirtualDirectories\443\
Machine name: Server Name
Process information:
Process ID: 6900
Process name: w3wp.exe
Account name:
Application Pool Account
Exception information:
Exception type: NullReferenceException
Exception message: Object reference not set to an instance of an object.
Request information:
Request URL:
https://serverurl:443/
Request path: /
User host address:
user IP address
User:
Is authenticated: False
Authentication Type:
Thread account name:
Application Pool Account
Thread information:
Thread ID: 10
Thread account name: Application Pool Account
Is impersonating: True
Stack trace: at Microsoft.Office.Server.Administration.SqlSessionStateResolver.System.Web.IPartitionResolver.ResolvePartition(Object
key)
at System.Web.PartitionManager.GetPartition(IPartitionResolver partitionResolver, String id)
at System.Web.SessionState.SqlSessionStateStore.GetConnection(String id, Boolean& usePooling)
at System.Web.SessionState.SqlSessionStateStore.ResetItemTimeout(HttpContext context, String id)
at System.Web.SessionState.SessionStateModule.BeginAcquireState(Object source, EventArgs e, AsyncCallback cb, Object extraData)
at System.Web.HttpApplication.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
I've found another question on this forum (http://social.technet.microsoft.com/forums/en-US/sharepointgeneral/thread/1c47cd79-4b9f-428d-bcef-a773bf2c44d8)
where one of the solutions is to add the machine account (domain\machine$) to the db_owner and public roles on the Shared Services Provider database.
I don't really agree with this solution and there was no explanation of why it should solve the problem. Anyone have an idea on how to solve this problem or have an explanation on the add permissions to machine account solution?
Thanks.
ascampanelli
June 2nd, 2010 5:01pm
hello
not sure is it relevant or not for your case, but can it be somehow related with the fact that ASP.Net creates new session ID for each request from the same browser if session doesn't contain any items yetBlog - http://sadomovalex.blogspot.com
Codeplex - http://camlex.codeplex.com
Free Windows Admin Tool Kit Click here and download it now
June 2nd, 2010 5:13pm
Hi,
I don't think it's important in this case. Even though it creates new session ID, why would it throw this exception?
Thanks.ascampanelli
June 2nd, 2010 7:20pm


