Symptomen
U wordt aangeraden vooraf berekende partities te gebruiken bij het samenvoegen van replicatie met parameters en join-filters in Microsoft SQL Server 2012 of Microsoft SQL Server 2014. Wanneer u de Insert -instructie in tabellen in de hoofd bovenhoek van het filter (aan de kant van de Publisher) probeert te gebruiken, kunnen de prestaties van de invoegtoepassingteruglopen.
Oplossing
Nadat u deze hotfix hebt toegepast, moet u de sp_vupgrade_mergeobjects procedure handmatig uitvoeren op de gepubliceerde database. Met deze functie kunt u de triggers, opgeslagen procedures en weergaven van een specifiek artikel opnieuw genereren voor het bijhouden en toepassen van gegevenswijzigingen voor de samenvoegreplicatie. Het probleem is voor het eerst opgelost in de volgende cumulatieve update van SQL Server.
Cumulatieve update 5 voor SQL Server 2014 /en-us/help/3011055
Cumulatieve update 3 voor SQL Server 2012 SP2 /en-us/help/3002049
Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige cumulatieve update. Bekijk de nieuwste cumulatieve updates voor SQL Server:
Meer informatie
Invoegen MSmerge_ins_XXXX in<tabel> activering en de procedure wordt aangeroepen met de trigger MSmerge_expand_sp_XXXX. Als u dit probleem ondervindt, ziet u dat de volgende instructie invoegen/selecteren DISTINCT van de procedure voor het samenvoegen van een MSmerge_expand_sp_XXXX veel tijd in beslag neemt. In dit geval zijn de prestaties van afname van afgenomen.
insert into dbo.MSmerge_current_partition_mappings with (rowlock) (publication_number, tablenick, rowguid, partition_id) select distinct 1, mc.tablenick, mc.rowguid, v.partition_id from dbo.MSmerge_contents mc with (rowlock) JOIN dbo.[MSmerge_dynamic_filter_merge_new_settings_PARTITION_VIEW] v with (rowlock) ON mc.tablenick = <tablenick> and mc.rowguid = v.[rowguid] and mc.marker = @child_marker and v.partition_id in (select partition_id from dbo.MSmerge_current_partition_mappings cpm with (rowlock) JOIN dbo.MSmerge_contents mc2 with (rowlock) ON cpm.rowguid = mc2.rowguid and mc2.marker = @marker) where not exists (select * from MSmerge_current_partition_mappings with (readcommitted, rowlock, readpast) where publication_number = 1 and tablenick = <tablenick> and rowguid = v.[rowguid] and partition_id = v.partition_id)
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.