I have a table that has grown quite large that we are replicating to about 120 subscribers. A FK on that table does not have an index and when I ran an Execution Plan on a query that was causing issues it had this to say -->

/*
Missing Index Details from CaseNotesTimeoutQuerys.sql - mylocal\sqlexpress.MATRIX (WWCARES\pschaller (54))
The Query Processor estimates that implementing the following index could improve the query cost by 99.5556%.
*/

/*
USE [MATRIX]
GO
CREATE NONCLUSTERED INDEX [<Name of Missing Index, sysname,>]
ON [dbo].[tblCaseNotes] ([PersonID])

GO
*/

I would like to add this but I am afraid it will FORCE a reinitialization. Can anyone verify or validate my concerns? Does it even work that way or would I need to run the script on each subscriber?

Any insight would be appreciated.

link|improve this question

You may want to post this on SO. – toor Jun 3 '10 at 0:32
@sims: Done and Thanks. First response SF = 15 hours. Not bad. First response SO = 5 MINUTES, sweet! stackoverflow.com/questions/2965910/… – Refracted Paladin Jun 3 '10 at 13:03
feedback

1 Answer

up vote 1 down vote accepted

you should be able to add the index to the publisher & subscriber without it forcing a re-initialization

link|improve this answer
Will I need to add it, manually with that script, to each subscriber? It will not propagate down, correct? – Refracted Paladin Jun 3 '10 at 12:34
yes, you need to re-initialize with a snapshot & specify to copy non-clustered indexes, or apply it manually a the subscriber – Nick Kavadias Jun 4 '10 at 4:47
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.