patternMinor
Property class Length Annotation PersistedResolvableAnnotation
Viewed 0 times
lengthpersistedresolvableannotationpropertyclassannotation
Problem
I am trying to deploy an ssdt project using sqlpackage.exe utility.
I get the following error (in German):
Fehler bei der Erstellung des Bereitstellungsplans. Die Bereitstellung kann nicht fortgesetzt werden. Die Property-Klasse
Length ist nicht in der Element- oder Annotation-Klasse
PersistedResolvableAnnotation enthalten.
It means sth. like:
Error while creating deployment plan. Deployment cannot proceed. The
property-class Length is not included in the element or annotation
class PersistedResolvableAnnotation.
I could not find much information about "PersistedResolvableAnnotation". But I realized that it is included in the model.xml in the dacpac.
It contains handful of SqlLogins defined similar to this one:
Angela (and the other candidates) do not exist on destination server as Login, although they are registered database users in the target db. I would expect another error - if any - than this useless one.
The database the project is based on a pretty old SQL Server verison. Is it possible that this is some deprecated feature / syntax or property coming from Sql Server version and is simply not supported ?
Does anyone know more details?
I get the following error (in German):
Fehler bei der Erstellung des Bereitstellungsplans. Die Bereitstellung kann nicht fortgesetzt werden. Die Property-Klasse
Length ist nicht in der Element- oder Annotation-Klasse
PersistedResolvableAnnotation enthalten.
It means sth. like:
Error while creating deployment plan. Deployment cannot proceed. The
property-class Length is not included in the element or annotation
class PersistedResolvableAnnotation.
I could not find much information about "PersistedResolvableAnnotation". But I realized that it is included in the model.xml in the dacpac.
It contains handful of SqlLogins defined similar to this one:
Angela (and the other candidates) do not exist on destination server as Login, although they are registered database users in the target db. I would expect another error - if any - than this useless one.
The database the project is based on a pretty old SQL Server verison. Is it possible that this is some deprecated feature / syntax or property coming from Sql Server version and is simply not supported ?
Does anyone know more details?
Solution
I found the issue myself. I will document it in case anyone else is facing the issue in future.
The following user definition:
created the following code in the model.xml that avoids publishing, maybe because the schema (Angela) used there is invalid because it simply does not exist:
After changing the user definition to:
the model lookes as followes and could be published:
I have a feeling that this strange behavior is kind of a follow-up of another misbehavior because I would expect the not existing schema to raise a compiler error.
The following user definition:
CREATE USER [Angela] WITHOUT LOGIN
WITH DEFAULT_SCHEMA = [Angela];created the following code in the model.xml that avoids publishing, maybe because the schema (Angela) used there is invalid because it simply does not exist:
After changing the user definition to:
CREATE USER [Angela] WITHOUT LOGIN
WITH DEFAULT_SCHEMA = [dbo];the model lookes as followes and could be published:
I have a feeling that this strange behavior is kind of a follow-up of another misbehavior because I would expect the not existing schema to raise a compiler error.
Code Snippets
CREATE USER [Angela] WITHOUT LOGIN
WITH DEFAULT_SCHEMA = [Angela];<Element Type="SqlUser" Name="[Angela]">
<Property Name="IsWithoutLogin" Value="True" />
<Relationship Name="DefaultSchema">
<Entry>
<Annotation Type="PersistedResolvableAnnotation" Name="[Angela]">
<Property Name="TargetTypeStorage" Value="SqlSchema" />
<Property Name="Length" Value="9" />
<Property Name="Offset" Value="63" />
</Annotation>
</Entry>
</Relationship>
</Element>CREATE USER [Angela] WITHOUT LOGIN
WITH DEFAULT_SCHEMA = [dbo];<Element Type="SqlUser" Name="[Angela]">
<Property Name="IsWithoutLogin" Value="True" />
</Element>Context
StackExchange Database Administrators Q#130191, answer score: 7
Revisions (0)
No revisions yet.