Home All Groups Group Topic Archive Search About

Index Spool/Eager Spool

Author
9 Sep 2005 3:07 PM
Frank W
Hey Guys,

I have a good one!

What would cause the server to use a huge index but then perform a index
   spool/eager spool action in the query plan and basically recreate the
whole index?

Thanks,

Frank

Author
9 Sep 2005 3:34 PM
Brian Selzer
The query optimizer may have chosen a plan that requires the rows to be in a
different order for two different operations.  For example, the optimizer
may choose to process the restrict condition (WHERE restrict_condition)
before processing the join condition (ON (join_condition)), where the index
used to process the restrict condition is in a different order than is
needed to process the join.  If the execution plan contains an iteration
step, then the eager spool may be used to minimize the number of reads
required to satisfy the join.  The SEEK:() predicate on the Index Spool
operator restricts the rows that are copied into tempdb, which minimizes the
number of reads required for lookups in each iteration.

Show quote
"Frank W" <m*@frankwisniewski.net> wrote in message
news:8zhUe.245376$gL1.240016@tornado.texas.rr.com...
> Hey Guys,
>
> I have a good one!
>
> What would cause the server to use a huge index but then perform a index
>    spool/eager spool action in the query plan and basically recreate the
> whole index?
>
> Thanks,
>
> Frank

AddThis Social Bookmark Button