So here's the scenario. We make good use of partition schemes by date so we can age out data in partitioned tables with a sliding window.
So when we want to create new tables for our system, we go to our operation s team and they will tell us which new/existing partition scheme to place our tables on and we will create the filegroups and parition schemes as necessary manually in our DEV/QA/UAT environments.
Then as we develop the actual tables that sit on top of them, we use SQL Source Control and SQL Compare to deploy the changes through the environments.
Because we manually manage creating the filegroups/partition schemes I had selected /IgnoreFileGroups on my SQLCompare command line operations in our "builds" between environments.
However, this option caused all tables to be created in future databases on the PRIMARY (or default I assume) filegroup, even if they were originally committed to source control on a custom filegroup.
So I removed /IgnoreFileGroups from the command line. Problem solved.
Now I am getting changes related to filegroups that I do not want to show up because these are managed manually for a reason. We have huge amounts of data in our production environment so we use compression on older dates. We don't want to or have a need to do that in our DEV/QA/UAT environments.
In addition, I am getting "object different" notifications for other tables that don't actually show any differences in the difference window when you look for details. I assume there is something about their partition schemes or partition functions or filegroup that is different besides compresssion. These are large tables though and it appears that the difference script just creates temporary versions of these tables and rebuilds them with no difference.
If I add back in the /IgnoreFileGroups this problem goes away. (I have also tried changing the filter to ignore partition schemes and partition functions, but adding the IgnoreFileGroups switch back in is the only thing that prevents it)
The UI I can get to work correctly because there is a separate Ignore Data Compression option.
However, the command line documentation does not indicate that you can use that option there.
PS We are in the middle of a release cycle until Wednesday night and I can very easily demonstrate these issues up until then. Screen shots, script files, etc.