1

We are evaluating upgrading from SharePoint 2016 to 2019, and one of the features we still use is content deployment for our Publishing Site. It's been working just fine in 2016, but in 2019, it's failing when importing the limited access role:

[Progress] Importing Role Limited Access. [FatalError] [-2146233079] [System.InvalidOperationException] [Updates to system roles is not allowed.] [Debug] at Microsoft.SharePoint.Deployment.RolesImport.ProcessSimpleElement(ImportStreamingContext context, XmlReader xr, SqlSession session, SqlCommand comm, Int32 iRow) at Microsoft.SharePoint.Deployment.SqlBatchImport.Run() at Microsoft.SharePoint.Deployment.SecurityObjectSerializer.SetObjectData(Object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector) at Microsoft.SharePoint.Deployment.XmlFormatter.CallSetObjectData(Object obj, SerializationInfo objectData, ISerializationSurrogate surrogate, ISurrogateSelector selector) at Microsoft.SharePoint.Deployment.XmlFormatter.ParseObjectDirect(Object objParent, Type objectType) at Microsoft.SharePoint.Deployment.XmlFormatter.DeserializeObject(Type objectType, Boolean isChildObject, DeploymentObject envelope) at Microsoft.SharePoint.Deployment.XmlFormatter.Deserialize(Stream serializationStream) at Microsoft.SharePoint.Deployment.ObjectSerializer.Deserialize(Stream serializationStream) at Microsoft.SharePoint.Deployment.SPImport.DeserializeObjects() at Microsoft.SharePoint.Deployment.SPImport.Run()

If I set the "Security information in the content deployment" drop down to "None" (inside of the Content Deployment Path settings), I get this error instead:

[FatalError] [-2147286782] [Microsoft.SharePoint.SPException] [Attempted to use an object that has ceased to exist. (Exception from HRESULT: 0x80030102 (STG_E_REVERTED))] [Debug] at Microsoft.SharePoint.SPGlobal.HandleComException(COMException comEx) at Microsoft.SharePoint.Library.SPRequest.GetRoleDefsDataAsSafeArray(String bstrUrl, UInt32 dwRolesScope, Guid& pguidScopeId, UInt32& pdwRowCount, Object& pvarDataSet) at Microsoft.SharePoint.SPRoleDefinitionCollection.Init() at Microsoft.SharePoint.SPWeb.get_HasUniqueRoleDefinitions() at Microsoft.SharePoint.Deployment.SecurityObjectSerializer.SetObjectData(Object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector) at Microsoft.SharePoint.Deployment.XmlFormatter.CallSetObjectData(Object obj, SerializationInfo objectData, ISerializationSurrogate surrogate, ISurrogateSelector selector) at Microsoft.SharePoint.Deployment.XmlFormatter.ParseObjectDirect(Object objParent, Type objectType) at Microsoft.SharePoint.Deployment.XmlFormatter.DeserializeObject(Type objectType, Boolean isChildObject, DeploymentObject envelope) at Microsoft.SharePoint.Deployment.XmlFormatter.Deserialize(Stream serializationStream) at Microsoft.SharePoint.Deployment.ObjectSerializer.Deserialize(Stream serializationStream) at Microsoft.SharePoint.Deployment.SPImport.DeserializeObjects() at Microsoft.SharePoint.Deployment.SPImport.Run()

Any ideas what I should look at? The site itself appears to work just fine. The 2016 deployment logs shows that it also does try to import the limited access role, but it doesn't crash and burn there, so this makes me think something's changed with how permissions are handled in 2019.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.