MSSQL 2008R2: Phantom Index UpdatesSQL Server 2000 tablesDoes index fill factor become meaningless on large tables?Mysterious timeouts in MSSQL 2000null values stored in databaseLarge script, many inserts and deletes: There is insufficient system memory to run this queryRow size, indexes and varchar(max)sql server shard lock issueSQL Server normalizing for performanceMS SQL after upgrade from 2014 to 2016 JOIN takes longerSQL change column datatype in production

Taxi Services at Didcot

Soft question: Examples where lack of mathematical rigour cause security breaches?

Using a found spellbook as a Sorcerer-Wizard multiclass

How can drunken, homicidal elves successfully conduct a wild hunt?

How to project 3d image in the planes xy, xz, yz?

What are the peak hours for public transportation in Paris?

Is open-sourcing the code of a webapp not recommended?

What makes an item an artifact?

Are there downsides to using std::string as a buffer?

Do simulator games use a realistic trajectory to get into orbit?

How to retract an idea already pitched to an employer?

Should I compare a std::string to "string" or "string"s?

Confusion about off peak timings of London trains

Payment instructions allegedly from HomeAway look fishy to me

Can an Aarakocra use a shield while flying?

What's the name of this light airplane?

Trapping Rain Water

Should an arbiter claim draw at a K+R vs K+R endgame?

What should the arbiter and what should have I done in this case?

Was the Tamarian language in "Darmok" inspired by Jack Vance's "The Asutra"?

Words that signal future content

Chemmacros scheme translation

Why doesn't Adrian Toomes give up Spider-Man's identity?

What risks are there when you clear your cookies instead of logging off?



MSSQL 2008R2: Phantom Index Updates


SQL Server 2000 tablesDoes index fill factor become meaningless on large tables?Mysterious timeouts in MSSQL 2000null values stored in databaseLarge script, many inserts and deletes: There is insufficient system memory to run this queryRow size, indexes and varchar(max)sql server shard lock issueSQL Server normalizing for performanceMS SQL after upgrade from 2014 to 2016 JOIN takes longerSQL change column datatype in production






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








1















I was trying to run the following query:



 Update A 
SET A.Col1 = B.Col1,
...
A.ColN = B.ColN
FROM A INNER JOIN B
ON (A.Col1 = B.Col1)
WHERE B.Col2 = X AND (A.Col1 <> B.Col1 OR ... OR A.ColN <> B.ColN)


The query affects only 4700 rows (and 7 columns) in its update. But it takes over 10 minutes and blocks multiple other users from many other tables.



I checked the query plan and no less than 12 indexes are updated as a result of this query. I know that the legacy databases are overindexed. That isn't my problem right now.



My question is this: 7 of the indexes being updated (and the 3 most costly ones) are not from table A or table B. I've checked all triggers on the table and none of them lead to any effect on the two other tables being updated.



How might this be happening? What mechanism is there that could cause these phantom updates?










share|improve this question
























  • Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table.

    – Aushin
    Feb 18 '11 at 20:36











  • please post this as an answer using the Answer Your Question button below.

    – Ben Pilbrow
    Feb 18 '11 at 20:51

















1















I was trying to run the following query:



 Update A 
SET A.Col1 = B.Col1,
...
A.ColN = B.ColN
FROM A INNER JOIN B
ON (A.Col1 = B.Col1)
WHERE B.Col2 = X AND (A.Col1 <> B.Col1 OR ... OR A.ColN <> B.ColN)


The query affects only 4700 rows (and 7 columns) in its update. But it takes over 10 minutes and blocks multiple other users from many other tables.



I checked the query plan and no less than 12 indexes are updated as a result of this query. I know that the legacy databases are overindexed. That isn't my problem right now.



My question is this: 7 of the indexes being updated (and the 3 most costly ones) are not from table A or table B. I've checked all triggers on the table and none of them lead to any effect on the two other tables being updated.



How might this be happening? What mechanism is there that could cause these phantom updates?










share|improve this question
























  • Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table.

    – Aushin
    Feb 18 '11 at 20:36











  • please post this as an answer using the Answer Your Question button below.

    – Ben Pilbrow
    Feb 18 '11 at 20:51













1












1








1








I was trying to run the following query:



 Update A 
SET A.Col1 = B.Col1,
...
A.ColN = B.ColN
FROM A INNER JOIN B
ON (A.Col1 = B.Col1)
WHERE B.Col2 = X AND (A.Col1 <> B.Col1 OR ... OR A.ColN <> B.ColN)


The query affects only 4700 rows (and 7 columns) in its update. But it takes over 10 minutes and blocks multiple other users from many other tables.



I checked the query plan and no less than 12 indexes are updated as a result of this query. I know that the legacy databases are overindexed. That isn't my problem right now.



My question is this: 7 of the indexes being updated (and the 3 most costly ones) are not from table A or table B. I've checked all triggers on the table and none of them lead to any effect on the two other tables being updated.



How might this be happening? What mechanism is there that could cause these phantom updates?










share|improve this question
















I was trying to run the following query:



 Update A 
SET A.Col1 = B.Col1,
...
A.ColN = B.ColN
FROM A INNER JOIN B
ON (A.Col1 = B.Col1)
WHERE B.Col2 = X AND (A.Col1 <> B.Col1 OR ... OR A.ColN <> B.ColN)


The query affects only 4700 rows (and 7 columns) in its update. But it takes over 10 minutes and blocks multiple other users from many other tables.



I checked the query plan and no less than 12 indexes are updated as a result of this query. I know that the legacy databases are overindexed. That isn't my problem right now.



My question is this: 7 of the indexes being updated (and the 3 most costly ones) are not from table A or table B. I've checked all triggers on the table and none of them lead to any effect on the two other tables being updated.



How might this be happening? What mechanism is there that could cause these phantom updates?







sql-server update






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited May 21 at 13:46









window.document

1436




1436










asked Feb 18 '11 at 20:02









AushinAushin

1456




1456












  • Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table.

    – Aushin
    Feb 18 '11 at 20:36











  • please post this as an answer using the Answer Your Question button below.

    – Ben Pilbrow
    Feb 18 '11 at 20:51

















  • Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table.

    – Aushin
    Feb 18 '11 at 20:36











  • please post this as an answer using the Answer Your Question button below.

    – Ben Pilbrow
    Feb 18 '11 at 20:51
















Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table.

– Aushin
Feb 18 '11 at 20:36





Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table.

– Aushin
Feb 18 '11 at 20:36













please post this as an answer using the Answer Your Question button below.

– Ben Pilbrow
Feb 18 '11 at 20:51





please post this as an answer using the Answer Your Question button below.

– Ben Pilbrow
Feb 18 '11 at 20:51










2 Answers
2






active

oldest

votes


















1














Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table. Since the foreign key was being updated, the rows referenced by the foreign key had to be updated, causing the index updates on the affected tables.






share|improve this answer
































    0














    Do you have indexed views that also reference those tables? An update to those tables would also cause index updates to the indexed views.






    share|improve this answer























    • This could have also been the potential answer (I accidentally happened upon it myself a moment ago), so thank you. I hadn't thought of this either.

      – Aushin
      Feb 18 '11 at 20:55











    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "2"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f237441%2fmssql-2008r2-phantom-index-updates%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1














    Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table. Since the foreign key was being updated, the rows referenced by the foreign key had to be updated, causing the index updates on the affected tables.






    share|improve this answer





























      1














      Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table. Since the foreign key was being updated, the rows referenced by the foreign key had to be updated, causing the index updates on the affected tables.






      share|improve this answer



























        1












        1








        1







        Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table. Since the foreign key was being updated, the rows referenced by the foreign key had to be updated, causing the index updates on the affected tables.






        share|improve this answer















        Nevermind, I discovered the issue. There was an update to a column that was a foreign key to another table. Since the foreign key was being updated, the rows referenced by the foreign key had to be updated, causing the index updates on the affected tables.







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited Feb 18 '11 at 21:04

























        answered Feb 18 '11 at 20:54









        AushinAushin

        1456




        1456























            0














            Do you have indexed views that also reference those tables? An update to those tables would also cause index updates to the indexed views.






            share|improve this answer























            • This could have also been the potential answer (I accidentally happened upon it myself a moment ago), so thank you. I hadn't thought of this either.

              – Aushin
              Feb 18 '11 at 20:55















            0














            Do you have indexed views that also reference those tables? An update to those tables would also cause index updates to the indexed views.






            share|improve this answer























            • This could have also been the potential answer (I accidentally happened upon it myself a moment ago), so thank you. I hadn't thought of this either.

              – Aushin
              Feb 18 '11 at 20:55













            0












            0








            0







            Do you have indexed views that also reference those tables? An update to those tables would also cause index updates to the indexed views.






            share|improve this answer













            Do you have indexed views that also reference those tables? An update to those tables would also cause index updates to the indexed views.







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Feb 18 '11 at 20:29









            squillmansquillman

            35.3k980134




            35.3k980134












            • This could have also been the potential answer (I accidentally happened upon it myself a moment ago), so thank you. I hadn't thought of this either.

              – Aushin
              Feb 18 '11 at 20:55

















            • This could have also been the potential answer (I accidentally happened upon it myself a moment ago), so thank you. I hadn't thought of this either.

              – Aushin
              Feb 18 '11 at 20:55
















            This could have also been the potential answer (I accidentally happened upon it myself a moment ago), so thank you. I hadn't thought of this either.

            – Aushin
            Feb 18 '11 at 20:55





            This could have also been the potential answer (I accidentally happened upon it myself a moment ago), so thank you. I hadn't thought of this either.

            – Aushin
            Feb 18 '11 at 20:55

















            draft saved

            draft discarded
















































            Thanks for contributing an answer to Server Fault!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f237441%2fmssql-2008r2-phantom-index-updates%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Club Baloncesto Breogán Índice Historia | Pavillón | Nome | O Breogán na cultura popular | Xogadores | Adestradores | Presidentes | Palmarés | Historial | Líderes | Notas | Véxase tamén | Menú de navegacióncbbreogan.galCadroGuía oficial da ACB 2009-10, páxina 201Guía oficial ACB 1992, páxina 183. Editorial DB.É de 6.500 espectadores sentados axeitándose á última normativa"Estudiantes Junior, entre as mellores canteiras"o orixinalHemeroteca El Mundo Deportivo, 16 setembro de 1970, páxina 12Historia do BreogánAlfredo Pérez, o último canoneiroHistoria C.B. BreogánHemeroteca de El Mundo DeportivoJimmy Wright, norteamericano do Breogán deixará Lugo por ameazas de morteResultados de Breogán en 1986-87Resultados de Breogán en 1990-91Ficha de Velimir Perasović en acb.comResultados de Breogán en 1994-95Breogán arrasa al Barça. "El Mundo Deportivo", 27 de setembro de 1999, páxina 58CB Breogán - FC BarcelonaA FEB invita a participar nunha nova Liga EuropeaCharlie Bell na prensa estatalMáximos anotadores 2005Tempada 2005-06 : Tódolos Xogadores da Xornada""Non quero pensar nunha man negra, mais pregúntome que está a pasar""o orixinalRaúl López, orgulloso dos xogadores, presume da boa saúde económica do BreogánJulio González confirma que cesa como presidente del BreogánHomenaxe a Lisardo GómezA tempada do rexurdimento celesteEntrevista a Lisardo GómezEl COB dinamita el Pazo para forzar el quinto (69-73)Cafés Candelas, patrocinador del CB Breogán"Suso Lázare, novo presidente do Breogán"o orixinalCafés Candelas Breogán firma el mayor triunfo de la historiaEl Breogán realizará 17 homenajes por su cincuenta aniversario"O Breogán honra ao seu fundador e primeiro presidente"o orixinalMiguel Giao recibiu a homenaxe do PazoHomenaxe aos primeiros gladiadores celestesO home que nos amosa como ver o Breo co corazónTita Franco será homenaxeada polos #50anosdeBreoJulio Vila recibirá unha homenaxe in memoriam polos #50anosdeBreo"O Breogán homenaxeará aos seus aboados máis veteráns"Pechada ovación a «Capi» Sanmartín e Ricardo «Corazón de González»Homenaxe por décadas de informaciónPaco García volve ao Pazo con motivo do 50 aniversario"Resultados y clasificaciones""O Cafés Candelas Breogán, campión da Copa Princesa""O Cafés Candelas Breogán, equipo ACB"C.B. Breogán"Proxecto social"o orixinal"Centros asociados"o orixinalFicha en imdb.comMario Camus trata la recuperación del amor en 'La vieja música', su última película"Páxina web oficial""Club Baloncesto Breogán""C. B. Breogán S.A.D."eehttp://www.fegaba.com

            Vilaño, A Laracha Índice Patrimonio | Lugares e parroquias | Véxase tamén | Menú de navegación43°14′52″N 8°36′03″O / 43.24775, -8.60070

            Cegueira Índice Epidemioloxía | Deficiencia visual | Tipos de cegueira | Principais causas de cegueira | Tratamento | Técnicas de adaptación e axudas | Vida dos cegos | Primeiros auxilios | Crenzas respecto das persoas cegas | Crenzas das persoas cegas | O neno deficiente visual | Aspectos psicolóxicos da cegueira | Notas | Véxase tamén | Menú de navegación54.054.154.436928256blindnessDicionario da Real Academia GalegaPortal das Palabras"International Standards: Visual Standards — Aspects and Ranges of Vision Loss with Emphasis on Population Surveys.""Visual impairment and blindness""Presentan un plan para previr a cegueira"o orixinalACCDV Associació Catalana de Cecs i Disminuïts Visuals - PMFTrachoma"Effect of gene therapy on visual function in Leber's congenital amaurosis"1844137110.1056/NEJMoa0802268Cans guía - os mellores amigos dos cegosArquivadoEscola de cans guía para cegos en Mortágua, PortugalArquivado"Tecnología para ciegos y deficientes visuales. Recopilación de recursos gratuitos en la Red""Colorino""‘COL.diesis’, escuchar los sonidos del color""COL.diesis: Transforming Colour into Melody and Implementing the Result in a Colour Sensor Device"o orixinal"Sistema de desarrollo de sinestesia color-sonido para invidentes utilizando un protocolo de audio""Enseñanza táctil - geometría y color. Juegos didácticos para niños ciegos y videntes""Sistema Constanz"L'ocupació laboral dels cecs a l'Estat espanyol està pràcticament equiparada a la de les persones amb visió, entrevista amb Pedro ZuritaONCE (Organización Nacional de Cegos de España)Prevención da cegueiraDescrición de deficiencias visuais (Disc@pnet)Braillín, un boneco atractivo para calquera neno, con ou sen discapacidade, que permite familiarizarse co sistema de escritura e lectura brailleAxudas Técnicas36838ID00897494007150-90057129528256DOID:1432HP:0000618D001766C10.597.751.941.162C97109C0155020