The meta data is from an SQL 2012 Server.
I have posted alot more, find the whole list here.
Goto Definition or MetaData
Definition:
sys.sp_MSget_logicalrecord_lineage(uniqueidentifier @pubid, int @parent_nickname
, uniqueidentifier @parent_rowguid
, bigint @dest_common_gen)
MetaData:
create procedure sys.sp_MSget_logicalrecord_lineage(@pubid uniqueidentifier, @parent_nickname int, @parent_rowguid uniqueidentifier, @dest_common_gen bigint) AS begin declare @metadata_type tinyint, @logical_record_lineage varbinary(311), @retcode smallint, @procname nvarchar(270), @num_dest_changed_rows int exec @retcode = sys.sp_MSrepl_PAL_rolecheck @pubid = @pubid if (@retcode <> 0) or (@@error <> 0) return 1 select @procname= 'dbo.' + select_proc from dbo.sysmergearticles where nickname = @parent_nickname and pubid=@pubid set @metadata_type = 4 set @logical_record_lineage = NULL set @num_dest_changed_rows = 0 -- check for row in base table exec @retcode= @procname @maxschemaguidforarticle = NULL, @type=@metadata_type output, @rowguid=@parent_rowguid if @@error <>0 or @retcode <> 0 return (1) begin tran if (@metadata_type = 3) begin select @metadata_type = 2, @logical_record_lineage = logical_record_lineage from dbo.MSmerge_contents with (serializable) where tablenick = @parent_nickname and rowguid = @parent_rowguid end else begin -- row is not in base table; either it is in tombstone, or it is missing set @metadata_type= 0 select @metadata_type = type, @logical_record_lineage = logical_record_lineage from dbo.MSmerge_tombstone where tablenick = @parent_nickname and rowguid = @parent_rowguid end select @num_dest_changed_rows = count(*) from dbo.MSmerge_contents mc join (select distinct nickname from dbo.sysmergepartitioninfoview where logical_record_parent_nickname = @parent_nickname) as smpi on mc.tablenick = smpi.nickname and mc.logical_record_parent_rowguid = @parent_rowguid and (mc.generation > @dest_common_gen or mc.generation = 0) select @num_dest_changed_rows = @num_dest_changed_rows + count(*) from dbo.MSmerge_tombstone mc join (select distinct nickname from dbo.sysmergepartitioninfoview where logical_record_parent_nickname = @parent_nickname) as smpi on mc.tablenick = smpi.nickname and mc.logical_record_parent_rowguid = @parent_rowguid and (mc.generation > @dest_common_gen or mc.generation = 0) commit tran -- select out our result set select @logical_record_lineage, @metadata_type, @num_dest_changed_rows return (0) end
No comments:
Post a Comment