Issues since converting to SQL Change Automation from ReadyRoll

Hello,

I needed to use ReadyRoll yesterday, and found that I had to update to SQL Change Automation to get it to work.  We are running Visual Studio 2015.

I ran the update and rebooted my machine.  Upon reopening my project and trying to make the changes I needed to make, I'm running into a few problems.

First, I have a script that I manually modified, and I get the usual "Deploy Project" prompt.  I click the button, but the script never actually gets deployed.  The output window shows the following message:

"**These migrations have not yet been deployed. Start your solution to execute these database changes (or alternately click the Deploy button in the ReadyRoll tool-window)."

I shouldn't have to start the solution to deploy, we used to be able to just click the button.  The second half of that message is what I did, but I get this message each time and the scripts don't actually deploy.

I figured I would skip past that for now and confirm I have no other changes that I need to script out.  When I click the refresh button in the SQL Change Automation window, I get a errors on my Static Data scripts that were not happening before we updated.  The errors are:

***** EXECUTING MIGRATION "Static Data\ActivityType.sql", ID: {ad89a0a8-1237-5903-adc3-c9b880eec96e} *****
Msg 156, Level 15, State 1, Server BAITFS, Line 2
Incorrect syntax near the keyword 'NULLIF'.
Msg 102, Level 15, State 1, Server BAITFS, Line 2
Incorrect syntax near 'OFFDECLARE'.
Msg 137, Level 15, State 2, Server BAITFS, Line 2
Must declare the scalar variable "@mergeCount".
Msg 156, Level 15, State 1, Server BAITFS, Line 2
Incorrect syntax near the keyword 'NULLIF'.
Msg 102, Level 15, State 1, Server BAITFS, Line 2
Incorrect syntax near 'OFFDECLARE'.
Msg 137, Level 15, State 2, Server BAITFS, Line 2
Must declare the scalar variable "@mergeCount".

Basically it looks to me like when it goes to execute the script, certain pieces of text are getting pushed together or screwed up.  It seems to be related to spaces and new line characters.  NULLIF is definitely valid syntax, I have definitely declared @mergeCount, and there is nowhere that OFFDECLARE exists.  I have an OFF at the end of one line, 2 new line characters, and then a DECLARE on the next line.  So somehow that's all getting put together into one word.

Any help would be appreciated, we are supposed to be doing a major release in 2 weeks, and the timing of this forced upgrade is rather unfortunate.
Tagged:

Comments

  • Hi berkshireseany,

    Firstly, thank you for upgrading to SQL Change Automation so quickly!

    Looking at the issue you've detailed the behaivour you've mentioned isn't the normal experience a user upgrading to SQL Change Automation should encounter. 

    VS 2015 users will not be forced to upgrade. VS 2017 users do have auto update enabled by default so would get SQL Change Automation automatically unless this is disabled in their options.

    I understand our support team are in contact with you on this issue and my colleagues are looking at the problem as a priority. Please rest assured that as soon as a fix is available we will get back to you immediately.

    Thanks once again for upgrading and apologies you've suffered this issue.
    Development Lead
    Redgate Software
  • Hi Ben,

    Thank you for your response.  Yes I recall reading that was the case, but for some reason on my machine I got a license expired message and was unable to continue using ReadyRoll in my VisualStudio 2015 instance.  Another team member originally had the same problem, but is apparently now ok to continue using ReadyRoll.  I've already performed the upgrade, so it isn't worth me trying to go backwards at this point.

    I did send a sample project over through the support request that was opened.  Using that project should show both issues I am running into - the deploy project button not working, and the static data refresh error.

    Additionally, I am occasionally getting an error with one of the SQL Change Automation windows when opening Visual Studio 2015.  I got it a few times the first day of install, but it seemed to go away until I got it once again this morning.  The error is:

    System.ArgumentException: The ViewManager.ActiveView must be a View contained within the ViewManager.WindowProfile.
       at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
       at RedGate.Versioning.Client.VsShell.VisualStudio.Windows.ToolWindow.ToolWindowVisibility.FindOrCreateAndShowToolWindow()
       at RedGate.Versioning.Client.VsShell.VisualStudio.Windows.ToolWindow.ToolWindowVisibility.<LoadProjectInToolWindowAndShowWindowAsync>d__14.MoveNext()
    --- End of stack trace from previous location where exception was thrown ---
       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
       at RedGate.Versioning.Client.VsShell.VisualStudio.ShellIntegration.Events.VsSolutionEvents.<OnAfterOpenProjectAsync>d__33.MoveNext()
    --- End of stack trace from previous location where exception was thrown ---
       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
       at RedGate.Versioning.Client.VsShell.VisualStudio.EventsDispatcher.<InitializeFirstLoadedProjectAsync>d__21.MoveNext()
    --- End of stack trace from previous location where exception was thrown ---
       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
       at RedGate.Versioning.Client.VsShell.VisualStudio.VsPackage.EntryPoints.SqlChangeAutomationVsPackage.<<InitializeAsync>b__2_0>d.MoveNext()
    --- End of stack trace from previous location where exception was thrown ---
       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
       at RedGate.Versioning.Client.VsShell.Utilities.Threading.TaskRunner.<>c__DisplayClass13_0.<<FileAndForget>b__0>d.MoveNext()

    Thanks,

    Sean
  • Hi berkshireseany,

    Firstly, thank you for upgrading to SQL Change Automation so quickly!

    Looking at the issue you've detailed the behaivour you've mentioned isn't the normal experience a user upgrading to SQL Change Automation should encounter. 

    VS 2015 users will not be forced to upgrade. VS 2017 users do have auto update enabled by default so would get SQL Change Automation automatically unless this is disabled in their options.

    I understand our support team are in contact with you on this issue and my colleagues are looking at the problem as a priority. Please rest assured that as soon as a fix is available we will get back to you immediately.

    Thanks once again for upgrading and apologies you've suffered this issue.
    Development Lead
    Redgate Software
  • CharlesPCharlesP Posts: 2 New member
    have a very similar problem every time I try and deploy I get the message

    "**These migrations have not yet been deployed. Start your solution to execute these database changes (or alternately click the Deploy button in the ReadyRoll tool-window)."

    However, when I start the solution or click the deploy button, nothing happens but the same message
  • Hello,

    Nobody has yet answered my question about the ViewManager.ActiveView error from above.  An answer would be appreciated.

    Thanks,

    Sean
  • Hi Sean,

    With regards to the issue around the manually modified script and trying to deploy but seeing the message:-

    "**These migrations have not yet been deployed. Start your solution to execute these database changes (or alternately click the Deploy button in the ReadyRoll tool-window)."

    This issue was resolved by upgrading the ReadyRoll.MSBuild package to 3.0+ by following these steps in the documentation.
    Development Lead
    Redgate Software
Sign In or Register to comment.