Actually when you do a compare with Designer on schema mapping rule, GCV, mapping table, ECMA script library etc... You could have difference just because the order is not the same. It could be really great that the compare features view these objets are equals if it is just an order differences.
by: Jean-Baptiste C. | over a year ago | Designer
Comments
Filter objects, the order sort of matters, since the way that Designer calculates checksums on the filter, and decides if the filter is 'dirty' is also order dependent. In fact all the checksums will differ if the order is different, ergo that is a difference that matters.
I can see that the order would matter for the checksums used in Designer but do they matter to the actual engine when the driver is running? I would guess it doesn't matter to the engine, so as far as it is concerned there isn't a substantive difference between what is in Designer and in eDir if it is just in a different order. Obviously in policies the order of rules and policies can have an impact on operation so those order differences need to be flagged. But filters, GCVs, mapping tables, etc... would not have an impact as far as I know.
It would be nice if maybe the way the checksums are calculated could be done differently so that they could see there is a substantive difference that would affect operation. But if it is an order difference that has no substantive affect on the operation of the driver it would not flag it as different. Maybe something such as internally sorting and then generating the checksum on the internally sorted data. Kind of how in programming people will uppercase a user entered string to do a comparison on it so they ignore case but they store the value in whatever case the user entered.
Wait, are you thinking of linkage ordering? Or within an object? Checksum is used within objects. The ordering of objects is based on Package Linkage, and it matters, since if there is a predicated order, and it is different, then it is worth calling out.
I was thinking within an object. For example if you have some GCVs defined on a driver and you go in and change the order that the GCVs display when you look at the GCV section of the driver properties. Designer will show that as a difference even though I don't believe it would be a difference that would have any impact to the function of the driver.
You're true Chad. It is for GCV or schema mapping, mapping table objects where order have no importance.