sql server - Query that worked for months now timesout -


i have query run delphi application started timing out last week after running months. further more when runs slows server crawl leaving other users believe system has crash running management studio stop query after on 5 minutes of spinning server id sqlexpress 2008 r2

the offending query

select     *        signeloutilslistejobs_view4     (createddate > (getdate() - 365)) 

to make interesting here time required & rows return when change number of days back. activity monitor not seem show more query running

select     *        signeloutilslistejobs_view4 -- 00.00.02 38882 rows  select     *        signeloutilslistejobs_view4     (createddate > (getdate() - 600)) -- 00.00.02 16217 rows   select     *        signeloutilslistejobs_view4     (createddate > (getdate() - 500)) -- 00.00.02 13013 rows   select     *        signeloutilslistejobs_view4     (createddate > (getdate() - 200)) -- 00.00.12  4118 rows 

so left wondering happening here? ideas?

thanks

from getdate (transact-sql):

using switchoffset function getdate() can cause query run because query optimizer unable obtain accurate cardinality estimates getdate value. recommend precompute getdate value , specify value in query shown in following example. in addition, use option (recompile) query hint force query optimizer recompile query plan next time same query executed. optimizer have accurate cardinality estimates getdate() , produce more efficient query plan.

in other words can try edit query follows:

select * signeloutilslistejobs_view4 createddate > (getdate() - 200) option (recompile) 

as alternative above, can consider create unique clustered index on view:

create unique clustered index signeloutilslistejobs_unique_index1 on signeloutilslistejobs_view4 (createddate, <some unique key>) 

from microsoft technet:


Comments

Popular posts from this blog

php - Invalid Cofiguration - yii\base\InvalidConfigException - Yii2 -

How to show in django cms breadcrumbs full path? -

ruby on rails - npm error: tunneling socket could not be established, cause=connect ETIMEDOUT -