[MSSQL2005] foutmelding ivm estimated cost van query

Pagina: 1
Acties:

  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

Topicstarter
Een testomgeving voor een applicatie klapte er gisteren uit omdat MSSQL2005 een query niet meer kon/wilde uitvoeren. De foutmelding:
The query has been canceled because the estimated cost of this query (865) exceeds the configured threshold of 100. Contact the system administrator.
Nu heb ik even zitten zoeken op internet en ik kon eigenlijk niet echt een oplossing vinden voor dit probleem. De meeste hits gaan over een bug in MSSQL2000 die al is opgelost met een hotfix / service pack. Of ze vermelden onderstaande en dat voelt ook niet echt goed. De reden voor de threshold is er niet voor niks imho.
Explanation
The query was canceled because the estimated cost of this query exceeds the configured threshold set for the QUERY_GOVERNOR_COST_LIMIT.

User Action
Set the QUERY_GOVERNOR_COST_LIMIT option to a higher value.
Uiteindelijk hebben we het probleem opgelost door even goed naar de query te kijken en een index aan te brengen op een kolom. De cost maakte een vrije val van 865 naar 0,08 :D

Hiep hoi, het probleem is (voor nu) opgelost, maar ik snap niet wat er nu écht aan de hand is. Wat is nu de oorzaak geweest? Ik kan wel beredeneren dat de hoeveelheid data in het systeem ervoor zorgt dat de cost te hoog wordt, maar het productiesysteem bevat nog meer data en die heeft (nog) niet dit probleem vertoond. Ik wil ook gaan nadenken over mogelijke manieren om soortgelijke problemen vóór te zijn: proactief (inspelen op gebruik en behoeftes van het systeem) in plaats van reactief (monitoring en reageren op fouten).

Ik blijf nu met een paar vragen zitten. Zijn het de resources op het systeem die de oorzaak zijn? Waarop baseert MSSQL eigenlijk de estimated cost en hoe vaak worden die gegevens bijgewerkt? Of is dit realtime berekend?

Dus, concluderend:
- Kent iemand artikelen op internet die wat meer inzicht geven in deze materie?
- Of, kan iemand mij antwoord geven op de twee vragen in de vorige paragraaf.

Today's subliminal thought is:


  • arnob
  • Registratie: Juli 2000
  • Niet online
als je de executions plans laat weergeven bij queries zie je waar de costs op berekend worden in een query.

De cost governor staat op een server standaard uit trouwens (connections properties bij de server properties). Misschien dat de express editie dit standaard aan heeft staan? lijkt me dat een collega van je wat rond heeft zitten klikken.

Evengoed vind ik het een interessante optie om in een test omgeving aan te zetten >:)

[ Voor 7% gewijzigd door arnob op 06-06-2007 16:31 ]


  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

Topicstarter
arnob schreef op woensdag 06 juni 2007 @ 16:30:
De cost governor staat op een server standaard uit trouwens (connections properties bij de server properties).
We zullen eens kijken op de productieserver wat daar de instellingen zijn.

Today's subliminal thought is: