What are the challenges you face when working across database platforms? Take the survey
Options

Errors after installing latest version of

Visual Studio prompted me this morning that there is a new version of ReadyRoll (I can't recall the version number).

After installing this I now receive an error (see below). Please advice how to fix, thanks.

Data = System.Collections.ListDictionaryInternal
Message = Error encountered while parsing migration 'Migrations\1.0.0\001.sql': Method not found: 'Void Microsoft.SqlServer.TransactSql.ScriptDom.TSql130Parser..ctor(Boolean, Microsoft.SqlServer.TransactSql.ScriptDom.SqlEngineType)'.
InnerException = System.MissingMethodException: Method not found: 'Void Microsoft.SqlServer.TransactSql.ScriptDom.TSql130Parser..ctor(Boolean, Microsoft.SqlServer.TransactSql.ScriptDom.SqlEngineType)'.
at ReadyRoll.TransactSql.TSqlScriptParser._getParser(SqlDSP sqlDsp)
at ReadyRoll.TransactSql.TSqlScriptParser.ParseScript(String scriptText, FileInfo scriptFile, IList`1& errors, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean forceContinueOnError)
at ReadyRoll.Migrations.MigrationLoader.Load(Migration migration, Boolean emptyFile, Boolean metaDataOnly, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean forceContinueOnError, Boolean fixMetadata, Nullable`1 migrationIndex)
TargetSite = Void Load(ReadyRoll.Migration, Boolean, Boolean, Microsoft.Build.Utilities.TaskLoggingHelper, ReadyRoll.Entities.SqlDSP, Boolean, Boolean, System.Nullable`1[System.Int32])
StackTrace = at ReadyRoll.Migrations.MigrationLoader.Load(Migration migration, Boolean emptyFile, Boolean metaDataOnly, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean forceContinueOnError, Boolean fixMetadata, Nullable`1 migrationIndex)
at ReadyRoll.Migrations.MigrationFactory.CreateAndLoadMigration(FileInfo file, DirectoryInfo projectBaseDir, Boolean emptyFile, Boolean metaDataOnly, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean deployOnceUseSemver, MigrationType migrationType, IEnumerable`1 objFiles, Boolean fixMetadata, Nullable`1 migrIdx)
at ReadyRoll.Migrations.DatabaseProjectMigrationLoader.<>c__DisplayClass0_0.<LoadMigrationsIntoProject>b__0(FileInfo file, ParallelLoopState state, Int64 index)
HelpLink =
Source = ReadyRoll
HResult = -2146233088
Tagged:

Comments

  • Options
    christianaccachristianacca Posts: 24 Bronze 1
    Worse still, I have uninstalled the faulty version, and then installed the previous version I had (1.3.21.2034) - this is now failing when lauching Visual Studio.

    I no longer have the ReadyRoll menu in Visual Studio. Please advice how I can get back to at least a working position.

  • Options
    christianaccachristianacca Posts: 24 Bronze 1
    FYI, the error lauching VS prompts that information has been logged to "ActivityLog.xml". I have attached this file to the post
  • Options
    dnlnlndnlnln Posts: 234 Gold 2
    edited May 5, 2017 3:33AM
    I'm sorry to hear that you've run into a problem with updating your ReadyRoll installation.

    It sounds as though something may have gone wrong with upgrading one of the dependency assemblies. Then, upon downgrading, it seems that Visual Studio did not refresh the MEF cache for VS extensions, resulting in the startup error.

    To resolve this, would you mind trying a full uninstall and re-install of ReadyRoll as follows:
    1. Close Visual Studio and use Add/Remove programs to uninstall ReadyRoll
    2. Confirm that the following folder is removed from your PC: C:\Program Files (x86)\MSBuild\ReadyRoll
    3. Start Visual Studio. You should see a dialog appear briefly, indicating that the MEF cache is being rebuilt
    4. Close Visual Studio and install the latest version of ReadyRoll (direct link)
    5. Start Visual Studio. Again, the MEF cache should be rebuilt
    If you continue to receive the error upon startup, please try the following procedure to reset the MEF manually:
    https://forum.red-gate.com/discussion/comment/143557/#Comment_143557

    I hope this helps. Please let me know how you go
    Daniel Nolan
    Product Manager
    Redgate Software
  • Options
    christianaccachristianacca Posts: 24 Bronze 1
    Hi Daniel,

    Unfortunately I still can't get up an running even after following the steps.

    After installing via the direct link provided I receive the following error (see also screenshot attached):

    Message = Error encountered while parsing migration 'Migrations\1.0.0\001.sql': Method not found: 'Void Microsoft.SqlServer.TransactSql.ScriptDom.TSql130Parser..ctor(Boolean, Microsoft.SqlServer.TransactSql.ScriptDom.SqlEngineType)'.
    Data = System.Collections.ListDictionaryInternal
    InnerException = System.MissingMethodException: Method not found: 'Void Microsoft.SqlServer.TransactSql.ScriptDom.TSql130Parser..ctor(Boolean, Microsoft.SqlServer.TransactSql.ScriptDom.SqlEngineType)'.
    at ReadyRoll.TransactSql.TSqlScriptParser._getParser(SqlDSP sqlDsp)
    at ReadyRoll.TransactSql.TSqlScriptParser.ParseScript(String scriptText, FileInfo scriptFile, IList`1& errors, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean forceContinueOnError)
    at ReadyRoll.Migrations.MigrationLoader.Load(Migration migration, Boolean emptyFile, Boolean metaDataOnly, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean forceContinueOnError, Boolean fixMetadata, Nullable`1 migrationIndex)
    TargetSite = Void Load(ReadyRoll.Migration, Boolean, Boolean, Microsoft.Build.Utilities.TaskLoggingHelper, ReadyRoll.Entities.SqlDSP, Boolean, Boolean, System.Nullable`1[System.Int32])
    StackTrace = at ReadyRoll.Migrations.MigrationLoader.Load(Migration migration, Boolean emptyFile, Boolean metaDataOnly, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean forceContinueOnError, Boolean fixMetadata, Nullable`1 migrationIndex)
    at ReadyRoll.Migrations.MigrationFactory.CreateAndLoadMigration(FileInfo file, DirectoryInfo projectBaseDir, Boolean emptyFile, Boolean metaDataOnly, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean deployOnceUseSemver, MigrationType migrationType, IEnumerable`1 objFiles, Boolean fixMetadata, Nullable`1 migrIdx)
    at ReadyRoll.Migrations.DatabaseProjectMigrationLoader.<>c__DisplayClass0_0.<LoadMigrationsIntoProject>b__0(FileInfo file, ParallelLoopState state, Int64 index)
    HelpLink =
    Source = ReadyRoll
    HResult = -2146233088

    Here's exactly what I tried:

    1. Uninstall of Ready Roll (I checked that the folder 'ReadyRoll' was removed from 'C:\Program Files (x86)\MSBuild')
    2. Delete the folder '%AppData%\..\Local\Microsoft\VisualStudio\14.0\ComponentModelCache'
    3. Launch Visual Studio (I see messages talking about MEF being composed)
    4. Close Visual Studio
    5. Full install of Ready Roll using the direct link provided
    6. Launch Visual Studio
    7. Open the solution containing my existing ReadyRoll project

    I have also attached a screenshot showing the Migrations\1.0.0\001.sql loaded in VS after receiving the error message above

  • Options
    Sorry to hear that didn't help. I'm looking at another couple of things for you to try and will get back to you shortly. Thanks for your patience!
    Daniel Nolan
    Product Manager
    Redgate Software
  • Options
    Would you be able to check whether the latest version of SSDT is installed? The working theory here is that an assembly being loaded into the IDE by that extension is conflicting with the version that ships with ReadyRoll.

    This can be determined from the Extensions and Updates dialog, under the Tools menu. If an item appears on the Updates/Product Updates tab called Microsoft SQL Server Data Tools, would you be able to try installing it and seeing if the issue continues after that?
    Daniel Nolan
    Product Manager
    Redgate Software
  • Options
    christianaccachristianacca Posts: 24 Bronze 1
    Yes that was it - or at least after the install of the update, the problem went away.

    For the record, SSDT was on version 14.0.60629.0, and now after the update I'm on 14.0.61021.0.

    Thanks for your help Daniel
  • Options
    My pleasure, thanks for confirming the fix. We're now investigating why the assembly conflict is occurring so that a more permanent solution can be found for this. I'll post here once I have an update
    Daniel Nolan
    Product Manager
    Redgate Software
Sign In or Register to comment.