空缓冲区错误

时间:2012-10-17 13:54:52

标签: asp.net memcached session-state enyim.caching

我刚刚注意到,在运行应用程序时,我会定期收到错误消息。

Server Error in '/' Application.
Buffer cannot be null.
Parameter name: buffer
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentNullException: Buffer cannot be null.
Parameter name: buffer

堆栈追踪:

    [ArgumentNullException: Buffer cannot be null.
Parameter name: buffer]
   System.IO.MemoryStream..ctor(Byte[] buffer, Boolean writable) +12627669
   MemcachedProviders.Session.Common.Deserialize(HttpContext context, Byte[] serializedItems, Int32 timeout) +47
   MemcachedProviders.Session.Db.SQLDbOperations.GetItem(String strSessionId, String strApplicationName, Int32 iTime, HttpContext context, Boolean lockRecord, Boolean& locked, TimeSpan& lockAge, Object& lockId, SessionStateActions& actionFlags) +1221
   MemcachedProviders.Session.SessionStateProvider.GetItemExclusive(HttpContext context, String id, Boolean& locked, TimeSpan& lockAge, Object& lockId, SessionStateActions& actions) +1069
   System.Web.SessionState.SessionStateModule.GetSessionStateItem() +178
   System.Web.SessionState.SessionStateModule.PollLockedSessionCallback(Object state) +299

[HttpException (0x80004005): Exception of type 'System.Web.HttpException' was thrown.]
   System.Web.SessionState.SessionStateModule.EndAcquireState(IAsyncResult ar) +11513726
   System.Web.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult ar) +107

我们的应用程序使用Enyim memcached和MemcachedProviders,并在负载均衡的环境中运行。

该应用程序可以管理PDF报告和编写响应,然后生成最终报告pdf。所以我们使用了很多流。

这个问题似乎只影响我们的管理应用程序,因为我们还公开了一个Web服务,在查看服务定义和WSDL时我从未收到过错误。

通过查看数据库中的会话表,我可以看到它们正在被创建但是,其中许多在SessionItems字段中为空,并且锁定标志设置为1。 数据时间戳似乎与出现空缓冲区错误有关。

这是缓冲区设置不正确还是最大化的情况?

0 个答案:

没有答案