Solved

Timeout expired

Posted on 2015-01-13
13
110 Views
Last Modified: 2015-01-14
I am getting the error "System.Data.SqlClient.SqlException: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding." The strange thing is its only happening from a certain web server. I took the same application to IIS 7 machine and it works fine. I also ran it on my local machine and its fine. The server it refuses to work from is one running IIS 6. Any ideas?
0
Comment
Question by:takwirirar
  • 7
  • 6
13 Comments
 
LVL 47

Expert Comment

by:Vitor Montalvão
ID: 40546920
Please post the query that you are trying to execute.
0
 
LVL 1

Author Comment

by:takwirirar
ID: 40546935
cmd = New SqlDataAdapter("SELECT order_num FROM dbo.orders where status='Awaiting' or status='Received'", cnn)
            cmd.Fill(ds)

            DropDownList4.DataSource = ds
            DropDownList4.DataValueField = "order_num"
            DropDownList4.DataBind()
            ds.Clear()
            cmd.Dispose()

Open in new window


This returns 88 rows when I run it in SSMS
0
 
LVL 47

Expert Comment

by:Vitor Montalvão
ID: 40546941
The table orders has any index on status column?
0
NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

 
LVL 1

Author Comment

by:takwirirar
ID: 40546947
No index.
0
 
LVL 47

Expert Comment

by:Vitor Montalvão
ID: 40546956
Depending on how many rows the table has the query can run in more time than the configured timeout. I recommend you to create an index on that column.
0
 
LVL 1

Author Comment

by:takwirirar
ID: 40546965
I have now created index and still getting timeout.

Index
0
 
LVL 47

Expert Comment

by:Vitor Montalvão
ID: 40546978
Clustered?
How did you create the index?
0
 
LVL 1

Author Comment

by:takwirirar
ID: 40546985
Yes clustered index. I right clicked on Indexes - Create Index - Clustered - on the status field
0
 
LVL 47

Accepted Solution

by:
Vitor Montalvão earned 500 total points
ID: 40546993
Drop that index and then run the following command in a new query window:
CREATE INDEX IX_Orders_Status ON dbo.orders (status)

Open in new window

NOTE: You need to run this command in the correct database context.
0
 
LVL 1

Author Closing Comment

by:takwirirar
ID: 40547012
Giving this as answer because it helped in some way. The issue was the DNS configuration of the offending server. It had the Google 8.8.8.8 address that was probably trying to resolve an intranet address which caused the issue. I removed the public DNS, cleared ARP cache and flush DNS. All is working now.
0
 
LVL 47

Expert Comment

by:Vitor Montalvão
ID: 40548399
So, not a database problem.
Just for curiosity, did you create the suggested index? If so, did you realize any performance boost ?
0
 
LVL 1

Author Comment

by:takwirirar
ID: 40548475
I can't say the performance boost is noticeable but I think having indexes is a great idea anyway. I'll probably have to do some research then ask a question about checking how long transactions take with/without indexes. Perhaps SQL profiler.
0
 
LVL 47

Expert Comment

by:Vitor Montalvão
ID: 40548485
Yes, you can start by using SQL Profiler to capture long running queries. Those are for sure very good candidates to have indexes.
0

Featured Post

NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Let's review the features of new SQL Server 2012 (Denali CTP3). It listed as below: PERCENT_RANK(): PERCENT_RANK() function will returns the percentage value of rank of the values among its group. PERCENT_RANK() function value always in be…
This article explains how to reset the password of the sa account on a Microsoft SQL Server.  The steps in this article work in SQL 2005, 2008, 2008 R2, 2012, 2014 and 2016.
Using examples as well as descriptions, and references to Books Online, show the different Recovery Models available in SQL Server and explain, as well as show how full, differential and transaction log backups are performed
Viewers will learn how the fundamental information of how to create a table.

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question