Solved

SQL Server query issue using index hints

Posted on 2011-09-16
6
369 Views
Last Modified: 2012-05-12
On one server, using an index hint made the sql go very fast as expected.  So used the index hint.  But the same query, on another database server, performed much slower.  Funny thing was, when the index was removed, the query performed very fast. Why is that, and what can be done.  This is a conflicting behavior, how to solve this issue. Are there any other settings to look at, if any experts have seen this.
0
Comment
Question by:tapdev72
6 Comments
 
LVL 33

Accepted Solution

by:
knightEknight earned 125 total points
ID: 36551563
Try re-creating the index on the other server and see if it runs fast.  It may be that the index just needed to be rebuilt.
0
 
LVL 21

Assisted Solution

by:JestersGrind
JestersGrind earned 125 total points
ID: 36551579
Compare the execution plans look like on each server.  Do both servers have exactly the same indexes?  Is maintenance being performed on each server (i.e. rebuilding indexes, updating statistics)  If the proper indexes are in place and statistics are up to date, you shouldn't need index hints.

Greg

0
 
LVL 75

Assisted Solution

by:Anthony Perkins
Anthony Perkins earned 125 total points
ID: 36552845
>>On one server, using an index hint made the sql go very fast as expected.  So used the index hint.<<
That is not a good enough reason.  Hints should only be used as a last resort for precisely the reason you have discovered.  Help the SQL optimizer by building efficient queries and don't force it to use an index that will make it grind to a halt.

>>Why is that, and what can be done.  <<
Don't use hints.  Optimize the query.

>>This is a conflicting behavior, how to solve this issue. <<
Not at all you just told the SQL optimizer to use a less than optimum plan when there were obviously better ones available.
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 18

Assisted Solution

by:ShogunWade
ShogunWade earned 125 total points
ID: 36554455
Agree with acperkins.   you should avoind using hints where possible.

Perhaps if you could post your query and provide some detail about the tables and indexes we could help you tune it?
0
 
LVL 23

Expert Comment

by:Racim BOUDJAKDJI
ID: 36554858
> Perhaps you have a caching problem.  Free your cache to make sure you are not using an older plan.
> Double check your stats
> Determine the lock escalation level of the query on each server.  Make sure they are the same.
> Using hints makes troubleshooting easy only for the experienced.  You should avoid them if you do not have a complete knowledge of what they are doing exactly.
0
 

Author Comment

by:tapdev72
ID: 36898251
Thanks for the helpful hints.  After doing maintenance work - like recreating indexes, updating statistics, the need for the index hint does not arise.  
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

I wrote this interesting script that really help me find jobs or procedures when working in a huge environment. I could I have written it as a Procedure but then I would have to have it on each machine or have a link to a server-related search that …
For both online and offline retail, the cross-channel business is the most recent pattern in the B2C trade space.
Via a live example combined with referencing Books Online, show some of the information that can be extracted from the Catalog Views in SQL Server.
Via a live example, show how to setup several different housekeeping processes for a SQL Server.

911 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

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now