Query timeout expired (ASP) but only 3 times then it it's okay

Our CMS is experiencing 'Query timeout expired' after updating records.

But it only happens 3 times at the start of each day, then it no longer happens until the next day (odd).

CMS using ASP Classic code.

Starting happening after our IS/IT department upgraded to MS SQL Server 2008 R2.

Not sure why it's happening. I think the code stop is not always the same but in my last test it happened after a System.Connection.Execute.
intoxicated_curveballAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Vitor MontalvãoMSSQL Senior EngineerCommented:
The first time a query runs takes always more time since there's nothing in the buffer. After that data are most expected to be in the buffer so the engine will get data from memory instead of from disk.
Anyway you should ask how they upgraded SQL Server. Check with them if they rebuild indexes after migration.
You can also post here the query so we can see if there's any improve that can be done.
0
Dan McFaddenSystems EngineerCommented:
From what version of SQL server did you upgrade?  Depending on the version there may be syntax issues with some queries.  But that depends on from where you came.

What is the app trying to do when it tries to do the execute?

Using SQL Server Management Studio, have you tried to directly execute the query to see if data is being returned?

Dan
0
intoxicated_curveballAuthor Commented:
Vitor:

The query is

MaxRank = getInt(System.Connection.Execute("SELECT MAX(T.[Rank]) FROM [" & Me.Title & "] AS T")(0))

Open in new window


But I don't think it's always the same every day. I can't confirm until tomorrow since the issue will no longer happen today.

Dan:

Was SQL Server 2005 previously.

I don't see how it can be a syntax issue if there's no syntax error and it only happens three times (timeout) then doesn't happen again that day.

I will try the Query directly tomorrow.

Is there any way to just extend the Query timeout time?
0
Vitor MontalvãoMSSQL Senior EngineerCommented:
You can change the query timeout time in your connection but you should avoid that unless in extremely cases that are really necessary.
What can also happens is maybe somehow in the morning that table have a lot of simultaneous access so what you can do here is to use a NOLOCK locking hint:
MaxRank = getInt(System.Connection.Execute("SELECT MAX(T.[Rank]) FROM [" & Me.Title & "] AS T WITH (NOLOCK)")(0))

Open in new window

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
ASP

From novice to tech pro — start learning today.