Hi,

I'm really trying my best to understand how things work. This exception is totally unclear to me. What I've done:

  • Created an empty DB called 'KLIBNET2_DO_ReferenceData'
  • Changed the UpgradeMode to 'recreate'
  • Ran the program with configuration 'KLIBSQLDatabase'
  • The Domain.Build(conf) returns a 'SchemaSynchronizationException'

It's just not my weekend ;-)

Regards Paul Sinnema Diartis AG

Here's my App.Config:

<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="Xtensive.Storage" type="Xtensive.Storage.Configuration.Elements.ConfigurationSection, Xtensive.Storage" />
  </configSections>

  <Xtensive.Storage>
    <domains>
      <domain name="KLIBSQLDatabase"
              provider="sqlserver"
              upgradeMode="Recreate"
              connectionString="Data Source=DIARTIS-SQL1\SQL2008;Initial Catalog=KLIBNET2_DO_ReferenceData;Persist Security Info=True;User ID=klib;Password=canaansql;MultipleActiveResultSets=True">
        <!--autoValidation="false">-->
        <types>
          <add assembly="KLIBDatabase" />
        </types>
      </domain>
      <!--domain name="Memory" provider="memory" upgradeMode="Default" connectionString="memory://localhost/DetachedMemory">
        <types>
          <add assembly="KLIBDatabase" />
        </types>
      </domain>-->
      <!-- Examples of connectionUrl for other databases:
        <domain name="sqlserver"  upgradeMode="Recreate" connectionUrl="sqlserver://localhost/DO40-Tests">
        <domain name="sqlexpress" upgradeMode="Recreate" connectionUrl="sqlserver://localhost\SQLExpress/DO40-Tests">
        <domain name="pgsql"      upgradeMode="Recreate" connectionUrl="postgresql://do4test:do4testpwd@localhost/do40test?Encoding=ASCII">
        <domain name="oracle"     upgradeMode="Recreate" connectionUrl="oracle://do4test:do4testpwd@localhost/do40test">
        -->
    </domains>
  </Xtensive.Storage>
</configuration>

Here's the Message text from the Exception.

Extracted schema is not compatible with the target schema. Details:
Schema comparison result: TargetIsSuperset
Has unsafe actions: false
Has column type changes: false 
Compatible in ValidateLegacy mode: unknown

Unsafe actions:

Schema hints:

Schema difference:
  "./" != "./" (NodeDifference): Unknown
    +Tables: "./Tables (0)" != "./Tables (3)" (NodeCollectionDifference): 3 change(s)
      "" != "./Tables/Metadata.Assembly" (NodeDifference): Created
        +Columns: "" != "./Tables/Metadata.Assembly/Columns (2)" (NodeCollectionDifference): 2 change(s)
          "" != "./Tables/Metadata.Assembly/Columns/Name" (NodeDifference): Created
            +Type: "" != "Type: String, Length: 1024" (ValueDifference): values differ
          "" != "./Tables/Metadata.Assembly/Columns/Version" (NodeDifference): Created
            +Type: "" != "Type: String?, Length: 64" (ValueDifference): values differ
        +PrimaryIndex: "" != "./Tables/Metadata.Assembly/PrimaryIndex (PK_Assembly)" (NodeDifference): Created
          +IsUnique: "False" != "True" (ValueDifference): values differ
          +KeyColumns: "" != "./Tables/Metadata.Assembly/PrimaryIndex/KeyColumns (1)" (NodeCollectionDifference): 1 change(s)
            "" != "./Tables/Metadata.Assembly/PrimaryIndex/KeyColumns/0" (NodeDifference): Created
              +Direction: "None" != "Positive" (ValueDifference): values differ
              +Value: "" != "./Tables/Metadata.Assembly/Columns/Name" (ValueDifference): values differ
      "" != "./Tables/Metadata.Type" (NodeDifference): Created
        +Columns: "" != "./Tables/Metadata.Type/Columns (2)" (NodeCollectionDifference): 2 change(s)
          "" != "./Tables/Metadata.Type/Columns/Id" (NodeDifference): Created
            +Type: "" != "Type: Int32, Length: null" (ValueDifference): values differ
          "" != "./Tables/Metadata.Type/Columns/Name" (NodeDifference): Created
            +Type: "" != "Type: String?, Length: 1000" (ValueDifference): values differ
        +PrimaryIndex: "" != "./Tables/Metadata.Type/PrimaryIndex (PK_Type)" (NodeDifference): Created
          +IsUnique: "False" != "True" (ValueDifference): values differ
          +KeyColumns: "" != "./Tables/Metadata.Type/PrimaryIndex/KeyColumns (1)" (NodeCollectionDifference): 1 change(s)
            "" != "./Tables/Metadata.Type/PrimaryIndex/KeyColumns/0" (NodeDifference): Created
              +Direction: "None" != "Positive" (ValueDifference): values differ
              +Value: "" != "./Tables/Metadata.Type/Columns/Id" (ValueDifference): values differ
        +SecondaryIndexes: "" != "./Tables/Metadata.Type/SecondaryIndexes (1)" (NodeCollectionDifference): 1 change(s)
          "" != "./Tables/Metadata.Type/SecondaryIndexes/Type.IX_Name" (NodeDifference): Created
            +IsUnique: "False" != "True" (ValueDifference): values differ
            +KeyColumns: "" != "./Tables/Metadata.Type/SecondaryIndexes/Type.IX_Name/KeyColumns (1)" (NodeCollectionDifference): 1 change(s)
              "" != "./Tables/Metadata.Type/SecondaryIndexes/Type.IX_Name/KeyColumns/0" (NodeDifference): Created
                +Direction: "None" != "Positive" (ValueDifference): values differ
                +Value: "" != "./Tables/Metadata.Type/Columns/Name" (ValueDifference): values differ
            +PrimaryKeyColumns: "" != "./Tables/Metadata.Type/SecondaryIndexes/Type.IX_Name/PrimaryKeyColumns (1)" (NodeCollectionDifference): 1 change(s)
              "" != "./Tables/Metadata.Type/SecondaryIndexes/Type.IX_Name/PrimaryKeyColumns/0" (NodeDifference): Created
                +Direction: "None" != "Positive" (ValueDifference): values differ
                +Value: "" != "./Tables/Metadata.Type/Columns/Id" (ValueDifference): values differ
      "" != "./Tables/Metadata.Extension" (NodeDifference): Created
        +Columns: "" != "./Tables/Metadata.Extension/Columns (3)" (NodeCollectionDifference): 3 change(s)
          "" != "./Tables/Metadata.Extension/Columns/Name" (NodeDifference): Created
            +Type: "" != "Type: String, Length: 1024" (ValueDifference): values differ
          "" != "./Tables/Metadata.Extension/Columns/Text" (NodeDifference): Created
            +Type: "" != "Type: String?, Length: null" (ValueDifference): values differ
          "" != "./Tables/Metadata.Extension/Columns/Data" (NodeDifference): Created
            +Type: "" != "Type: Byte[]?, Length: null" (ValueDifference): values differ
        +PrimaryIndex: "" != "./Tables/Metadata.Extension/PrimaryIndex (PK_Extension)" (NodeDifference): Created
          +IsUnique: "False" != "True" (ValueDifference): values differ
          +KeyColumns: "" != "./Tables/Metadata.Extension/PrimaryIndex/KeyColumns (1)" (NodeCollectionDifference): 1 change(s)
            "" != "./Tables/Metadata.Extension/PrimaryIndex/KeyColumns/0" (NodeDifference): Created
              +Direction: "None" != "Positive" (ValueDifference): values differ
              +Value: "" != "./Tables/Metadata.Extension/Columns/Name" (ValueDifference): values differ

Updated at 11.07.2010 11:07:46

Hi,

I just downloaded the DB from my PC at work and now I can open the DB using 'Perform' as UpgradeMode.

The Debugger halt 2 times with something like this:

The assembly with display name 'Xtensive.Storage.Model.XmlSerializers' failed to load in the 'LoadFrom' binding context of the AppDomain with ID 1. The cause of the failure was: System.IO.FileNotFoundException: Could not load file or assembly 'Xtensive.Storage.Model.XmlSerializers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=93a6c53d77a5296c' or one of its dependencies. The system cannot find the file specified.

But the Program continues after these messages:

Regards Paul Sinnema Diartis AG


Updated at 12.07.2010 7:05:36

It's just not my weekend ;-)

Holland lost from Spain too. This was defenitely not my weekend. :(

This thread was imported from our support forum. The original discussion may contain more detailed answer.

asked Jul 11 '10 at 09:31

Paul%20Sinnema's gravatar image

Paul Sinnema
261878896


One Answer:

Try the latest release (v4.3) - exceptions related to upgrade there are much more descriptive, + we've made a lot of fixes related to upgrade layer there.

Concerning "'Xtensive.Storage.Model.XmlSerializers' failed to load in ..." - it's something external to us, we're just deserializing your old model using XML serialization. Deserialization actually runs smoothly. Do you see this exception only in debugger (that's what you might expect - i.e. it is correctly handled by some .NET Framework code later), or it is printed somewhere else (that's strange)?

answered Jul 12 '10 at 18:32

Alex%20Yakunin's gravatar image

Alex Yakunin
29714412

Your answer
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
toggle preview

Subscription:

Once you sign in you will be able to subscribe for any updates here

Tags:

×573

Asked: Jul 11 '10 at 09:31

Seen: 2,176 times

Last updated: Jul 11 '10 at 09:31

powered by OSQA