A package with a Script Component that runs fine on SSDT (Visual Studio 2017) does not run when deployed to SQL Server 2016. It throws a ComponentVersionMismatchException.
So, other packages work fine. This one has a data flow with a Script Component destination. When I first started developing the project, I hadn't adjusted the target from SQL 2017 down to SQL 2016. I developed everything and got it to run from SSDT. I'm using a .ispac file to deploy. When deployed, it's throwing the ComponentVersionMismatchException. Here's what I've tried to get a script component to run:
- Change the target to SQL 2016. Failed.
- Make a minor change and ensure that the script is recompiled. Failed
- Ensure that Visual C# 2015 is selected. Failed.
- Make a duplicate of the package, and delete the script component. This succeeded.
- In the duplicate, just add a new empty script component as destination. Failure again.
- Delete the data flow task and rebuild with empty script component. Failed.
- Create a package completely from scratch and recreate the data flow with the same source and empty script component. Failed.
- I tried creating a new project entirely, set the target to SQL 2016, and created a similar dataflow just with a table as source and an empty script component as destination. Still failed.
I would expect that a brand new project targeting SQL 2016 with a script component that does nothing should be able to execute on the server. I'm rather lost at this point.