October 19, 2006 at 10:18 am
View Conflicts is showing 21,000 conflicts on a particular table, but if we review the conflict_table for the table there are only 16,000 records in it. We often see this, what's the reason? How can we review all the conflicts? We want to query the tables directly to see how many of which type of reason the conflict occurred, to narrow down what we're dealing with.
October 20, 2006 at 2:59 am
Is this a table named "conflict" or a table with which there is some data load which generates "conflicts"....your problem description is too vague.
You will have to provide DDL and a sample (more detailed) description of the code/process which is generating this problem.
Step back.....and imagine we know nothing at all about your environment...and then try to give us as much info as possible....(because the imagination bit is real!!!...we do know nothing about your environment!)
October 20, 2006 at 5:31 am
I'm referring to the conflict table itself, conflict_mydb_mytable. The process creating the conflicts isn't the issue, some are because a record was edited on one side, and deleted on the other, or because of a trigger mismatch. I just want to be able to query the conflict table to summarize how many of which error there are.
I'm trying to understand where the conflict total count is coming from because the number of records in conflict_mydb_mytable doesn't match the total number of records the conflict viewer interface in ent mgr lists for mytable. I see part of the total is also coming from msmerge_delete_conflicts.
Does this make more sense?
October 20, 2006 at 5:43 am
Your issue now makes sense given that this is the 'replication' forum.....I must at the forum title more to get the context of the question. You may benefit by posting this on sqlteam.com as well.....there are some there that work in this environment....(I don't)
October 20, 2006 at 2:14 pm
Hi Mindy,
Although I don't have a direct answer to your question, I do have a suggestion. I often wonder just what the heck the Enterprise Manager is doing behind the scenes to arrive at some of the strange results that it presents. When I feel sufficiently ambitious, I will fire up the SQL profiler and capture the commands that EM sends to SQL server.
I've learned quite a lot by doing that. You'll need to figure out which connection (SPID) the EM is using and filter on that in the profiler. Click on Management > CurrentActivity > Locks / Object and you should see (among other things) tempdb.dbo.##lockinfoXX. XX is your SPID.
Now start up a profiler and filter on your SPID. The profiler will capture all of the SQL code that EM is running to give you its display. You should be able to see what queries the conflict viewer is running, assuming that it runs on the same SPID as all of the other EM stuff.
hth jg
October 20, 2006 at 2:20 pm
Wouldn't sp_updatestats fix this problem??
October 20, 2006 at 2:35 pm
I don't think it's a problem, I think it tallies from multiple sources and I'd just like to know what.
Thanks for the Profiler idea, that's a good one. I use it all the time to capture what's going on in the apps I QA, I didn't think to apply it to Ent Mgr!
October 20, 2006 at 2:43 pm
If it's not a problem, then why post a question about it ?
Did you try it and see if it fixed the non-problem??
October 20, 2006 at 2:59 pm
Hi Mindy,
Sometimes ninjas forget that us normal people want to know what is really going on. They are too busy being ninjas. (heh)
The usage of sp_updatestats probably won't fix the non-problem. Besides, it uses CURSORS and DYNAMIC SQL so it must be bad. (heh heh)
sp_MShelpmergeconflictcounts is what EM calls to give you the list of conflicts for a given publication. I don't see anything in there that would be affected by what sp_updatestats does. You can get QA to script out the code. It's fun to look at the sp_ procs' in your spare time. Another great learning opportunity to see how much of SQL server is actually written in T-SQL.
And I found out that the cornflict [sic] viewer launches a new program and thus a new connection so my above method won't give you the right SPID for filtering. Instead you can use Application Name like Conflict%
You have a great weekend!
jg
October 23, 2006 at 6:02 am
Or the Ninja remembers this line :
"I'm trying to understand where the conflict total count is coming from because the number of records in conflict_mydb_mytable doesn't match the total number of records the conflict viewer interface in ent mgr lists for mytable. "
Viewing 10 posts - 1 through 9 (of 9 total)
You must be logged in to reply to this topic. Login to reply