증상

Microsoft SQL Server 2012 또는 Microsoft SQL Server 2014의 매개 변수화 된 및 조인 필터를 사용 하 여 병합 복제에 precomputed 파티션을 사용할 것으로 가정 합니다. 필터 (게시자)의 루트에서 테이블의 insert 문을 사용 하려고 하면 삽입성능이 저하 될 수 있습니다.

각각의 새로운 새 누적 업데이트에는 이전 누적 업데이트에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. SQL Server에 대 한 최신 누적 업데이트를 확인 하세요.

추가 정보

<테이블에 삽입>트리거 병합 삽입 트리거 MSmerge_ins_XXXX을 수행 하면 트리거가 프로시저 MSmerge_expand_sp_XXXX호출 합니다. 이 문제가 발생 하는 경우 병합 확장 프로시저에 대 한 다음 Insert/Select Distinct 문은 시간이 많이 소모 MSmerge_expand_sp_XXXX . 이 경우 삽입 성능이 저하 됩니다.

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)

상태

Microsoft는 "적용 대상" 절에 나열한 제품에서 이 문제를 확인했습니다.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.