Strange Problems with a mysteriously corrupted list

written by admin on Wednesday, April 02 2008

I've got some custom code which looks at a SharePoint list for data which it renders to the screen.  Of course, I used the delegate controls mechanism to put the control in question on the masterpage, so it basically shows up on every page in my publishing site.  Notable exceptions include the admin screens, which use a different masterpage.  I was using the site in question at 1:30pm.  A coworker was using the site at about 3pm.  At about 3:40pm, he noticed that the site's pages wouldn't load and instead he was getting this cryptic error message:

Cannot complete this action.
Please try again.

Some digging on the server found the following error message (I changed some details to protect the innocent):

Event Type:        Warning
Event Source:    ASP.NET 2.0.50727.0
Event Category:                Web Event 
Event ID:              1309
Date:                     4/2/2008
Time:                     3:11:07 PM
User:                     N/A
Computer:          APP1
Description:
Event code: 3005 
Event message: An unhandled exception has occurred. 
Event time: 4/2/2008 3:11:07 PM 
Event time (UTC): 4/2/2008 8:11:07 PM 
Event ID: 9e324f464c8044119c3beec6f1507bc6 
Event sequence: 3 
Event occurrence: 1 
Event detail code: 0 
 
Application information: 
    Application domain: /LM/W3SVC/1106951119/Root-1-128516406489363947 
    Trust level: Full 
    Application Virtual Path: / 
    Application Path: C:\Inetpub\wwwroot\wss\VirtualDirectories\site.company.com443\ 
    Machine name: APP1 
 
Process information: 
    Process ID: 996 
    Process name: w3wp.exe 
    Account name: DOMAIN\MOSS_AppPoolID 
 
Exception information: 
    Exception type: SPException 
    Exception message: Cannot complete this action.

Please try again. 
 
Request information: 
    Request URL: https://site.company.com:443/Pages/Biology.aspx 
    Request path: /Pages/Biology.aspx 
    User host address: 123.456.789.012
    User: admin@domain.local
    Is authenticated: True 
    Authentication Type: Forms 
    Thread account name: DOMAIN\MOSS_AppPoolID 
 
Thread information: 
    Thread ID: 1 
    Thread account name: DOMAIN\MOSS_AppPoolID 
    Is impersonating: False 
    Stack trace:    at Microsoft.SharePoint.Library.SPRequest.GetListItemDataWithCallback(String bstrUrl, String bstrListName, String bstrViewName, String bstrViewXml, SAFEARRAYFLAGS fSafeArrayFlags, ISP2DSafeArrayWriter pSACallback, ISPDataCallback pPagingCallback, ISPDataCallback pSchemaCallback)
   at Microsoft.SharePoint.SPListItemCollection.EnsureListItemsData()
   at Microsoft.SharePoint.SPListItemCollection.get_Count()
   at CustomerAssembly.CustomUserControl.GetUserEnteredData(String emailAddress)
   at CustomerAssembly.CustomUserControl.AddUserDetails()
   at CustomerAssembly.CustomUserControl.Render(HtmlTextWriter writer)
   at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
   at System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer)
   at System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output)
   at System.Web.UI.HtmlControls.HtmlForm.RenderControl(HtmlTextWriter writer)
   at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
   at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
   at System.Web.UI.Page.Render(HtmlTextWriter writer)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
 
 
Custom event details: 

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

Custom event details: For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

I did some research with my favorite search engine and found a pair of links which looked promising but were not really helpful:

 

One of my coworkers noticed the following message in the SharePoint logs:

w3wp.exe (0x0C6C)                 0x1544    Windows SharePoint Services       General       0    High        Failed to compile XML.     
w3wp.exe (0x0C6C)                 0x1570    Windows SharePoint Services       General       8kh7    High        Cannot complete this action.  Please try again.  
w3wp.exe (0x0C6C)                 0x1570    Windows SharePoint Services       General       8l1n    High        An SPRequest object was not disposed before the end of this thread.  To avoid wasting system resources, dispose of this object or its parent (such as an SPSite or SPWeb) as soon as you are done using it.  This object will now be disposed.  Allocation Id: {043EED0C-7CB5-44B4-9A26-429B51270C45}  To determine where this object was allocated, create a registry key at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\HeapSettings.  Then create a new DWORD named SPRequestStackTrace with the value 1 under this key.

Another of my coworkers noticed, almost at the same time, that they could not view the list.  The couldn't view the list, export the list, create a new view for the list, or even view the settings for the list.  We either got the Cannot complete this action error or we got the even stranger <!-- #RENDER FAILED --> message.  I attempted to use the Stramit CAML Viewer to look past the UI and got SoapExceptions trying to retrieve the list.  Every other list worked just fine.

 

At this point we consider the list corrupted and are going to try to restore the site from backup to see if that helps.

Similar Posts

  1. SPLookupField Helper function
  2. When deploying code, please use Solution Packages for both our sakes
  3. Visual Studio reports the project location is not trusted

Comments

  • Matt Ranlett on on 4.08.2008 at 10:09 PM

    Matt Ranlett avatar

    The restore did work. We were back up and running with minimal data loss. Still, the fact that the list got so hopelessly corrupted is troubling!

Comments are closed

Options:

Size

Colors