2009-11-16 50 views
0

我们有一个自定义的自助服务SharePoint解决方案,允许用户进入配置SharePoint应用程序,遵循3页向导,回答一堆问题并基于在这些问题上,请拨打世界各地的几种网络服务之一,然后在本地农场根据3种网站类型(团队,项目或社区)之一创建新的网站集 - 所有网站都创建为-box团队网站的发布功能装订到它,然后我们(在代码中)以多种方式修改(创建库,删除内容类型等)。错误地同时激活多个站点的发布(站点)功能

当两个用户尝试在同一个农场中创建相同类型的网站(即2个项目网站或2个社区网站)时,就会出现问题。激活网站集发布功能似乎失败了,我无法弄清楚原因。当然,当我们附加一个调试器来通过时,它一切正常。我们已经审查了所有SPSite/SPWeb处置模式以及我们能想到的其他一切 - 问题是,随着Microsoft程序集内发生崩溃,这是一个很难解决的问题。

这是一个示例崩溃,取自SharePoint ULS日志。两个网站创作在几秒钟内发起;第一个成功,第二个失败(第二个总是失败)。我手动添加了换行符,使阅读更容易。有任何想法吗?

Failed to activate feature 'PublishingSite' (Id f6924d36-2fa8-4f0b-b16d-06b7250180fa) associated with site template 'STS#0' at scope "http://projects/sites/heisenbug2". 

Exception: Microsoft.SharePoint.SPException: Provisioning did not succeed. 
Details: Failed to create the 'Reusable Content' library. 
OriginalException: Cannot remove file "Item". Error Code: 16388. ---> 

Microsoft.SharePoint.SPException: Cannot remove file "Item". Error Code: 16388. ---> 

System.Runtime.InteropServices.COMException (0x81070207): Cannot remove file "Item". Error Code: 16388. 
    at Microsoft.SharePoint.Library.SPRequestInternalClass.AddOrDeleteUrl(String bstrUrl, String bstrDirName, Boolean bAdd, UInt32 dwDeleteOp, Int32 iUserId, Guid& pgDeleteTransactionId) 
    at Microsoft.SharePoint.Library.SPRequest.AddOrDeleteUrl(String bstrUrl, String bstrDirName, Boolean bAdd, UInt32 dwDeleteOp, Int32 iUserId, Guid& pgDeleteTransactionId) 

    --- End of inner exception stack trace --- 

    at Microsoft.SharePoint.Library.SPRequest.AddOrDeleteUrl(String bstrUrl, String bstrDirName, Boolean bAdd, UInt32 dwDeleteOp, Int32 iUserId, Guid& pgDeleteTransactionId) 
    at Microsoft.SharePoint.SPFolder.DeleteCore(DeleteOp deleteOp) 
    at Microsoft.SharePoint.SPFolder.Delete() 
    at Microsoft.SharePoint.SPContentType.DeleteFolder() 
    at Microsoft.SharePoint.SPContentTypeCollection.Delete(SPContentTypeId id) 
    at Microsoft.SharePoint.Publishing.Internal.ProvisioningHelper.ReplaceAllContentTypesOnList(SPList list, SPContentType contentType) 
    at Microsoft.SharePoint.Publishing.Internal.RootProvisioner.CreateReusableTextList() 

    --- End of inner exception stack trace --- 

    at Microsoft.SharePoint.Publishing.Internal.RootProvisioner.CreateReusableTextList() 
    at Microsoft.SharePoint.Publishing.Internal.RootProvisioner.<Provision>b__0() 
    at Microsoft.SharePoint.Publishing.CmsSecurityUtilities.RunWithAllowUnsafeUpdates(SPWeb web, CodeToRun secureCode) 
    at Microsoft.SharePoint.Publishing.Internal.RootProvisioner.Provision() 
    at Microsoft.SharePoint.Publishing.PublishingResourcesFeatureHandler.<>c__DisplayClass2.<FeatureActivated>b__0() 
    at Microsoft.SharePoint.Publishing.CmsSecurityUtilities.RunWithWebCulture(SPWeb web, CodeToRun webCultureDependentCode) 
    at Microsoft.SharePoint.Publishing.PublishingResourcesFeatureHandler.FeatureActivated(SPFeatureReceiverProperties receiverProperties) 
    at Microsoft.SharePoint.SPFeature.DoActivationCallout(Boolean fActivate, Boolean fForce) 
    at Microsoft.SharePoint.SPFeature.Activate(SPSite siteParent, SPWeb webParent, SPFeaturePropertyCollection props, Boolean fForce) 
    at Microsoft.SharePoint.SPFeatureCollection.AddInternal(Guid featureId, SPFeaturePropertyCollection properties, Boolean force, Boolean fMarkOnly) 
    at Microsoft.SharePoint.SPFeatureCollection.Add(Guid featureId, Boolean force) 
    at Microsoft.SharePoint.SPFeatureCollection.CheckSameScopeDependency(SPFeatureDefinition featdefDependant, SPFeatureDefinition featdefDependency, Boolean fActivateHidden, Boolean fForce) 
    at Microsoft.SharePoint.SPFeatureCollection.CheckFeatureDependency(SPFeatureDefinition featdefDependant, SPFeatureDependency featdep, Boolean fActivateHidden, Boolean fForce) 
    at Microsoft.SharePoint.SPFeatureCollection.CheckFeatureDependencies(Guid featidDependee, Boolean fActivateHidden, Boolean fForce) 
    at Microsoft.SharePoint.SPFeatureCollection.AddInternal(Guid featureId, SPFeaturePropertyCollection properties, Boolean force, Boolean fMarkOnly) 
    at Microsoft.SharePoint.SPFeatureCollection.Add(Guid featureId, SPFeaturePropertyCollection properties, Boolean fForce) 
    at Microsoft.SharePoint.SPTemplateAssociationElement.EnsureTemplateAssociatedSiteFeaturesActivated(SPSite site, String sTemplateName) 

回答

-1

我不知道共享点,我从来没有遇到过这个问题,我只是在这里扮演队长。

从我所了解的情况来看,当人们创建不同类型的网站时,不会发生该错误。这和错误消息“无法创建'可重用内容'库”和“无法删除文件”项“”向我表明,他们可能都在尝试访问相同的目录结构,同时创建一个新的站点。

可能这两个站点都使用通用索引作为站点目录结构的基础,因此在尝试“CreateReusableTextList()”时会遇到冲突。

这也可以解释为什么团队,项目或社区网站不会发生冲突,因为它们可能使用不同的根目录。