Tuesday, April 5, 2011

What does the sys.dm_exec_query_optimizer_info "timeout" record indicate?

During an investigation of some client machines losing their connection with SQL Server 2005, I ran into the following line of code on the web:

Select * FROM sys.dm_exec_query_optimizer_info WHERE counter = 'timeout'

When I run this query on our server - we are getting the following results:

counter - occurrence - value

timeout - 9100 - 1

As far as I can determine, this means that the query optimizer is timing out while trying to optimize queries run against our server – 9100 times. We are however, not seeing any timeout errors in the SQL Server error log, and our end-users have not reported any timeout specific errors.

Can anyone tell me what this number of “occurrences” means? Is this an issue we should be concerned about?

From stackoverflow
  • The occurence column will tell you the number of times that counter has been incremented and the value column is an internal column for this counter.

    See here

  • Sorry, the documentation say this is internal only.

    Based on the other link, I suspect this is for internal engine timeouts (eg SET QUERY_GOVERNOR_COST_LIMIT)

    A client timeout will also not be logged in SQL because the client aborts the batch, ths stopping SQL processing.

    Please do you have more details?

    Clinemi : I checked, and our "query governor cost limit" configuration is turned off (set to 0). I am concerned that this 9100 value could be telling us that we are having client connections timeout - without us knowing about it. Should I be worried about this 9100 value?
    gbn : That was an example... ths value is internal timeouts eg waiting for memory, waiting for buffers etc. A client timeout can not be trapped on SQL Server. You said "some client machines losing their connection" which is probably different to a command timeout (eg a query runing for > 30 secs)
    Clinemi : No one (here and elsewhere) seems to know the answer to my original question - which surprises me. I appreciate your willingness to tackle my problem with losing connections to sql server. I may post another question to tackle that broader issue. - Thanks!

0 comments:

Post a Comment