Comparing Assemblies
loomalinx
Posts: 6
We are using SQL Compare 11 projects and SQL Compare 10 from the command line. There is a new assembly in the databases that get compared and it is the only one. It comes up as a schema difference every time even though no functionality has changed. We don't want the ALTER ASSEMBLY statement to be generated into all our deployment scripts. I think Redgate is picking up a binary difference because the assembly gets recreated from source control and has a build time stamp or something? Is there any way to either get SQL Compare to ignore assemblies all together or, ideally, for it only to pick up an assembly difference if the assembly is actually functionally different?
Comments
There is filter option in compare for assemblies which can be unchecked.
In the GUI after compare has run click on Filter Setup and then uncheck Assembly.
More information of filters can be found here, including information about using filters in the command line:
http://documentation.red-gate.com/displ ... ng+filters
Another option, but I'm not sure whether this is what you are looking for is as follows:
There is also an option before comparing 'Don't use ALTER ASSEMBLY to change change CLR objects'
This can be found by going to the options tab in the new project window under Behaviour.
I hope this information is helpful.
Redgate Support
I can see how to filter the results so that the Assembly does not appear in the results. For our command line comparisons we actually use an argfile and I have been able to exclude comparison of the assembly with something like this in the argfile:
<exclude>Assembly:AssemblyName</exclude>. I can use this as a work around but what would be ideal is if a functional difference between assemblies in the compared databases was reported but a binary difference that was just the result of the assembly having been recompiled, would not result in a reported difference.
Please could you confirm whether this would be possible or not, because I'm not actually keen to switch off Assembly comparisons all together.
Thanks.
I have checked with the development team and I'm afraid that the way SQL Compare deals with assemblies is to flag any change at a binary level. Due to the nature of assembly files it is difficult to deal with them in another way without ignoring something that other customers wish to be flagged.
If you like you can create a topic on our user voice site, suggesting the change, which other users can then vote on:
https://redgate.uservoice.com/forums/141379-sql-compare
However for the reason stated above this is not something that is likely to be implemented soon.
Apologies,
Nick
Redgate Support